Skip to content

ClangToSageTranslator

Translator from Clang AST to SAGE III (ROSE Compiler AST)

Synopsis

Declared in <CxxFrontend/Clang/clang‐frontend‐private.hpp>

class ClangToSageTranslator
    : public clang::ASTConsumer

Base Classes

Name

Description

clang::ASTConsumer

Enums

Name

Description

Language

the 5 C‐family languages supported by Clang

Member Functions

Name

Description

ClangToSageTranslator [constructor]

~ClangToSageTranslator [destructor] [virtual]

Destructor

HandleTranslationUnit [virtual]

Traverse [virtual]

TraverseForDeclContext [virtual]

TraverseOnDemand [virtual]

VisitAbstractConditionalOperator [virtual]

VisitAccessSpecDecl [virtual]

VisitAddrLabelExpr [virtual]

VisitAdjustedType [virtual]

VisitArrayInitIndexExpr [virtual]

VisitArrayInitLoopExpr [virtual]

VisitArraySubscriptExpr [virtual]

VisitArrayType [virtual]

VisitArrayTypeTraitExpr [virtual]

VisitAsTypeExpr [virtual]

VisitAsmStmt [virtual]

VisitAtomicExpr [virtual]

VisitAtomicType [virtual]

VisitAttributedStmt [virtual]

VisitAttributedType [virtual]

VisitAutoType [virtual]

VisitBinaryConditionalOperator [virtual]

VisitBinaryOperator [virtual]

VisitBindingDecl [virtual]

VisitBlockDecl [virtual]

VisitBlockExpr [virtual]

VisitBlockPointerType [virtual]

VisitBreakStmt [virtual]

VisitBuiltinBitCastExpr [virtual]

VisitBuiltinTemplateDecl [virtual]

VisitBuiltinType [virtual]

VisitCStyleCastExpr [virtual]

VisitCUDAKernelCallExpr [virtual]

VisitCXXBindTemporaryExpr [virtual]

VisitCXXBoolLiteralExpr [virtual]

VisitCXXCatchStmt [virtual]

VisitCXXConstCastExpr [virtual]

VisitCXXConstructExpr [virtual]

VisitCXXConstructorDecl [virtual]

VisitCXXConversionDecl [virtual]

VisitCXXDeductionGuideDecl [virtual]

VisitCXXDefaultArgExpr [virtual]

VisitCXXDefaultInitExpr [virtual]

VisitCXXDeleteExpr [virtual]

VisitCXXDependentScopeMemberExpr [virtual]

VisitCXXDestructorDecl [virtual]

VisitCXXDynamicCastExpr [virtual]

VisitCXXFoldExpr [virtual]

VisitCXXForRangeStmt [virtual]

VisitCXXFunctionalCastExpr [virtual]

VisitCXXInheritedCtorInitExpr [virtual]

VisitCXXMemberCallExpr [virtual]

VisitCXXMethodDecl [virtual]

VisitCXXNamedCastExpr [virtual]

VisitCXXNewExpr [virtual]

VisitCXXNoexceptExpr [virtual]

VisitCXXNullPtrLiteralExpr [virtual]

VisitCXXOperatorCallExpr [virtual]

VisitCXXParenListInitExpr [virtual]

VisitCXXPseudoDestructorExpr [virtual]

VisitCXXRecordDecl [virtual]

VisitCXXReinterpretCastExpr [virtual]

VisitCXXRewrittenBinaryOperator [virtual]

VisitCXXScalarValueInitExpr [virtual]

VisitCXXStaticCastExpr [virtual]

VisitCXXStdInitializerListExpr [virtual]

VisitCXXTemporaryObjectExpr [virtual]

VisitCXXThisExpr [virtual]

VisitCXXThrowExpr [virtual]

VisitCXXTryStmt [virtual]

VisitCXXTypeidExpr [virtual]

VisitCXXUnresolvedConstructExpr [virtual]

VisitCXXUuidofExpr [virtual]

VisitCallExpr [virtual]

VisitCapturedDecl [virtual]

VisitCapturedStmt [virtual]

VisitCaseStmt [virtual]

VisitCastExpr [virtual]

VisitCharacterLiteral [virtual]

VisitChooseExpr [virtual]

VisitClassTemplateDecl [virtual]

VisitClassTemplatePartialSpecializationDecl [virtual]

VisitClassTemplateSpecializationDecl [virtual]

VisitClassTemplateSpecializationDecl_Impl

VisitCoawaitExpr [virtual]

VisitComplexType [virtual]

VisitCompoundAssignOperator [virtual]

VisitCompoundLiteralExpr [virtual]

VisitCompoundStmt [virtual]

VisitConceptDecl [virtual]

VisitConceptSpecializationExpr [virtual]

VisitConditionalOperator [virtual]

VisitConstantArrayType [virtual]

VisitConstantExpr [virtual]

VisitConstructorUsingShadowDecl [virtual]

VisitContinueStmt [virtual]

VisitConvertVectorExpr [virtual]

VisitCoreturnStmt [virtual]

VisitCoroutineBodyStmt [virtual]

VisitCoroutineSuspendExpr [virtual]

VisitCoyieldExpr [virtual]

VisitDecayedType [virtual]

VisitDecl [virtual]

VisitDeclRefExpr [virtual]

VisitDeclStmt [virtual]

VisitDeclaratorDecl [virtual]

VisitDecltypeType [virtual]

VisitDecompositionDecl [virtual]

VisitDeducedTemplateSpecializationType [virtual]

VisitDeducedType [virtual]

VisitDefaultStmt [virtual]

VisitDependentAddressSpaceType [virtual]

VisitDependentCoawaitExpr [virtual]

VisitDependentDecltypeType [virtual]

VisitDependentNameType [virtual]

VisitDependentScopeDeclRefExpr [virtual]

VisitDependentSizedArrayType [virtual]

VisitDependentSizedExtVectorType [virtual]

VisitDependentTemplateSpecializationType [virtual]

VisitDependentTypeOfExprType [virtual]

VisitDependentVectorType [virtual]

VisitDesignatedInitExpr [virtual]

VisitDesignatedInitUpdateExpr [virtual]

VisitDoStmt [virtual]

VisitElaboratedType [virtual]

VisitEmptyDecl [virtual]

VisitEnumConstantDecl [virtual]

VisitEnumDecl [virtual]

VisitEnumType [virtual]

VisitExplicitCastExpr [virtual]

VisitExportDecl [virtual]

VisitExpr [virtual]

VisitExprWithCleanups [virtual]

VisitExpressionTraitExpr [virtual]

VisitExtVectorElementExpr [virtual]

VisitExtVectorType [virtual]

VisitExternCContextDecl [virtual]

VisitFieldDecl [virtual]

VisitFileScopeAsmDecl [virtual]

VisitFixedPointLiteral [virtual]

VisitFloatingLiteral [virtual]

VisitForStmt [virtual]

VisitFriendDecl [virtual]

VisitFriendTemplateDecl [virtual]

VisitFullExpr [virtual]

VisitFunctionDecl [virtual]

VisitFunctionNoProtoType [virtual]

VisitFunctionParmPackExpr [virtual]

VisitFunctionProtoType [virtual]

VisitFunctionTemplateDecl [virtual]

VisitFunctionType [virtual]

VisitGCCAsmStmt [virtual]

VisitGNUNullExpr [virtual]

VisitGenericSelectionExpr [virtual]

VisitGotoStmt [virtual]

VisitIfStmt [virtual]

VisitImaginaryLiteral [virtual]

VisitImplicitCastExpr [virtual]

VisitImplicitParamDecl [virtual]

VisitImplicitValueInitExpr [virtual]

VisitImportDecl [virtual]

VisitIncompleteArrayType [virtual]

VisitIndirectFieldDecl [virtual]

VisitIndirectGotoStmt [virtual]

VisitInitListExpr [virtual]

VisitInjectedClassNameType [virtual]

VisitIntegerLiteral [virtual]

VisitLValueReferenceType [virtual]

VisitLabelDecl [virtual]

VisitLabelStmt [virtual]

VisitLambdaExpr [virtual]

VisitLinkageSpecDecl [virtual]

VisitMSAsmStmt [virtual]

VisitMSDependentExistsStmt [virtual]

VisitMSPropertyDecl [virtual]

VisitMSPropertyRefExpr [virtual]

VisitMSPropertySubscriptExpr [virtual]

VisitMacroQualifiedType [virtual]

VisitMaterializeTemporaryExpr [virtual]

VisitMemberExpr [virtual]

VisitMemberPointerType [virtual]

VisitNamedDecl [virtual]

VisitNamespaceAliasDecl [virtual]

VisitNamespaceDecl [virtual]

VisitNoInitExpr [virtual]

VisitNonTypeTemplateParmDecl [virtual]

VisitNullStmt [virtual]

VisitOMPAllocateDecl [virtual]

VisitOMPArraySectionExpr [virtual]

VisitOMPAtomicDirective [virtual]

VisitOMPBarrierDirective [virtual]

VisitOMPCancelDirective [virtual]

VisitOMPCancellationPointDirective [virtual]

VisitOMPCaptureExprDecl [virtual]

VisitOMPCriticalDirective [virtual]

VisitOMPDeclareMapperDecl [virtual]

VisitOMPDeclareReductionDecl [virtual]

VisitOMPDistributeDirective [virtual]

VisitOMPDistributeParallelForDirective [virtual]

VisitOMPDistributeParallelForSimdDirective [virtual]

VisitOMPDistributeSimdDirective [virtual]

VisitOMPExecutableDirective [virtual]

VisitOMPFlushDirective [virtual]

VisitOMPForDirective [virtual]

VisitOMPForSimdDirective [virtual]

VisitOMPLoopDirective [virtual]

VisitOMPMasterDirective [virtual]

VisitOMPOrderedDirective [virtual]

VisitOMPParallelDirective [virtual]

VisitOMPParallelForDirective [virtual]

VisitOMPParallelForSimdDirective [virtual]

VisitOMPParallelSectionsDirective [virtual]

VisitOMPRequiresDecl [virtual]

VisitOMPSimdDirective [virtual]

VisitOMPTargetParallelForDirective [virtual]

VisitOMPTargetParallelForSimdDirective [virtual]

VisitOMPTargetSimdDirective [virtual]

VisitOMPTargetTeamsDistributeDirective [virtual]

VisitOMPTargetTeamsDistributeSimdDirective [virtual]

VisitOMPTaskLoopDirective [virtual]

VisitOMPTaskLoopSimdDirective [virtual]

VisitOMPThreadPrivateDecl [virtual]

VisitOffsetOfExpr [virtual]

VisitOpaqueValueExpr [virtual]

VisitOverloadExpr [virtual]

VisitPackExpansionExpr [virtual]

VisitPackExpansionType [virtual]

VisitParenExpr [virtual]

VisitParenListExpr [virtual]

VisitParenType [virtual]

VisitParmVarDecl [virtual]

VisitPipeType [virtual]

VisitPointerType [virtual]

VisitPragmaCommentDecl [virtual]

VisitPragmaDetectMismatchDecl [virtual]

VisitPredefinedExpr [virtual]

VisitPseudoObjectExpr [virtual]

VisitRValueReferenceType [virtual]

VisitRecordDecl [virtual]

VisitRecordType [virtual]

VisitRedeclarableTemplateDecl [virtual]

VisitReferenceType [virtual]

VisitRequiresExpr [virtual]

VisitReturnStmt [virtual]

VisitSEHExceptStmt [virtual]

VisitSEHFinallyStmt [virtual]

VisitSEHLeaveStmt [virtual]

VisitSEHTryStmt [virtual]

VisitShuffleVectorExpr [virtual]

VisitSizeOfPackExpr [virtual]

VisitSourceLocExpr [virtual]

VisitStaticAssertDecl [virtual]

VisitStmt [virtual]

VisitStmtExpr [virtual]

VisitStringLiteral [virtual]

VisitSubstNonTypeTemplateParmExpr [virtual]

VisitSubstNonTypeTemplateParmPackExpr [virtual]

VisitSubstTemplateTypeParmPackType [virtual]

VisitSubstTemplateTypeParmType [virtual]

VisitSwitchCase [virtual]

VisitSwitchStmt [virtual]

VisitTagDecl [virtual]

VisitTagType [virtual]

VisitTemplateDecl [virtual]

VisitTemplateSpecializationType [virtual]

VisitTemplateTemplateParmDecl [virtual]

VisitTemplateTypeParmDecl [virtual]

VisitTemplateTypeParmType [virtual]

VisitTranslationUnitDecl [virtual]

VisitType [virtual]

VisitTypeAliasDecl [virtual]

VisitTypeAliasTemplateDecl [virtual]

VisitTypeDecl [virtual]

VisitTypeOfExprType [virtual]

VisitTypeOfType [virtual]

VisitTypeTraitExpr [virtual]

VisitTypeWithKeyword [virtual]

VisitTypedefDecl [virtual]

VisitTypedefNameDecl [virtual]

VisitTypedefType [virtual]

VisitUnaryExprOrTypeTraitExpr [virtual]

VisitUnaryOperator [virtual]

VisitUnaryTransformType [virtual]

VisitUnresolvedLookupExpr [virtual]

VisitUnresolvedMemberExpr [virtual]

VisitUnresolvedUsingType [virtual]

VisitUnresolvedUsingTypenameDecl [virtual]

VisitUnresolvedUsingValueDecl [virtual]

VisitUserDefinedLiteral [virtual]

VisitUsingDecl [virtual]

VisitUsingDirectiveDecl [virtual]

VisitUsingPackDecl [virtual]

VisitUsingShadowDecl [virtual]

VisitUsingType [virtual]

VisitVAArgExpr [virtual]

VisitValueDecl [virtual]

VisitValueStmt [virtual]

VisitVarDecl [virtual]

VisitVarTemplateDecl [virtual]

VisitVarTemplatePartialSpecializationDecl [virtual]

VisitVarTemplateSpecializationDecl [virtual]

VisitVariableArrayType [virtual]

VisitVectorType [virtual]

VisitWhileStmt [virtual]

appendUnattachedOpenMPPragmas

applySourceRange

Update a Sage node source position using Clang information

applySourceRangeWithTrailingSemicolon

Apply a source range to a ROSE node, extending the range to include a trailing semicolon when present. This is used when Clang provides an expression in statement position and ROSE must build a wrapper SgExprStatement.

generate_name_for_type

generate_name_for_variable

generate_source_position_string

getGlobalScope

getSourceText

get_sgAsmOperandConstraint

get_sgAsmOperandModifier

get_sgAsmRegister

normalizeNamespaceDeclarationScopes

preprocessor_list_size

preprocessor_pop

preprocessor_top

repairMissingFunctionSymbols

setCompilerGeneratedFileInfo

Set a Sage node source position to compiler generated

setOpenMPPragmaCallback

sortPreprocessorList

Protected Types

Protected Member Functions

Name

GetSymbolFromSymbolTable

appendOpenMPPragmasBefore

appendTemplateArguments

applyExplicitTemplateArgumentFlags

attachConstraintSatisfaction

attachSFINAEFailure

attachSymbolToScopeOrOrphan

buildCoroutineAwaitExpression

buildFallbackExpression

buildNonrealRefExpFromNestedNameSpecifier

buildNonrealScopeFromNestedNameSpecifier

buildNonrealTypeForNestedNameSpecifierType

buildNonrealTypeFromNestedNameSpecifier

buildOpenMPPragmaDeclaration

buildSpecializedMemberTypedefReturnType

buildSymbolForDeclaration

buildTemplateArguments

buildTemplateParameters

buildTypeFromQualifiedType

buildTypeFromTypeLoc

collectOpenMPPragmas

countExpandedTemplateArguments

countExplicitTemplateArgumentsFromSource

ensureDeclInScopeChildList

ensureDeclInScopeChildListPreserveScope

ensureMemberFunctionScope

ensureNamespaceDeclaration

ensureTemplateArgumentParents

evaluateConstraintSatisfaction

evaluateSFINAEFailure

extractUsingTargetFromNode

extractUsingTargetFromSymbol

getOpaqueTypeInsertionScope

getOrCreateTemplateDeclaration

getOrCreateTemplateInstantiation

getSafeOpaqueTypeInsertionScope

getTemplateQualifiedName

lookupSgDeclarationForClangDecl

lookupUsingDeclTargetNode

mangleTemplateInstantiation

populateClassDefinition

pruneSymbolsForConstraints

queueSpecializedTemplateLink

reconcileOnDemandTranslation

registerDeclarationSymbol

rehomeSymbolToScope

resolveMethodEnclosingScope

resolvePendingSpecializedTemplateLinks

resolveScopeFromDeclContext

resolveUsingDeclTargetNode

shouldSkipSymbolForConstraints

translateClassTemplateDecl

translateConstraintExpression

translateFunctionDeclCommon

translateTemplateArgument

translateTemplateParameter

translateTemplateParameterList

wrapStatementWithOpenMPPragmas