When I hear the term memory leak by that I mean a bug in a program that doesn't cause any problems except that it doesn't free memory resource and if it continuously does that it can eat a lot of memory, hurting system performance and in the worst case crash the program (or an other program, if the OS decides to choose to kill that one).
But now in this comments section of this question the upvotes made me think whether that's the whole meaning of the term. I previously always saw used it in that meaning.
https://stackoverflow.com/questions/7451437/is-this-a-mem-leak-in-main
So, would you call something a simple memory leak that crashes a program by some other side-effect or causing a dead-lock by not freeing a lock?
Update - Note: unfortunately some admin deleted the comment section there so I cannot refer to that discussion anymore :/
Basically I said that a memory leak is harmless except that it eats up memory (and consequently on the long term in that respect can be harmful, crashing the app/system). They said that's not true, with C++ RAII it can cause serious problems. - Yes, if you don't delete an object with some important code in the destructor that can cause problems, but in my vocabulary that's a major bug and not a memory leak.