SIXMOZ_rules.to_ignore - Sixdsn/MOZ_OVERRIDE GitHub Wiki

This page is very important as it mitgh improve the parser behaviour.

In certain files, some macro's are messing up with the cppheaderparser. Things like this:

NS_DISPLAY_DECL_NAME("XULTextBox", TYPE_XUL_TEXT_BOX)

virtual nsRect GetComponentAlphaBounds(nsDisplayListBuilder* aBuilder);

The macro isn't detected as a macro so the parser is unable to get the right intels from GetComponentAlphaBounds.

A quick way to bypass this is to add the NS_DISPLAY_DECL_NAME macro to the SIXMOZ_rules.to_ignore (in the file modules/rules.py).

There are two types of macro listed:

#define MACRO_FOO Six

and

#define MACRO_BAR(x) Six(x)

For MACRO_FOO you need to add MACRO_FOO in SIXMOZ_rules.to_ignore

For MACRO_BAR(x) you need to add MACRO_BAR SIXMOZ_rules.in to_ignore.