[06/32] cpp macros
Mon Nov 23 21:13:14 GMT 2020
On 11/3/20 2:14 PM, Nathan Sidwell wrote:
> Header units can provide macros to an importer. For efficiency that
> is done lazily. When we import a header unit we mark the identifers
> it defines as significant. It's only when we need the macro
> definition (including in #ifdef &| defined (X) processing) that we
> resolve the macro. We already had lazy (builtin) macros. This
> extends it to deferred macros. Each deferred macro has an index the
> resolver can use. on an LP64 host that index does not inlarge the
> node structure.
> As a macro can be undefined by this mechanism, the users of this
> deferred interface must be prepared to handle 'not a macro after all'
OK with the usual ChangeLog note.
More information about the Gcc-patches