On Sun, Aug 3, 2014 at 10:18 PM, Kyle Huey <m...@kylehuey.com> wrote:
> Static*Ptrs are there to avoid
> static constructors and destructors so they can't clear themselves at
> shutdown.  That means that they behave quite differently than
> "regular" smart pointers.  Am I the only one who is bothered by this?

To use them correctly, is it the case that you need to do one of the following?

- null them at some point, or

- call ClearOnShutdown() on them at some point.

The comments in StaticPtr.h don't make this clear. And
ClearOnShutdown.h is a separate file, and ClearOnShutdown() isn't
mentioned in StaticPtr.h.

So I think they're useful -- being able to avoid static constructors
is important. But the documentation on how to use them could be much
clearer.

Nick
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to