I've updated it with some information about MOZ_RAII. On Mon, Sep 14, 2015 at 3:02 PM, Aaron Klotz <akl...@mozilla.com> wrote:
> Can you please update > https://developer.mozilla.org/en-US/docs/Using_RAII_classes_in_Mozilla > with this information? > > Thanks, > > Aaron > > > On 9/12/2015 3:06 PM, Michael Layzell wrote: > >> Hey everyone, >> >> Bug 1201190 (https://bugzilla.mozilla.org/show_bug.cgi?id=1201190) just >> landed on inbound, which means that we now have access to the new >> annotation MOZ_RAII. This is a static-analysis annotation, intended to be >> placed on RAII guards. It will cause the static analysis to cause >> compilation to fail if the class is allocated anywhere other than in an >> automatic variable - this includes temporaries, unlike MOZ_STACK_CLASS, >> which also allows allocating the type in a temporary. >> >> This new analysis fills the role of the much more verbose MOZ_GUARD_OBJECT >> annotations, which perform runtime analysis to prevent temporary >> allocations. Unfortunately, as we currently only run static analysis on >> Linux and Mac OS X, you should still use MOZ_GUARD_OBJECT (In addition to >> MOZ_RAII - which is more likely to catch errors, as it checks at build >> time >> and is more thorough) if the class might be used from windows-specific >> code. >> >> To mark a class as MOZ_RAII, simply `#include "mfbt/Attributes.h"`, and >> then change the class declaration to `class MOZ_RAII FooGuard`. >> >> If you're adding any new RAII guards, please use MOZ_RAII! Thanks :D >> _______________________________________________ >> dev-platform mailing list >> dev-platform@lists.mozilla.org >> https://lists.mozilla.org/listinfo/dev-platform >> > > _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform