Skip to content

SageInterface::generateUniqueName

Generate unique name from C and C++ constructs. The name may contain space.

Synopsis

Declared in <SageIII/sageInterface/sageInterface.h>

std::string
generateUniqueName(
    SgNode const* node,
    bool ignoreDifferenceBetweenDefiningAndNondefiningDeclarations);

Description

This is support for the AST merge, but is generally useful as a more general mechanism than name mangling which is more closely ties to the generation of names to support link‐time function name resolution. This is more general than common name mangling in that it resolves more relevant differences between C and C++ declarations. (e.g. the type within the declaration: "struct { int:8; } foo;").

current work does not support expressions.

Parameters

Name

Description

node

This class represents the base class for all IR nodes within Sage III.

Created with MrDocs