A leak is always associated with a resource. A resource, by definition, is what you acquire manually, and that you must release it manually. Memory is a prime example, but there are other resources (files, mutex locks, network connections, etc.).
A leak occurs when you acquire a resource, but then lose the resource descriptor so that no one can release it. A smaller version of the leak is a "still reachable" situation in which you do not release the resource, but you still have a handle and you can release it. This is mostly lazy, but a contrast leak is always a programming error.
Since your code never gets any resources, it also cannot have any leaks.
source share