FR: Filter members from leak reports

JUCE_LEAK_DETECTOR is very helpful for finding memory leaks, but it could be even more helpful if it will give fewer but more targeted warnings.

For example if I leak the following class:

class Luckyleak
{
public:
    juce::AudioBuffer<float> buf;

    JUCE_LEAK_DETECTOR (Luckyleak);
};

I would get the following assertions/notifications:

*** Leaked objects detected: 1 instance(s) of class Luckyleak
JUCE Assertion failure in juce_LeakedObjectDetector.h:92
*** Leaked objects detected: 1 instance(s) of class AudioBuffer
JUCE Assertion failure in juce_LeakedObjectDetector.h:92

The second report is redundant as the root cause is fully within the leak of the LuckyLeak object, and it would be more targeted information for the reader if the second warning was filtered out.

The mechanism I suggest for doing that is that each leaking object would mark its memory area (via it’s address and sizeof) as already reported and any members fully contained in that area would not need to be reported again.