FixupPrettyFunctionVariables
This traversal uses inherited attributes to fixup the variables put into the AST that match the function name (a legacy frontend quirk to signal that the variable name is "*PRETTY_FUNCTION*").
Synopsis
Declared in <SageIII/astFixup/fixupPrettyFunction.h>
Base Classes
Name |
Description |
|
Member Functions
Name |
|
Description
This is required because the legacy frontend has this odd behavior of exchanging the name of variables that one would expect to be called "*PRETTY_FUNCTION*" with the name of the function (when it occurs in a function). This happens frequently because "*PRETTY_FUNCTION*" is the last variable (actually pointer to a function, I think) used in the translation of the "assert" macro (at least for GNU compilers). Since ROSE_ASSERT is frequently a macro for "assert" this is a common problem for the compilation of the ROSE source code using ROSE translators. Note that this subject of replacement of "*PRETTY_FUNCTION*" with the name of the function where it occurs is documented in the legacy frontend change log.
Created with MrDocs