13#ifndef LLVM_CLANG_AST_COMPUTEDEPENDENCE_H
14#define LLVM_CLANG_AST_COMPUTEDEPENDENCE_H
18#include "llvm/ADT/ArrayRef.h"
29class UnaryExprOrTypeTraitExpr;
30class ArraySubscriptExpr;
31class MatrixSubscriptExpr;
32class CompoundLiteralExpr;
33class ImplicitCastExpr;
34class ExplicitCastExpr;
36class ConditionalOperator;
37class BinaryConditionalOperator;
39class ConvertVectorExpr;
43class ArrayInitLoopExpr;
44class ImplicitValueInitExpr;
46class ExtVectorElementExpr;
51class CXXRewrittenBinaryOperator;
52class CXXStdInitializerListExpr;
54class MSPropertyRefExpr;
55class MSPropertySubscriptExpr;
59class CXXBindTemporaryExpr;
60class CXXScalarValueInitExpr;
62class ArrayTypeTraitExpr;
63class ExpressionTraitExpr;
65class PackExpansionExpr;
66class SubstNonTypeTemplateParmExpr;
67class CoroutineSuspendExpr;
68class DependentCoawaitExpr;
70class CXXPseudoDestructorExpr;
72class DependentScopeDeclRefExpr;
73class CXXConstructExpr;
74class CXXTemporaryObjectExpr;
75class CXXDefaultInitExpr;
76class CXXDefaultArgExpr;
78class CXXUnresolvedConstructExpr;
79class CXXDependentScopeMemberExpr;
80class MaterializeTemporaryExpr;
82class CXXParenListInitExpr;
84class ConceptSpecializationExpr;
85class SYCLUniqueStableNameExpr;
90class ShuffleVectorExpr;
91class GenericSelectionExpr;
92class DesignatedInitExpr;
94class PseudoObjectExpr;
96class OMPArraySectionExpr;
97class OMPArrayShapingExpr;
99class ObjCArrayLiteral;
100class ObjCDictionaryLiteral;
103class ObjCIvarRefExpr;
104class ObjCPropertyRefExpr;
105class ObjCSubscriptRefExpr;
107class ObjCIndirectCopyRestoreExpr;
108class ObjCMessageExpr;
159 bool KnownInstantiationDependent,
160 bool KnownContainsUnexpandedParameterPack);
167 bool ContainsUnexpandedParameterPack);
175 bool ValueDependent);
184 bool ContainsUnexpandedPack);
Defines the ExceptionSpecificationType enumeration and various utility functions.
CanThrowResult
Possible results from evaluation of a noexcept expression.
ExprDependenceScope::ExprDependence ExprDependence
ExprDependence computeDependence(FullExpr *E)