mirror of
https://github.com/github/codeql.git
synced 2026-04-08 00:24:03 +02:00
20988 lines
1.1 MiB
20988 lines
1.1 MiB
#-----| [CopyAssignmentOperator] __va_list_tag& __va_list_tag::operator=(__va_list_tag const&)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const __va_list_tag &
|
|
#-----| [MoveAssignmentOperator] __va_list_tag& __va_list_tag::operator=(__va_list_tag&&)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] __va_list_tag &&
|
|
#-----| [Operator,TopLevelFunction] void operator delete(void*)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [VoidPointerType] void *
|
|
#-----| [Operator,TopLevelFunction] void operator delete(void*, unsigned long)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [VoidPointerType] void *
|
|
#-----| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| [Operator,TopLevelFunction] void operator delete(void*, unsigned long, std::align_val_t)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [VoidPointerType] void *
|
|
#-----| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| getParameter(2): [Parameter] (unnamed parameter 2)
|
|
#-----| Type = [ScopedEnum] align_val_t
|
|
#-----| [Operator,TopLevelFunction] void operator delete[](void*, unsigned long)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [VoidPointerType] void *
|
|
#-----| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| [Operator,TopLevelFunction] void operator delete[](void*, unsigned long, std::align_val_t)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [VoidPointerType] void *
|
|
#-----| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| getParameter(2): [Parameter] (unnamed parameter 2)
|
|
#-----| Type = [ScopedEnum] align_val_t
|
|
#-----| [Operator,TopLevelFunction] void* operator new(unsigned long)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| [Operator,TopLevelFunction] void* operator new(unsigned long, std::align_val_t)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
#-----| Type = [ScopedEnum] align_val_t
|
|
#-----| [Operator,TopLevelFunction] void* operator new[](unsigned long)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| [Operator,TopLevelFunction] void* operator new[](unsigned long, std::align_val_t)
|
|
#-----| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
#-----| Type = [ScopedEnum] align_val_t
|
|
bad_asts.cpp:
|
|
# 5| [CopyAssignmentOperator] Bad::S& Bad::S::operator=(Bad::S const&)
|
|
# 5| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const S &
|
|
# 5| [MoveAssignmentOperator] Bad::S& Bad::S::operator=(Bad::S&&)
|
|
# 5| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] S &&
|
|
# 9| [FunctionTemplateInstantiation,MemberFunction] int Bad::S::MemberFunction<int 6>(int)
|
|
# 9| <params>:
|
|
# 9| getParameter(0): [Parameter] y
|
|
# 9| Type = [IntType] int
|
|
# 9| getEntryPoint(): [BlockStmt] { ... }
|
|
# 10| getStmt(0): [ReturnStmt] return ...
|
|
# 10| getExpr(): [AddExpr] ... + ...
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getLeftOperand(): [AddExpr] ... + ...
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getLeftOperand(): [Literal] 6
|
|
# 10| Type = [IntType] int
|
|
# 10| Value = [Literal] 6
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getRightOperand(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 10| getQualifier(): [ThisExpr] this
|
|
# 10| Type = [PointerType] S *
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 10| getRightOperand(): [VariableAccess] y
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 9| [MemberFunction,TemplateFunction] int Bad::S::MemberFunction<int t>(int)
|
|
# 9| <params>:
|
|
# 9| getParameter(0): [Parameter] y
|
|
# 9| Type = [IntType] int
|
|
# 9| getEntryPoint(): [BlockStmt] { ... }
|
|
# 10| getStmt(0): [ReturnStmt] return ...
|
|
# 10| getExpr(): [AddExpr] ... + ...
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getLeftOperand(): [AddExpr] ... + ...
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getLeftOperand(): [Literal] t
|
|
# 10| Type = [IntType] int
|
|
# 10| Value = [Literal] t
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getRightOperand(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 10| getQualifier(): [ThisExpr] this
|
|
# 10| Type = [PointerType] S *
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 10| getRightOperand(): [VariableAccess] y
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 14| [TopLevelFunction] void Bad::CallBadMemberFunction()
|
|
# 14| <params>:
|
|
# 14| getEntryPoint(): [BlockStmt] { ... }
|
|
# 15| getStmt(0): [DeclStmt] declaration
|
|
# 15| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 15| Type = [Struct] S
|
|
# 15| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 15| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 15| Type = [Struct] S
|
|
# 15| ValueCategory = prvalue
|
|
# 16| getStmt(1): [ExprStmt] ExprStmt
|
|
# 16| getExpr(): [FunctionCall] call to MemberFunction
|
|
# 16| Type = [IntType] int
|
|
# 16| ValueCategory = prvalue
|
|
# 16| getQualifier(): [VariableAccess] s
|
|
# 16| Type = [Struct] S
|
|
# 16| ValueCategory = lvalue
|
|
# 16| getArgument(0): [Literal] 1
|
|
# 16| Type = [IntType] int
|
|
# 16| Value = [Literal] 1
|
|
# 16| ValueCategory = prvalue
|
|
# 17| getStmt(2): [ReturnStmt] return ...
|
|
# 19| [CopyAssignmentOperator] Bad::Point& Bad::Point::operator=(Bad::Point const&)
|
|
# 19| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Point &
|
|
# 19| [MoveAssignmentOperator] Bad::Point& Bad::Point::operator=(Bad::Point&&)
|
|
# 19| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Point &&
|
|
# 19| [CopyConstructor] void Bad::Point::Point(Bad::Point const&)
|
|
# 19| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Point &
|
|
# 19| <initializations>:
|
|
# 19| getInitializer(0): [ConstructorFieldInit] constructor init of field x
|
|
# 19| Type = [IntType] int
|
|
# 19| ValueCategory = prvalue
|
|
# 19| getExpr(): [ReferenceFieldAccess] x
|
|
# 19| Type = [IntType] int
|
|
# 19| ValueCategory = prvalue(load)
|
|
# 19| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 19| Type = [LValueReferenceType] const Point &
|
|
# 19| ValueCategory = prvalue(load)
|
|
# 19| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 19| Type = [SpecifiedType] const Point
|
|
# 19| ValueCategory = lvalue
|
|
# 19| getInitializer(1): [ConstructorFieldInit] constructor init of field y
|
|
# 19| Type = [IntType] int
|
|
# 19| ValueCategory = prvalue
|
|
# 19| getExpr(): [ReferenceFieldAccess] y
|
|
# 19| Type = [IntType] int
|
|
# 19| ValueCategory = prvalue(load)
|
|
# 19| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 19| Type = [LValueReferenceType] const Point &
|
|
# 19| ValueCategory = prvalue(load)
|
|
# 19| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 19| Type = [SpecifiedType] const Point
|
|
# 19| ValueCategory = lvalue
|
|
# 19| getEntryPoint(): [BlockStmt] { ... }
|
|
# 19| getStmt(0): [ReturnStmt] return ...
|
|
# 19| [MoveConstructor] void Bad::Point::Point(Bad::Point&&)
|
|
# 19| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Point &&
|
|
# 22| [Constructor] void Bad::Point::Point()
|
|
# 22| <params>:
|
|
# 22| <initializations>:
|
|
# 22| getEntryPoint(): [BlockStmt] { ... }
|
|
# 23| getStmt(0): [ReturnStmt] return ...
|
|
# 26| [TopLevelFunction] void Bad::CallCopyConstructor(Bad::Point const&)
|
|
# 26| <params>:
|
|
# 26| getParameter(0): [Parameter] a
|
|
# 26| Type = [LValueReferenceType] const Point &
|
|
# 26| getEntryPoint(): [BlockStmt] { ... }
|
|
# 27| getStmt(0): [DeclStmt] declaration
|
|
# 27| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 27| Type = [Struct] Point
|
|
# 27| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 27| getExpr(): [VariableAccess] a
|
|
# 27| Type = [LValueReferenceType] const Point &
|
|
# 27| ValueCategory = prvalue(load)
|
|
# 27| getExpr().getFullyConverted(): [CStyleCast] (Point)...
|
|
# 27| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 27| Type = [Struct] Point
|
|
# 27| ValueCategory = prvalue(load)
|
|
# 27| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 27| Type = [SpecifiedType] const Point
|
|
# 27| ValueCategory = lvalue
|
|
# 28| getStmt(1): [ReturnStmt] return ...
|
|
bad_stmts.cpp:
|
|
# 5| [TopLevelFunction] void Bad::errorExpr()
|
|
# 5| <params>:
|
|
# 5| getEntryPoint(): [BlockStmt] { ... }
|
|
# 6| getStmt(0): [DeclStmt] declaration
|
|
# 6| getDeclarationEntry(0): [VariableDeclarationEntry] definition of intref
|
|
# 6| Type = [LValueReferenceType] int &
|
|
# 6| getVariable().getInitializer(): [Initializer] initializer for intref
|
|
# 6| getExpr(): [ErrorExpr] <error expr>
|
|
# 6| Type = [ErroneousType] error
|
|
# 6| ValueCategory = prvalue
|
|
# 7| getStmt(1): [DeclStmt] declaration
|
|
# 7| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 7| Type = [IntType] int
|
|
# 7| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 7| getExpr(): [ErrorExpr] <error expr>
|
|
# 7| Type = [ErroneousType] error
|
|
# 7| ValueCategory = prvalue
|
|
# 8| getStmt(2): [ExprStmt] ExprStmt
|
|
# 8| getExpr(): [AssignExpr] ... = ...
|
|
# 8| Type = [IntType] int
|
|
# 8| ValueCategory = lvalue
|
|
# 8| getLValue(): [VariableAccess] x
|
|
# 8| Type = [IntType] int
|
|
# 8| ValueCategory = lvalue
|
|
# 8| getRValue(): [ErrorExpr] <error expr>
|
|
# 8| Type = [ErroneousType] error
|
|
# 8| ValueCategory = prvalue(load)
|
|
# 9| getStmt(3): [ReturnStmt] return ...
|
|
clang.cpp:
|
|
# 5| [TopLevelFunction] int* globalIntAddress()
|
|
# 5| <params>:
|
|
# 5| getEntryPoint(): [BlockStmt] { ... }
|
|
# 6| getStmt(0): [ReturnStmt] return ...
|
|
# 6| getExpr(): [BuiltInOperationBuiltInAddressOf] __builtin_addressof ...
|
|
# 6| Type = [IntPointerType] int *
|
|
# 6| ValueCategory = prvalue
|
|
# 6| getOperand(): [VariableAccess] globalInt
|
|
# 6| Type = [IntType] int
|
|
# 6| ValueCategory = lvalue
|
|
complex.c:
|
|
# 1| [TopLevelFunction] void complex_literals()
|
|
# 1| <params>:
|
|
# 1| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2| getStmt(0): [DeclStmt] declaration
|
|
# 2| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cf
|
|
# 2| Type = [ArithmeticType] _Complex float
|
|
# 2| getVariable().getInitializer(): [Initializer] initializer for cf
|
|
# 2| getExpr(): [Literal] 2.0
|
|
# 2| Type = [DoubleType] double
|
|
# 2| Value = [Literal] 2.0
|
|
# 2| ValueCategory = prvalue
|
|
# 2| getExpr().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 2| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 2| Type = [ArithmeticType] _Complex float
|
|
# 2| ValueCategory = prvalue
|
|
# 3| getStmt(1): [ExprStmt] ExprStmt
|
|
# 3| getExpr(): [AssignExpr] ... = ...
|
|
# 3| Type = [ArithmeticType] _Complex float
|
|
# 3| ValueCategory = prvalue
|
|
# 3| getLValue(): [VariableAccess] cf
|
|
# 3| Type = [ArithmeticType] _Complex float
|
|
# 3| ValueCategory = lvalue
|
|
# 3| getRValue(): [Literal] 1.0i
|
|
# 3| Type = [ArithmeticType] _Imaginary float
|
|
# 3| Value = [Literal] 1.0i
|
|
# 3| ValueCategory = prvalue
|
|
# 3| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 3| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 3| Type = [ArithmeticType] _Complex float
|
|
# 3| ValueCategory = prvalue
|
|
# 4| getStmt(2): [DeclStmt] declaration
|
|
# 4| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cd
|
|
# 4| Type = [ArithmeticType] _Complex double
|
|
# 4| getVariable().getInitializer(): [Initializer] initializer for cd
|
|
# 4| getExpr(): [Literal] 3.0
|
|
# 4| Type = [DoubleType] double
|
|
# 4| Value = [Literal] 3.0
|
|
# 4| ValueCategory = prvalue
|
|
# 4| getExpr().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 4| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 4| Type = [ArithmeticType] _Complex double
|
|
# 4| ValueCategory = prvalue
|
|
# 5| getStmt(3): [ExprStmt] ExprStmt
|
|
# 5| getExpr(): [AssignExpr] ... = ...
|
|
# 5| Type = [ArithmeticType] _Complex double
|
|
# 5| ValueCategory = prvalue
|
|
# 5| getLValue(): [VariableAccess] cd
|
|
# 5| Type = [ArithmeticType] _Complex double
|
|
# 5| ValueCategory = lvalue
|
|
# 5| getRValue(): [Literal] 1.0i
|
|
# 5| Type = [ArithmeticType] _Imaginary float
|
|
# 5| Value = [Literal] 1.0i
|
|
# 5| ValueCategory = prvalue
|
|
# 5| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 5| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 5| Type = [ArithmeticType] _Complex double
|
|
# 5| ValueCategory = prvalue
|
|
# 6| getStmt(4): [DeclStmt] declaration
|
|
# 6| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cld
|
|
# 6| Type = [ArithmeticType] _Complex long double
|
|
# 6| getVariable().getInitializer(): [Initializer] initializer for cld
|
|
# 6| getExpr(): [Literal] 5.0
|
|
# 6| Type = [DoubleType] double
|
|
# 6| Value = [Literal] 5.0
|
|
# 6| ValueCategory = prvalue
|
|
# 6| getExpr().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 6| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 6| Type = [ArithmeticType] _Complex long double
|
|
# 6| ValueCategory = prvalue
|
|
# 7| getStmt(5): [ExprStmt] ExprStmt
|
|
# 7| getExpr(): [AssignExpr] ... = ...
|
|
# 7| Type = [ArithmeticType] _Complex long double
|
|
# 7| ValueCategory = prvalue
|
|
# 7| getLValue(): [VariableAccess] cld
|
|
# 7| Type = [ArithmeticType] _Complex long double
|
|
# 7| ValueCategory = lvalue
|
|
# 7| getRValue(): [Literal] 1.0i
|
|
# 7| Type = [ArithmeticType] _Imaginary float
|
|
# 7| Value = [Literal] 1.0i
|
|
# 7| ValueCategory = prvalue
|
|
# 7| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 7| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 7| Type = [ArithmeticType] _Complex long double
|
|
# 7| ValueCategory = prvalue
|
|
# 9| getStmt(6): [DeclStmt] declaration
|
|
# 9| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jf
|
|
# 9| Type = [ArithmeticType] _Imaginary float
|
|
# 9| getVariable().getInitializer(): [Initializer] initializer for jf
|
|
# 9| getExpr(): [Literal] 1.0i
|
|
# 9| Type = [ArithmeticType] _Imaginary float
|
|
# 9| Value = [Literal] 1.0i
|
|
# 9| ValueCategory = prvalue
|
|
# 10| getStmt(7): [DeclStmt] declaration
|
|
# 10| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jd
|
|
# 10| Type = [ArithmeticType] _Imaginary double
|
|
# 10| getVariable().getInitializer(): [Initializer] initializer for jd
|
|
# 10| getExpr(): [Literal] 1.0i
|
|
# 10| Type = [ArithmeticType] _Imaginary float
|
|
# 10| Value = [Literal] 1.0i
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getExpr().getFullyConverted(): [CStyleCast] (_Imaginary double)...
|
|
# 10| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 10| Type = [ArithmeticType] _Imaginary double
|
|
# 10| ValueCategory = prvalue
|
|
# 11| getStmt(8): [DeclStmt] declaration
|
|
# 11| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jld
|
|
# 11| Type = [ArithmeticType] _Imaginary long double
|
|
# 11| getVariable().getInitializer(): [Initializer] initializer for jld
|
|
# 11| getExpr(): [Literal] 1.0i
|
|
# 11| Type = [ArithmeticType] _Imaginary float
|
|
# 11| Value = [Literal] 1.0i
|
|
# 11| ValueCategory = prvalue
|
|
# 11| getExpr().getFullyConverted(): [CStyleCast] (_Imaginary long double)...
|
|
# 11| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 11| Type = [ArithmeticType] _Imaginary long double
|
|
# 11| ValueCategory = prvalue
|
|
# 12| getStmt(9): [ReturnStmt] return ...
|
|
# 14| [TopLevelFunction] void complex_arithmetic()
|
|
# 14| <params>:
|
|
# 14| getEntryPoint(): [BlockStmt] { ... }
|
|
# 15| getStmt(0): [DeclStmt] declaration
|
|
# 15| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f1
|
|
# 15| Type = [FloatType] float
|
|
# 15| getVariable().getInitializer(): [Initializer] initializer for f1
|
|
# 15| getExpr(): [Literal] 5.0
|
|
# 15| Type = [DoubleType] double
|
|
# 15| Value = [Literal] 5.0
|
|
# 15| ValueCategory = prvalue
|
|
# 15| getExpr().getFullyConverted(): [CStyleCast] (float)...
|
|
# 15| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 15| Type = [FloatType] float
|
|
# 15| Value = [CStyleCast] 5.0
|
|
# 15| ValueCategory = prvalue
|
|
# 16| getStmt(1): [DeclStmt] declaration
|
|
# 16| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f2
|
|
# 16| Type = [FloatType] float
|
|
# 16| getVariable().getInitializer(): [Initializer] initializer for f2
|
|
# 16| getExpr(): [Literal] 7.0
|
|
# 16| Type = [DoubleType] double
|
|
# 16| Value = [Literal] 7.0
|
|
# 16| ValueCategory = prvalue
|
|
# 16| getExpr().getFullyConverted(): [CStyleCast] (float)...
|
|
# 16| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 16| Type = [FloatType] float
|
|
# 16| Value = [CStyleCast] 7.0
|
|
# 16| ValueCategory = prvalue
|
|
# 17| getStmt(2): [DeclStmt] declaration
|
|
# 17| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f3
|
|
# 17| Type = [FloatType] float
|
|
# 18| getStmt(3): [DeclStmt] declaration
|
|
# 18| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cf1
|
|
# 18| Type = [ArithmeticType] _Complex float
|
|
# 18| getVariable().getInitializer(): [Initializer] initializer for cf1
|
|
# 18| getExpr(): [Literal] 2.0
|
|
# 18| Type = [DoubleType] double
|
|
# 18| Value = [Literal] 2.0
|
|
# 18| ValueCategory = prvalue
|
|
# 18| getExpr().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 18| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 18| Type = [ArithmeticType] _Complex float
|
|
# 18| ValueCategory = prvalue
|
|
# 19| getStmt(4): [DeclStmt] declaration
|
|
# 19| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cf2
|
|
# 19| Type = [ArithmeticType] _Complex float
|
|
# 19| getVariable().getInitializer(): [Initializer] initializer for cf2
|
|
# 19| getExpr(): [Literal] 1.0i
|
|
# 19| Type = [ArithmeticType] _Imaginary float
|
|
# 19| Value = [Literal] 1.0i
|
|
# 19| ValueCategory = prvalue
|
|
# 19| getExpr().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 19| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 19| Type = [ArithmeticType] _Complex float
|
|
# 19| ValueCategory = prvalue
|
|
# 20| getStmt(5): [DeclStmt] declaration
|
|
# 20| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cf3
|
|
# 20| Type = [ArithmeticType] _Complex float
|
|
# 21| getStmt(6): [DeclStmt] declaration
|
|
# 21| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jf1
|
|
# 21| Type = [ArithmeticType] _Imaginary float
|
|
# 21| getVariable().getInitializer(): [Initializer] initializer for jf1
|
|
# 21| getExpr(): [Literal] 1.0i
|
|
# 21| Type = [ArithmeticType] _Imaginary float
|
|
# 21| Value = [Literal] 1.0i
|
|
# 21| ValueCategory = prvalue
|
|
# 22| getStmt(7): [DeclStmt] declaration
|
|
# 22| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jf2
|
|
# 22| Type = [ArithmeticType] _Imaginary float
|
|
# 22| getVariable().getInitializer(): [Initializer] initializer for jf2
|
|
# 22| getExpr(): [Literal] 1.0i
|
|
# 22| Type = [ArithmeticType] _Imaginary float
|
|
# 22| Value = [Literal] 1.0i
|
|
# 22| ValueCategory = prvalue
|
|
# 23| getStmt(8): [DeclStmt] declaration
|
|
# 23| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jf3
|
|
# 23| Type = [ArithmeticType] _Imaginary float
|
|
# 26| getStmt(9): [ExprStmt] ExprStmt
|
|
# 26| getExpr(): [AssignExpr] ... = ...
|
|
# 26| Type = [ArithmeticType] _Complex float
|
|
# 26| ValueCategory = prvalue
|
|
# 26| getLValue(): [VariableAccess] cf3
|
|
# 26| Type = [ArithmeticType] _Complex float
|
|
# 26| ValueCategory = lvalue
|
|
# 26| getRValue(): [UnaryPlusExpr] + ...
|
|
# 26| Type = [ArithmeticType] _Complex float
|
|
# 26| ValueCategory = prvalue
|
|
# 26| getOperand(): [VariableAccess] cf1
|
|
# 26| Type = [ArithmeticType] _Complex float
|
|
# 26| ValueCategory = prvalue(load)
|
|
# 27| getStmt(10): [ExprStmt] ExprStmt
|
|
# 27| getExpr(): [AssignExpr] ... = ...
|
|
# 27| Type = [ArithmeticType] _Complex float
|
|
# 27| ValueCategory = prvalue
|
|
# 27| getLValue(): [VariableAccess] cf3
|
|
# 27| Type = [ArithmeticType] _Complex float
|
|
# 27| ValueCategory = lvalue
|
|
# 27| getRValue(): [UnaryMinusExpr] - ...
|
|
# 27| Type = [ArithmeticType] _Complex float
|
|
# 27| ValueCategory = prvalue
|
|
# 27| getOperand(): [VariableAccess] cf1
|
|
# 27| Type = [ArithmeticType] _Complex float
|
|
# 27| ValueCategory = prvalue(load)
|
|
# 30| getStmt(11): [ExprStmt] ExprStmt
|
|
# 30| getExpr(): [AssignExpr] ... = ...
|
|
# 30| Type = [ArithmeticType] _Complex float
|
|
# 30| ValueCategory = prvalue
|
|
# 30| getLValue(): [VariableAccess] cf3
|
|
# 30| Type = [ArithmeticType] _Complex float
|
|
# 30| ValueCategory = lvalue
|
|
# 30| getRValue(): [AddExpr] ... + ...
|
|
# 30| Type = [ArithmeticType] _Complex float
|
|
# 30| ValueCategory = prvalue
|
|
# 30| getLeftOperand(): [VariableAccess] cf1
|
|
# 30| Type = [ArithmeticType] _Complex float
|
|
# 30| ValueCategory = prvalue(load)
|
|
# 30| getRightOperand(): [VariableAccess] cf2
|
|
# 30| Type = [ArithmeticType] _Complex float
|
|
# 30| ValueCategory = prvalue(load)
|
|
# 31| getStmt(12): [ExprStmt] ExprStmt
|
|
# 31| getExpr(): [AssignExpr] ... = ...
|
|
# 31| Type = [ArithmeticType] _Complex float
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getLValue(): [VariableAccess] cf3
|
|
# 31| Type = [ArithmeticType] _Complex float
|
|
# 31| ValueCategory = lvalue
|
|
# 31| getRValue(): [SubExpr] ... - ...
|
|
# 31| Type = [ArithmeticType] _Complex float
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getLeftOperand(): [VariableAccess] cf1
|
|
# 31| Type = [ArithmeticType] _Complex float
|
|
# 31| ValueCategory = prvalue(load)
|
|
# 31| getRightOperand(): [VariableAccess] cf2
|
|
# 31| Type = [ArithmeticType] _Complex float
|
|
# 31| ValueCategory = prvalue(load)
|
|
# 32| getStmt(13): [ExprStmt] ExprStmt
|
|
# 32| getExpr(): [AssignExpr] ... = ...
|
|
# 32| Type = [ArithmeticType] _Complex float
|
|
# 32| ValueCategory = prvalue
|
|
# 32| getLValue(): [VariableAccess] cf3
|
|
# 32| Type = [ArithmeticType] _Complex float
|
|
# 32| ValueCategory = lvalue
|
|
# 32| getRValue(): [MulExpr] ... * ...
|
|
# 32| Type = [ArithmeticType] _Complex float
|
|
# 32| ValueCategory = prvalue
|
|
# 32| getLeftOperand(): [VariableAccess] cf1
|
|
# 32| Type = [ArithmeticType] _Complex float
|
|
# 32| ValueCategory = prvalue(load)
|
|
# 32| getRightOperand(): [VariableAccess] cf2
|
|
# 32| Type = [ArithmeticType] _Complex float
|
|
# 32| ValueCategory = prvalue(load)
|
|
# 33| getStmt(14): [ExprStmt] ExprStmt
|
|
# 33| getExpr(): [AssignExpr] ... = ...
|
|
# 33| Type = [ArithmeticType] _Complex float
|
|
# 33| ValueCategory = prvalue
|
|
# 33| getLValue(): [VariableAccess] cf3
|
|
# 33| Type = [ArithmeticType] _Complex float
|
|
# 33| ValueCategory = lvalue
|
|
# 33| getRValue(): [DivExpr] ... / ...
|
|
# 33| Type = [ArithmeticType] _Complex float
|
|
# 33| ValueCategory = prvalue
|
|
# 33| getLeftOperand(): [VariableAccess] cf1
|
|
# 33| Type = [ArithmeticType] _Complex float
|
|
# 33| ValueCategory = prvalue(load)
|
|
# 33| getRightOperand(): [VariableAccess] cf2
|
|
# 33| Type = [ArithmeticType] _Complex float
|
|
# 33| ValueCategory = prvalue(load)
|
|
# 36| getStmt(15): [ExprStmt] ExprStmt
|
|
# 36| getExpr(): [AssignExpr] ... = ...
|
|
# 36| Type = [ArithmeticType] _Imaginary float
|
|
# 36| ValueCategory = prvalue
|
|
# 36| getLValue(): [VariableAccess] jf3
|
|
# 36| Type = [ArithmeticType] _Imaginary float
|
|
# 36| ValueCategory = lvalue
|
|
# 36| getRValue(): [UnaryPlusExpr] + ...
|
|
# 36| Type = [ArithmeticType] _Imaginary float
|
|
# 36| ValueCategory = prvalue
|
|
# 36| getOperand(): [VariableAccess] jf1
|
|
# 36| Type = [ArithmeticType] _Imaginary float
|
|
# 36| ValueCategory = prvalue(load)
|
|
# 37| getStmt(16): [ExprStmt] ExprStmt
|
|
# 37| getExpr(): [AssignExpr] ... = ...
|
|
# 37| Type = [ArithmeticType] _Imaginary float
|
|
# 37| ValueCategory = prvalue
|
|
# 37| getLValue(): [VariableAccess] jf3
|
|
# 37| Type = [ArithmeticType] _Imaginary float
|
|
# 37| ValueCategory = lvalue
|
|
# 37| getRValue(): [UnaryMinusExpr] - ...
|
|
# 37| Type = [ArithmeticType] _Imaginary float
|
|
# 37| ValueCategory = prvalue
|
|
# 37| getOperand(): [VariableAccess] jf1
|
|
# 37| Type = [ArithmeticType] _Imaginary float
|
|
# 37| ValueCategory = prvalue(load)
|
|
# 40| getStmt(17): [ExprStmt] ExprStmt
|
|
# 40| getExpr(): [AssignExpr] ... = ...
|
|
# 40| Type = [ArithmeticType] _Imaginary float
|
|
# 40| ValueCategory = prvalue
|
|
# 40| getLValue(): [VariableAccess] jf3
|
|
# 40| Type = [ArithmeticType] _Imaginary float
|
|
# 40| ValueCategory = lvalue
|
|
# 40| getRValue(): [AddExpr] ... + ...
|
|
# 40| Type = [ArithmeticType] _Imaginary float
|
|
# 40| ValueCategory = prvalue
|
|
# 40| getLeftOperand(): [VariableAccess] jf1
|
|
# 40| Type = [ArithmeticType] _Imaginary float
|
|
# 40| ValueCategory = prvalue(load)
|
|
# 40| getRightOperand(): [VariableAccess] jf2
|
|
# 40| Type = [ArithmeticType] _Imaginary float
|
|
# 40| ValueCategory = prvalue(load)
|
|
# 41| getStmt(18): [ExprStmt] ExprStmt
|
|
# 41| getExpr(): [AssignExpr] ... = ...
|
|
# 41| Type = [ArithmeticType] _Imaginary float
|
|
# 41| ValueCategory = prvalue
|
|
# 41| getLValue(): [VariableAccess] jf3
|
|
# 41| Type = [ArithmeticType] _Imaginary float
|
|
# 41| ValueCategory = lvalue
|
|
# 41| getRValue(): [SubExpr] ... - ...
|
|
# 41| Type = [ArithmeticType] _Imaginary float
|
|
# 41| ValueCategory = prvalue
|
|
# 41| getLeftOperand(): [VariableAccess] jf1
|
|
# 41| Type = [ArithmeticType] _Imaginary float
|
|
# 41| ValueCategory = prvalue(load)
|
|
# 41| getRightOperand(): [VariableAccess] jf2
|
|
# 41| Type = [ArithmeticType] _Imaginary float
|
|
# 41| ValueCategory = prvalue(load)
|
|
# 42| getStmt(19): [ExprStmt] ExprStmt
|
|
# 42| getExpr(): [AssignExpr] ... = ...
|
|
# 42| Type = [FloatType] float
|
|
# 42| ValueCategory = prvalue
|
|
# 42| getLValue(): [VariableAccess] f3
|
|
# 42| Type = [FloatType] float
|
|
# 42| ValueCategory = lvalue
|
|
# 42| getRValue(): [ImaginaryMulExpr] ... * ...
|
|
# 42| Type = [FloatType] float
|
|
# 42| ValueCategory = prvalue
|
|
# 42| getLeftOperand(): [VariableAccess] jf1
|
|
# 42| Type = [ArithmeticType] _Imaginary float
|
|
# 42| ValueCategory = prvalue(load)
|
|
# 42| getRightOperand(): [VariableAccess] jf2
|
|
# 42| Type = [ArithmeticType] _Imaginary float
|
|
# 42| ValueCategory = prvalue(load)
|
|
# 43| getStmt(20): [ExprStmt] ExprStmt
|
|
# 43| getExpr(): [AssignExpr] ... = ...
|
|
# 43| Type = [FloatType] float
|
|
# 43| ValueCategory = prvalue
|
|
# 43| getLValue(): [VariableAccess] f3
|
|
# 43| Type = [FloatType] float
|
|
# 43| ValueCategory = lvalue
|
|
# 43| getRValue(): [DivExpr] ... / ...
|
|
# 43| Type = [FloatType] float
|
|
# 43| ValueCategory = prvalue
|
|
# 43| getLeftOperand(): [VariableAccess] jf1
|
|
# 43| Type = [ArithmeticType] _Imaginary float
|
|
# 43| ValueCategory = prvalue(load)
|
|
# 43| getRightOperand(): [VariableAccess] jf2
|
|
# 43| Type = [ArithmeticType] _Imaginary float
|
|
# 43| ValueCategory = prvalue(load)
|
|
# 46| getStmt(21): [ExprStmt] ExprStmt
|
|
# 46| getExpr(): [AssignExpr] ... = ...
|
|
# 46| Type = [ArithmeticType] _Complex float
|
|
# 46| ValueCategory = prvalue
|
|
# 46| getLValue(): [VariableAccess] cf3
|
|
# 46| Type = [ArithmeticType] _Complex float
|
|
# 46| ValueCategory = lvalue
|
|
# 46| getRValue(): [ImaginaryRealAddExpr] ... + ...
|
|
# 46| Type = [ArithmeticType] _Complex float
|
|
# 46| ValueCategory = prvalue
|
|
# 46| getLeftOperand(): [VariableAccess] jf1
|
|
# 46| Type = [ArithmeticType] _Imaginary float
|
|
# 46| ValueCategory = prvalue(load)
|
|
# 46| getRightOperand(): [VariableAccess] f2
|
|
# 46| Type = [FloatType] float
|
|
# 46| ValueCategory = prvalue(load)
|
|
# 47| getStmt(22): [ExprStmt] ExprStmt
|
|
# 47| getExpr(): [AssignExpr] ... = ...
|
|
# 47| Type = [ArithmeticType] _Complex float
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getLValue(): [VariableAccess] cf3
|
|
# 47| Type = [ArithmeticType] _Complex float
|
|
# 47| ValueCategory = lvalue
|
|
# 47| getRValue(): [ImaginaryRealSubExpr] ... - ...
|
|
# 47| Type = [ArithmeticType] _Complex float
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getLeftOperand(): [VariableAccess] jf1
|
|
# 47| Type = [ArithmeticType] _Imaginary float
|
|
# 47| ValueCategory = prvalue(load)
|
|
# 47| getRightOperand(): [VariableAccess] f2
|
|
# 47| Type = [FloatType] float
|
|
# 47| ValueCategory = prvalue(load)
|
|
# 48| getStmt(23): [ExprStmt] ExprStmt
|
|
# 48| getExpr(): [AssignExpr] ... = ...
|
|
# 48| Type = [ArithmeticType] _Imaginary float
|
|
# 48| ValueCategory = prvalue
|
|
# 48| getLValue(): [VariableAccess] jf3
|
|
# 48| Type = [ArithmeticType] _Imaginary float
|
|
# 48| ValueCategory = lvalue
|
|
# 48| getRValue(): [MulExpr] ... * ...
|
|
# 48| Type = [ArithmeticType] _Imaginary float
|
|
# 48| ValueCategory = prvalue
|
|
# 48| getLeftOperand(): [VariableAccess] jf1
|
|
# 48| Type = [ArithmeticType] _Imaginary float
|
|
# 48| ValueCategory = prvalue(load)
|
|
# 48| getRightOperand(): [VariableAccess] f2
|
|
# 48| Type = [FloatType] float
|
|
# 48| ValueCategory = prvalue(load)
|
|
# 49| getStmt(24): [ExprStmt] ExprStmt
|
|
# 49| getExpr(): [AssignExpr] ... = ...
|
|
# 49| Type = [ArithmeticType] _Imaginary float
|
|
# 49| ValueCategory = prvalue
|
|
# 49| getLValue(): [VariableAccess] jf3
|
|
# 49| Type = [ArithmeticType] _Imaginary float
|
|
# 49| ValueCategory = lvalue
|
|
# 49| getRValue(): [DivExpr] ... / ...
|
|
# 49| Type = [ArithmeticType] _Imaginary float
|
|
# 49| ValueCategory = prvalue
|
|
# 49| getLeftOperand(): [VariableAccess] jf1
|
|
# 49| Type = [ArithmeticType] _Imaginary float
|
|
# 49| ValueCategory = prvalue(load)
|
|
# 49| getRightOperand(): [VariableAccess] f2
|
|
# 49| Type = [FloatType] float
|
|
# 49| ValueCategory = prvalue(load)
|
|
# 52| getStmt(25): [ExprStmt] ExprStmt
|
|
# 52| getExpr(): [AssignExpr] ... = ...
|
|
# 52| Type = [ArithmeticType] _Complex float
|
|
# 52| ValueCategory = prvalue
|
|
# 52| getLValue(): [VariableAccess] cf3
|
|
# 52| Type = [ArithmeticType] _Complex float
|
|
# 52| ValueCategory = lvalue
|
|
# 52| getRValue(): [RealImaginaryAddExpr] ... + ...
|
|
# 52| Type = [ArithmeticType] _Complex float
|
|
# 52| ValueCategory = prvalue
|
|
# 52| getLeftOperand(): [VariableAccess] f1
|
|
# 52| Type = [FloatType] float
|
|
# 52| ValueCategory = prvalue(load)
|
|
# 52| getRightOperand(): [VariableAccess] jf2
|
|
# 52| Type = [ArithmeticType] _Imaginary float
|
|
# 52| ValueCategory = prvalue(load)
|
|
# 53| getStmt(26): [ExprStmt] ExprStmt
|
|
# 53| getExpr(): [AssignExpr] ... = ...
|
|
# 53| Type = [ArithmeticType] _Complex float
|
|
# 53| ValueCategory = prvalue
|
|
# 53| getLValue(): [VariableAccess] cf3
|
|
# 53| Type = [ArithmeticType] _Complex float
|
|
# 53| ValueCategory = lvalue
|
|
# 53| getRValue(): [RealImaginarySubExpr] ... - ...
|
|
# 53| Type = [ArithmeticType] _Complex float
|
|
# 53| ValueCategory = prvalue
|
|
# 53| getLeftOperand(): [VariableAccess] f1
|
|
# 53| Type = [FloatType] float
|
|
# 53| ValueCategory = prvalue(load)
|
|
# 53| getRightOperand(): [VariableAccess] jf2
|
|
# 53| Type = [ArithmeticType] _Imaginary float
|
|
# 53| ValueCategory = prvalue(load)
|
|
# 54| getStmt(27): [ExprStmt] ExprStmt
|
|
# 54| getExpr(): [AssignExpr] ... = ...
|
|
# 54| Type = [ArithmeticType] _Imaginary float
|
|
# 54| ValueCategory = prvalue
|
|
# 54| getLValue(): [VariableAccess] jf3
|
|
# 54| Type = [ArithmeticType] _Imaginary float
|
|
# 54| ValueCategory = lvalue
|
|
# 54| getRValue(): [MulExpr] ... * ...
|
|
# 54| Type = [ArithmeticType] _Imaginary float
|
|
# 54| ValueCategory = prvalue
|
|
# 54| getLeftOperand(): [VariableAccess] f1
|
|
# 54| Type = [FloatType] float
|
|
# 54| ValueCategory = prvalue(load)
|
|
# 54| getRightOperand(): [VariableAccess] jf2
|
|
# 54| Type = [ArithmeticType] _Imaginary float
|
|
# 54| ValueCategory = prvalue(load)
|
|
# 55| getStmt(28): [ExprStmt] ExprStmt
|
|
# 55| getExpr(): [AssignExpr] ... = ...
|
|
# 55| Type = [ArithmeticType] _Imaginary float
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getLValue(): [VariableAccess] jf3
|
|
# 55| Type = [ArithmeticType] _Imaginary float
|
|
# 55| ValueCategory = lvalue
|
|
# 55| getRValue(): [ImaginaryDivExpr] ... / ...
|
|
# 55| Type = [ArithmeticType] _Imaginary float
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getLeftOperand(): [VariableAccess] f1
|
|
# 55| Type = [FloatType] float
|
|
# 55| ValueCategory = prvalue(load)
|
|
# 55| getRightOperand(): [VariableAccess] jf2
|
|
# 55| Type = [ArithmeticType] _Imaginary float
|
|
# 55| ValueCategory = prvalue(load)
|
|
# 56| getStmt(29): [ReturnStmt] return ...
|
|
# 58| [TopLevelFunction] void complex_conversions()
|
|
# 58| <params>:
|
|
# 58| getEntryPoint(): [BlockStmt] { ... }
|
|
# 59| getStmt(0): [DeclStmt] declaration
|
|
# 59| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f
|
|
# 59| Type = [FloatType] float
|
|
# 59| getVariable().getInitializer(): [Initializer] initializer for f
|
|
# 59| getExpr(): [Literal] 2.0
|
|
# 59| Type = [DoubleType] double
|
|
# 59| Value = [Literal] 2.0
|
|
# 59| ValueCategory = prvalue
|
|
# 59| getExpr().getFullyConverted(): [CStyleCast] (float)...
|
|
# 59| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 59| Type = [FloatType] float
|
|
# 59| Value = [CStyleCast] 2.0
|
|
# 59| ValueCategory = prvalue
|
|
# 60| getStmt(1): [DeclStmt] declaration
|
|
# 60| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 60| Type = [DoubleType] double
|
|
# 60| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 60| getExpr(): [Literal] 3.0
|
|
# 60| Type = [DoubleType] double
|
|
# 60| Value = [Literal] 3.0
|
|
# 60| ValueCategory = prvalue
|
|
# 61| getStmt(2): [DeclStmt] declaration
|
|
# 61| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ld
|
|
# 61| Type = [LongDoubleType] long double
|
|
# 61| getVariable().getInitializer(): [Initializer] initializer for ld
|
|
# 61| getExpr(): [Literal] 5.0
|
|
# 61| Type = [DoubleType] double
|
|
# 61| Value = [Literal] 5.0
|
|
# 61| ValueCategory = prvalue
|
|
# 61| getExpr().getFullyConverted(): [CStyleCast] (long double)...
|
|
# 61| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 61| Type = [LongDoubleType] long double
|
|
# 61| Value = [CStyleCast] 5.0
|
|
# 61| ValueCategory = prvalue
|
|
# 62| getStmt(3): [DeclStmt] declaration
|
|
# 62| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cf
|
|
# 62| Type = [ArithmeticType] _Complex float
|
|
# 62| getVariable().getInitializer(): [Initializer] initializer for cf
|
|
# 62| getExpr(): [Literal] 7.0
|
|
# 62| Type = [DoubleType] double
|
|
# 62| Value = [Literal] 7.0
|
|
# 62| ValueCategory = prvalue
|
|
# 62| getExpr().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 62| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 62| Type = [ArithmeticType] _Complex float
|
|
# 62| ValueCategory = prvalue
|
|
# 63| getStmt(4): [DeclStmt] declaration
|
|
# 63| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cd
|
|
# 63| Type = [ArithmeticType] _Complex double
|
|
# 63| getVariable().getInitializer(): [Initializer] initializer for cd
|
|
# 63| getExpr(): [Literal] 11.0
|
|
# 63| Type = [DoubleType] double
|
|
# 63| Value = [Literal] 11.0
|
|
# 63| ValueCategory = prvalue
|
|
# 63| getExpr().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 63| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 63| Type = [ArithmeticType] _Complex double
|
|
# 63| ValueCategory = prvalue
|
|
# 64| getStmt(5): [DeclStmt] declaration
|
|
# 64| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cld
|
|
# 64| Type = [ArithmeticType] _Complex long double
|
|
# 64| getVariable().getInitializer(): [Initializer] initializer for cld
|
|
# 64| getExpr(): [Literal] 13.0
|
|
# 64| Type = [DoubleType] double
|
|
# 64| Value = [Literal] 13.0
|
|
# 64| ValueCategory = prvalue
|
|
# 64| getExpr().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 64| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 64| Type = [ArithmeticType] _Complex long double
|
|
# 64| ValueCategory = prvalue
|
|
# 65| getStmt(6): [DeclStmt] declaration
|
|
# 65| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jf
|
|
# 65| Type = [ArithmeticType] _Imaginary float
|
|
# 65| getVariable().getInitializer(): [Initializer] initializer for jf
|
|
# 65| getExpr(): [Literal] 1.0i
|
|
# 65| Type = [ArithmeticType] _Imaginary float
|
|
# 65| Value = [Literal] 1.0i
|
|
# 65| ValueCategory = prvalue
|
|
# 66| getStmt(7): [DeclStmt] declaration
|
|
# 66| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jd
|
|
# 66| Type = [ArithmeticType] _Imaginary double
|
|
# 66| getVariable().getInitializer(): [Initializer] initializer for jd
|
|
# 66| getExpr(): [Literal] 1.0i
|
|
# 66| Type = [ArithmeticType] _Imaginary float
|
|
# 66| Value = [Literal] 1.0i
|
|
# 66| ValueCategory = prvalue
|
|
# 66| getExpr().getFullyConverted(): [CStyleCast] (_Imaginary double)...
|
|
# 66| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 66| Type = [ArithmeticType] _Imaginary double
|
|
# 66| ValueCategory = prvalue
|
|
# 67| getStmt(8): [DeclStmt] declaration
|
|
# 67| getDeclarationEntry(0): [VariableDeclarationEntry] definition of jld
|
|
# 67| Type = [ArithmeticType] _Imaginary long double
|
|
# 67| getVariable().getInitializer(): [Initializer] initializer for jld
|
|
# 67| getExpr(): [Literal] 1.0i
|
|
# 67| Type = [ArithmeticType] _Imaginary float
|
|
# 67| Value = [Literal] 1.0i
|
|
# 67| ValueCategory = prvalue
|
|
# 67| getExpr().getFullyConverted(): [CStyleCast] (_Imaginary long double)...
|
|
# 67| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 67| Type = [ArithmeticType] _Imaginary long double
|
|
# 67| ValueCategory = prvalue
|
|
# 70| getStmt(9): [ExprStmt] ExprStmt
|
|
# 70| getExpr(): [AssignExpr] ... = ...
|
|
# 70| Type = [ArithmeticType] _Complex float
|
|
# 70| ValueCategory = prvalue
|
|
# 70| getLValue(): [VariableAccess] cf
|
|
# 70| Type = [ArithmeticType] _Complex float
|
|
# 70| ValueCategory = lvalue
|
|
# 70| getRValue(): [VariableAccess] cf
|
|
# 70| Type = [ArithmeticType] _Complex float
|
|
# 70| ValueCategory = prvalue(load)
|
|
# 71| getStmt(10): [ExprStmt] ExprStmt
|
|
# 71| getExpr(): [AssignExpr] ... = ...
|
|
# 71| Type = [ArithmeticType] _Complex float
|
|
# 71| ValueCategory = prvalue
|
|
# 71| getLValue(): [VariableAccess] cf
|
|
# 71| Type = [ArithmeticType] _Complex float
|
|
# 71| ValueCategory = lvalue
|
|
# 71| getRValue(): [VariableAccess] cd
|
|
# 71| Type = [ArithmeticType] _Complex double
|
|
# 71| ValueCategory = prvalue(load)
|
|
# 71| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 71| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 71| Type = [ArithmeticType] _Complex float
|
|
# 71| ValueCategory = prvalue
|
|
# 72| getStmt(11): [ExprStmt] ExprStmt
|
|
# 72| getExpr(): [AssignExpr] ... = ...
|
|
# 72| Type = [ArithmeticType] _Complex float
|
|
# 72| ValueCategory = prvalue
|
|
# 72| getLValue(): [VariableAccess] cf
|
|
# 72| Type = [ArithmeticType] _Complex float
|
|
# 72| ValueCategory = lvalue
|
|
# 72| getRValue(): [VariableAccess] cld
|
|
# 72| Type = [ArithmeticType] _Complex long double
|
|
# 72| ValueCategory = prvalue(load)
|
|
# 72| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 72| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 72| Type = [ArithmeticType] _Complex float
|
|
# 72| ValueCategory = prvalue
|
|
# 73| getStmt(12): [ExprStmt] ExprStmt
|
|
# 73| getExpr(): [AssignExpr] ... = ...
|
|
# 73| Type = [ArithmeticType] _Complex double
|
|
# 73| ValueCategory = prvalue
|
|
# 73| getLValue(): [VariableAccess] cd
|
|
# 73| Type = [ArithmeticType] _Complex double
|
|
# 73| ValueCategory = lvalue
|
|
# 73| getRValue(): [VariableAccess] cf
|
|
# 73| Type = [ArithmeticType] _Complex float
|
|
# 73| ValueCategory = prvalue(load)
|
|
# 73| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 73| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 73| Type = [ArithmeticType] _Complex double
|
|
# 73| ValueCategory = prvalue
|
|
# 74| getStmt(13): [ExprStmt] ExprStmt
|
|
# 74| getExpr(): [AssignExpr] ... = ...
|
|
# 74| Type = [ArithmeticType] _Complex double
|
|
# 74| ValueCategory = prvalue
|
|
# 74| getLValue(): [VariableAccess] cd
|
|
# 74| Type = [ArithmeticType] _Complex double
|
|
# 74| ValueCategory = lvalue
|
|
# 74| getRValue(): [VariableAccess] cd
|
|
# 74| Type = [ArithmeticType] _Complex double
|
|
# 74| ValueCategory = prvalue(load)
|
|
# 75| getStmt(14): [ExprStmt] ExprStmt
|
|
# 75| getExpr(): [AssignExpr] ... = ...
|
|
# 75| Type = [ArithmeticType] _Complex double
|
|
# 75| ValueCategory = prvalue
|
|
# 75| getLValue(): [VariableAccess] cd
|
|
# 75| Type = [ArithmeticType] _Complex double
|
|
# 75| ValueCategory = lvalue
|
|
# 75| getRValue(): [VariableAccess] cld
|
|
# 75| Type = [ArithmeticType] _Complex long double
|
|
# 75| ValueCategory = prvalue(load)
|
|
# 75| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 75| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 75| Type = [ArithmeticType] _Complex double
|
|
# 75| ValueCategory = prvalue
|
|
# 76| getStmt(15): [ExprStmt] ExprStmt
|
|
# 76| getExpr(): [AssignExpr] ... = ...
|
|
# 76| Type = [ArithmeticType] _Complex long double
|
|
# 76| ValueCategory = prvalue
|
|
# 76| getLValue(): [VariableAccess] cld
|
|
# 76| Type = [ArithmeticType] _Complex long double
|
|
# 76| ValueCategory = lvalue
|
|
# 76| getRValue(): [VariableAccess] cf
|
|
# 76| Type = [ArithmeticType] _Complex float
|
|
# 76| ValueCategory = prvalue(load)
|
|
# 76| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 76| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 76| Type = [ArithmeticType] _Complex long double
|
|
# 76| ValueCategory = prvalue
|
|
# 77| getStmt(16): [ExprStmt] ExprStmt
|
|
# 77| getExpr(): [AssignExpr] ... = ...
|
|
# 77| Type = [ArithmeticType] _Complex long double
|
|
# 77| ValueCategory = prvalue
|
|
# 77| getLValue(): [VariableAccess] cld
|
|
# 77| Type = [ArithmeticType] _Complex long double
|
|
# 77| ValueCategory = lvalue
|
|
# 77| getRValue(): [VariableAccess] cd
|
|
# 77| Type = [ArithmeticType] _Complex double
|
|
# 77| ValueCategory = prvalue(load)
|
|
# 77| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 77| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 77| Type = [ArithmeticType] _Complex long double
|
|
# 77| ValueCategory = prvalue
|
|
# 78| getStmt(17): [ExprStmt] ExprStmt
|
|
# 78| getExpr(): [AssignExpr] ... = ...
|
|
# 78| Type = [ArithmeticType] _Complex long double
|
|
# 78| ValueCategory = prvalue
|
|
# 78| getLValue(): [VariableAccess] cld
|
|
# 78| Type = [ArithmeticType] _Complex long double
|
|
# 78| ValueCategory = lvalue
|
|
# 78| getRValue(): [VariableAccess] cld
|
|
# 78| Type = [ArithmeticType] _Complex long double
|
|
# 78| ValueCategory = prvalue(load)
|
|
# 81| getStmt(18): [ExprStmt] ExprStmt
|
|
# 81| getExpr(): [AssignExpr] ... = ...
|
|
# 81| Type = [ArithmeticType] _Complex float
|
|
# 81| ValueCategory = prvalue
|
|
# 81| getLValue(): [VariableAccess] cf
|
|
# 81| Type = [ArithmeticType] _Complex float
|
|
# 81| ValueCategory = lvalue
|
|
# 81| getRValue(): [VariableAccess] f
|
|
# 81| Type = [FloatType] float
|
|
# 81| ValueCategory = prvalue(load)
|
|
# 81| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 81| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 81| Type = [ArithmeticType] _Complex float
|
|
# 81| ValueCategory = prvalue
|
|
# 82| getStmt(19): [ExprStmt] ExprStmt
|
|
# 82| getExpr(): [AssignExpr] ... = ...
|
|
# 82| Type = [ArithmeticType] _Complex float
|
|
# 82| ValueCategory = prvalue
|
|
# 82| getLValue(): [VariableAccess] cf
|
|
# 82| Type = [ArithmeticType] _Complex float
|
|
# 82| ValueCategory = lvalue
|
|
# 82| getRValue(): [VariableAccess] d
|
|
# 82| Type = [DoubleType] double
|
|
# 82| ValueCategory = prvalue(load)
|
|
# 82| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 82| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 82| Type = [ArithmeticType] _Complex float
|
|
# 82| ValueCategory = prvalue
|
|
# 83| getStmt(20): [ExprStmt] ExprStmt
|
|
# 83| getExpr(): [AssignExpr] ... = ...
|
|
# 83| Type = [ArithmeticType] _Complex float
|
|
# 83| ValueCategory = prvalue
|
|
# 83| getLValue(): [VariableAccess] cf
|
|
# 83| Type = [ArithmeticType] _Complex float
|
|
# 83| ValueCategory = lvalue
|
|
# 83| getRValue(): [VariableAccess] ld
|
|
# 83| Type = [LongDoubleType] long double
|
|
# 83| ValueCategory = prvalue(load)
|
|
# 83| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 83| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 83| Type = [ArithmeticType] _Complex float
|
|
# 83| ValueCategory = prvalue
|
|
# 84| getStmt(21): [ExprStmt] ExprStmt
|
|
# 84| getExpr(): [AssignExpr] ... = ...
|
|
# 84| Type = [ArithmeticType] _Complex double
|
|
# 84| ValueCategory = prvalue
|
|
# 84| getLValue(): [VariableAccess] cd
|
|
# 84| Type = [ArithmeticType] _Complex double
|
|
# 84| ValueCategory = lvalue
|
|
# 84| getRValue(): [VariableAccess] f
|
|
# 84| Type = [FloatType] float
|
|
# 84| ValueCategory = prvalue(load)
|
|
# 84| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 84| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 84| Type = [ArithmeticType] _Complex double
|
|
# 84| ValueCategory = prvalue
|
|
# 85| getStmt(22): [ExprStmt] ExprStmt
|
|
# 85| getExpr(): [AssignExpr] ... = ...
|
|
# 85| Type = [ArithmeticType] _Complex double
|
|
# 85| ValueCategory = prvalue
|
|
# 85| getLValue(): [VariableAccess] cd
|
|
# 85| Type = [ArithmeticType] _Complex double
|
|
# 85| ValueCategory = lvalue
|
|
# 85| getRValue(): [VariableAccess] d
|
|
# 85| Type = [DoubleType] double
|
|
# 85| ValueCategory = prvalue(load)
|
|
# 85| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 85| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 85| Type = [ArithmeticType] _Complex double
|
|
# 85| ValueCategory = prvalue
|
|
# 86| getStmt(23): [ExprStmt] ExprStmt
|
|
# 86| getExpr(): [AssignExpr] ... = ...
|
|
# 86| Type = [ArithmeticType] _Complex double
|
|
# 86| ValueCategory = prvalue
|
|
# 86| getLValue(): [VariableAccess] cd
|
|
# 86| Type = [ArithmeticType] _Complex double
|
|
# 86| ValueCategory = lvalue
|
|
# 86| getRValue(): [VariableAccess] ld
|
|
# 86| Type = [LongDoubleType] long double
|
|
# 86| ValueCategory = prvalue(load)
|
|
# 86| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 86| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 86| Type = [ArithmeticType] _Complex double
|
|
# 86| ValueCategory = prvalue
|
|
# 87| getStmt(24): [ExprStmt] ExprStmt
|
|
# 87| getExpr(): [AssignExpr] ... = ...
|
|
# 87| Type = [ArithmeticType] _Complex long double
|
|
# 87| ValueCategory = prvalue
|
|
# 87| getLValue(): [VariableAccess] cld
|
|
# 87| Type = [ArithmeticType] _Complex long double
|
|
# 87| ValueCategory = lvalue
|
|
# 87| getRValue(): [VariableAccess] f
|
|
# 87| Type = [FloatType] float
|
|
# 87| ValueCategory = prvalue(load)
|
|
# 87| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 87| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 87| Type = [ArithmeticType] _Complex long double
|
|
# 87| ValueCategory = prvalue
|
|
# 88| getStmt(25): [ExprStmt] ExprStmt
|
|
# 88| getExpr(): [AssignExpr] ... = ...
|
|
# 88| Type = [ArithmeticType] _Complex long double
|
|
# 88| ValueCategory = prvalue
|
|
# 88| getLValue(): [VariableAccess] cld
|
|
# 88| Type = [ArithmeticType] _Complex long double
|
|
# 88| ValueCategory = lvalue
|
|
# 88| getRValue(): [VariableAccess] d
|
|
# 88| Type = [DoubleType] double
|
|
# 88| ValueCategory = prvalue(load)
|
|
# 88| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 88| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 88| Type = [ArithmeticType] _Complex long double
|
|
# 88| ValueCategory = prvalue
|
|
# 89| getStmt(26): [ExprStmt] ExprStmt
|
|
# 89| getExpr(): [AssignExpr] ... = ...
|
|
# 89| Type = [ArithmeticType] _Complex long double
|
|
# 89| ValueCategory = prvalue
|
|
# 89| getLValue(): [VariableAccess] cld
|
|
# 89| Type = [ArithmeticType] _Complex long double
|
|
# 89| ValueCategory = lvalue
|
|
# 89| getRValue(): [VariableAccess] ld
|
|
# 89| Type = [LongDoubleType] long double
|
|
# 89| ValueCategory = prvalue(load)
|
|
# 89| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 89| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 89| Type = [ArithmeticType] _Complex long double
|
|
# 89| ValueCategory = prvalue
|
|
# 92| getStmt(27): [ExprStmt] ExprStmt
|
|
# 92| getExpr(): [AssignExpr] ... = ...
|
|
# 92| Type = [FloatType] float
|
|
# 92| ValueCategory = prvalue
|
|
# 92| getLValue(): [VariableAccess] f
|
|
# 92| Type = [FloatType] float
|
|
# 92| ValueCategory = lvalue
|
|
# 92| getRValue(): [VariableAccess] cf
|
|
# 92| Type = [ArithmeticType] _Complex float
|
|
# 92| ValueCategory = prvalue(load)
|
|
# 92| getRValue().getFullyConverted(): [CStyleCast] (float)...
|
|
# 92| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 92| Type = [FloatType] float
|
|
# 92| ValueCategory = prvalue
|
|
# 93| getStmt(28): [ExprStmt] ExprStmt
|
|
# 93| getExpr(): [AssignExpr] ... = ...
|
|
# 93| Type = [FloatType] float
|
|
# 93| ValueCategory = prvalue
|
|
# 93| getLValue(): [VariableAccess] f
|
|
# 93| Type = [FloatType] float
|
|
# 93| ValueCategory = lvalue
|
|
# 93| getRValue(): [VariableAccess] cd
|
|
# 93| Type = [ArithmeticType] _Complex double
|
|
# 93| ValueCategory = prvalue(load)
|
|
# 93| getRValue().getFullyConverted(): [CStyleCast] (float)...
|
|
# 93| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 93| Type = [FloatType] float
|
|
# 93| ValueCategory = prvalue
|
|
# 94| getStmt(29): [ExprStmt] ExprStmt
|
|
# 94| getExpr(): [AssignExpr] ... = ...
|
|
# 94| Type = [FloatType] float
|
|
# 94| ValueCategory = prvalue
|
|
# 94| getLValue(): [VariableAccess] f
|
|
# 94| Type = [FloatType] float
|
|
# 94| ValueCategory = lvalue
|
|
# 94| getRValue(): [VariableAccess] cld
|
|
# 94| Type = [ArithmeticType] _Complex long double
|
|
# 94| ValueCategory = prvalue(load)
|
|
# 94| getRValue().getFullyConverted(): [CStyleCast] (float)...
|
|
# 94| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 94| Type = [FloatType] float
|
|
# 94| ValueCategory = prvalue
|
|
# 95| getStmt(30): [ExprStmt] ExprStmt
|
|
# 95| getExpr(): [AssignExpr] ... = ...
|
|
# 95| Type = [DoubleType] double
|
|
# 95| ValueCategory = prvalue
|
|
# 95| getLValue(): [VariableAccess] d
|
|
# 95| Type = [DoubleType] double
|
|
# 95| ValueCategory = lvalue
|
|
# 95| getRValue(): [VariableAccess] cf
|
|
# 95| Type = [ArithmeticType] _Complex float
|
|
# 95| ValueCategory = prvalue(load)
|
|
# 95| getRValue().getFullyConverted(): [CStyleCast] (double)...
|
|
# 95| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 95| Type = [DoubleType] double
|
|
# 95| ValueCategory = prvalue
|
|
# 96| getStmt(31): [ExprStmt] ExprStmt
|
|
# 96| getExpr(): [AssignExpr] ... = ...
|
|
# 96| Type = [DoubleType] double
|
|
# 96| ValueCategory = prvalue
|
|
# 96| getLValue(): [VariableAccess] d
|
|
# 96| Type = [DoubleType] double
|
|
# 96| ValueCategory = lvalue
|
|
# 96| getRValue(): [VariableAccess] cd
|
|
# 96| Type = [ArithmeticType] _Complex double
|
|
# 96| ValueCategory = prvalue(load)
|
|
# 96| getRValue().getFullyConverted(): [CStyleCast] (double)...
|
|
# 96| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 96| Type = [DoubleType] double
|
|
# 96| ValueCategory = prvalue
|
|
# 97| getStmt(32): [ExprStmt] ExprStmt
|
|
# 97| getExpr(): [AssignExpr] ... = ...
|
|
# 97| Type = [DoubleType] double
|
|
# 97| ValueCategory = prvalue
|
|
# 97| getLValue(): [VariableAccess] d
|
|
# 97| Type = [DoubleType] double
|
|
# 97| ValueCategory = lvalue
|
|
# 97| getRValue(): [VariableAccess] cld
|
|
# 97| Type = [ArithmeticType] _Complex long double
|
|
# 97| ValueCategory = prvalue(load)
|
|
# 97| getRValue().getFullyConverted(): [CStyleCast] (double)...
|
|
# 97| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 97| Type = [DoubleType] double
|
|
# 97| ValueCategory = prvalue
|
|
# 98| getStmt(33): [ExprStmt] ExprStmt
|
|
# 98| getExpr(): [AssignExpr] ... = ...
|
|
# 98| Type = [LongDoubleType] long double
|
|
# 98| ValueCategory = prvalue
|
|
# 98| getLValue(): [VariableAccess] ld
|
|
# 98| Type = [LongDoubleType] long double
|
|
# 98| ValueCategory = lvalue
|
|
# 98| getRValue(): [VariableAccess] cf
|
|
# 98| Type = [ArithmeticType] _Complex float
|
|
# 98| ValueCategory = prvalue(load)
|
|
# 98| getRValue().getFullyConverted(): [CStyleCast] (long double)...
|
|
# 98| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 98| Type = [LongDoubleType] long double
|
|
# 98| ValueCategory = prvalue
|
|
# 99| getStmt(34): [ExprStmt] ExprStmt
|
|
# 99| getExpr(): [AssignExpr] ... = ...
|
|
# 99| Type = [LongDoubleType] long double
|
|
# 99| ValueCategory = prvalue
|
|
# 99| getLValue(): [VariableAccess] ld
|
|
# 99| Type = [LongDoubleType] long double
|
|
# 99| ValueCategory = lvalue
|
|
# 99| getRValue(): [VariableAccess] cd
|
|
# 99| Type = [ArithmeticType] _Complex double
|
|
# 99| ValueCategory = prvalue(load)
|
|
# 99| getRValue().getFullyConverted(): [CStyleCast] (long double)...
|
|
# 99| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 99| Type = [LongDoubleType] long double
|
|
# 99| ValueCategory = prvalue
|
|
# 100| getStmt(35): [ExprStmt] ExprStmt
|
|
# 100| getExpr(): [AssignExpr] ... = ...
|
|
# 100| Type = [LongDoubleType] long double
|
|
# 100| ValueCategory = prvalue
|
|
# 100| getLValue(): [VariableAccess] ld
|
|
# 100| Type = [LongDoubleType] long double
|
|
# 100| ValueCategory = lvalue
|
|
# 100| getRValue(): [VariableAccess] cld
|
|
# 100| Type = [ArithmeticType] _Complex long double
|
|
# 100| ValueCategory = prvalue(load)
|
|
# 100| getRValue().getFullyConverted(): [CStyleCast] (long double)...
|
|
# 100| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 100| Type = [LongDoubleType] long double
|
|
# 100| ValueCategory = prvalue
|
|
# 103| getStmt(36): [ExprStmt] ExprStmt
|
|
# 103| getExpr(): [AssignExpr] ... = ...
|
|
# 103| Type = [ArithmeticType] _Complex float
|
|
# 103| ValueCategory = prvalue
|
|
# 103| getLValue(): [VariableAccess] cf
|
|
# 103| Type = [ArithmeticType] _Complex float
|
|
# 103| ValueCategory = lvalue
|
|
# 103| getRValue(): [VariableAccess] jf
|
|
# 103| Type = [ArithmeticType] _Imaginary float
|
|
# 103| ValueCategory = prvalue(load)
|
|
# 103| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 103| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 103| Type = [ArithmeticType] _Complex float
|
|
# 103| ValueCategory = prvalue
|
|
# 104| getStmt(37): [ExprStmt] ExprStmt
|
|
# 104| getExpr(): [AssignExpr] ... = ...
|
|
# 104| Type = [ArithmeticType] _Complex float
|
|
# 104| ValueCategory = prvalue
|
|
# 104| getLValue(): [VariableAccess] cf
|
|
# 104| Type = [ArithmeticType] _Complex float
|
|
# 104| ValueCategory = lvalue
|
|
# 104| getRValue(): [VariableAccess] jd
|
|
# 104| Type = [ArithmeticType] _Imaginary double
|
|
# 104| ValueCategory = prvalue(load)
|
|
# 104| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 104| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 104| Type = [ArithmeticType] _Complex float
|
|
# 104| ValueCategory = prvalue
|
|
# 105| getStmt(38): [ExprStmt] ExprStmt
|
|
# 105| getExpr(): [AssignExpr] ... = ...
|
|
# 105| Type = [ArithmeticType] _Complex float
|
|
# 105| ValueCategory = prvalue
|
|
# 105| getLValue(): [VariableAccess] cf
|
|
# 105| Type = [ArithmeticType] _Complex float
|
|
# 105| ValueCategory = lvalue
|
|
# 105| getRValue(): [VariableAccess] jld
|
|
# 105| Type = [ArithmeticType] _Imaginary long double
|
|
# 105| ValueCategory = prvalue(load)
|
|
# 105| getRValue().getFullyConverted(): [CStyleCast] (_Complex float)...
|
|
# 105| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 105| Type = [ArithmeticType] _Complex float
|
|
# 105| ValueCategory = prvalue
|
|
# 106| getStmt(39): [ExprStmt] ExprStmt
|
|
# 106| getExpr(): [AssignExpr] ... = ...
|
|
# 106| Type = [ArithmeticType] _Complex double
|
|
# 106| ValueCategory = prvalue
|
|
# 106| getLValue(): [VariableAccess] cd
|
|
# 106| Type = [ArithmeticType] _Complex double
|
|
# 106| ValueCategory = lvalue
|
|
# 106| getRValue(): [VariableAccess] jf
|
|
# 106| Type = [ArithmeticType] _Imaginary float
|
|
# 106| ValueCategory = prvalue(load)
|
|
# 106| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 106| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 106| Type = [ArithmeticType] _Complex double
|
|
# 106| ValueCategory = prvalue
|
|
# 107| getStmt(40): [ExprStmt] ExprStmt
|
|
# 107| getExpr(): [AssignExpr] ... = ...
|
|
# 107| Type = [ArithmeticType] _Complex double
|
|
# 107| ValueCategory = prvalue
|
|
# 107| getLValue(): [VariableAccess] cd
|
|
# 107| Type = [ArithmeticType] _Complex double
|
|
# 107| ValueCategory = lvalue
|
|
# 107| getRValue(): [VariableAccess] jd
|
|
# 107| Type = [ArithmeticType] _Imaginary double
|
|
# 107| ValueCategory = prvalue(load)
|
|
# 107| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 107| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 107| Type = [ArithmeticType] _Complex double
|
|
# 107| ValueCategory = prvalue
|
|
# 108| getStmt(41): [ExprStmt] ExprStmt
|
|
# 108| getExpr(): [AssignExpr] ... = ...
|
|
# 108| Type = [ArithmeticType] _Complex double
|
|
# 108| ValueCategory = prvalue
|
|
# 108| getLValue(): [VariableAccess] cd
|
|
# 108| Type = [ArithmeticType] _Complex double
|
|
# 108| ValueCategory = lvalue
|
|
# 108| getRValue(): [VariableAccess] jld
|
|
# 108| Type = [ArithmeticType] _Imaginary long double
|
|
# 108| ValueCategory = prvalue(load)
|
|
# 108| getRValue().getFullyConverted(): [CStyleCast] (_Complex double)...
|
|
# 108| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 108| Type = [ArithmeticType] _Complex double
|
|
# 108| ValueCategory = prvalue
|
|
# 109| getStmt(42): [ExprStmt] ExprStmt
|
|
# 109| getExpr(): [AssignExpr] ... = ...
|
|
# 109| Type = [ArithmeticType] _Complex long double
|
|
# 109| ValueCategory = prvalue
|
|
# 109| getLValue(): [VariableAccess] cld
|
|
# 109| Type = [ArithmeticType] _Complex long double
|
|
# 109| ValueCategory = lvalue
|
|
# 109| getRValue(): [VariableAccess] jf
|
|
# 109| Type = [ArithmeticType] _Imaginary float
|
|
# 109| ValueCategory = prvalue(load)
|
|
# 109| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 109| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 109| Type = [ArithmeticType] _Complex long double
|
|
# 109| ValueCategory = prvalue
|
|
# 110| getStmt(43): [ExprStmt] ExprStmt
|
|
# 110| getExpr(): [AssignExpr] ... = ...
|
|
# 110| Type = [ArithmeticType] _Complex long double
|
|
# 110| ValueCategory = prvalue
|
|
# 110| getLValue(): [VariableAccess] cld
|
|
# 110| Type = [ArithmeticType] _Complex long double
|
|
# 110| ValueCategory = lvalue
|
|
# 110| getRValue(): [VariableAccess] jd
|
|
# 110| Type = [ArithmeticType] _Imaginary double
|
|
# 110| ValueCategory = prvalue(load)
|
|
# 110| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 110| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 110| Type = [ArithmeticType] _Complex long double
|
|
# 110| ValueCategory = prvalue
|
|
# 111| getStmt(44): [ExprStmt] ExprStmt
|
|
# 111| getExpr(): [AssignExpr] ... = ...
|
|
# 111| Type = [ArithmeticType] _Complex long double
|
|
# 111| ValueCategory = prvalue
|
|
# 111| getLValue(): [VariableAccess] cld
|
|
# 111| Type = [ArithmeticType] _Complex long double
|
|
# 111| ValueCategory = lvalue
|
|
# 111| getRValue(): [VariableAccess] jld
|
|
# 111| Type = [ArithmeticType] _Imaginary long double
|
|
# 111| ValueCategory = prvalue(load)
|
|
# 111| getRValue().getFullyConverted(): [CStyleCast] (_Complex long double)...
|
|
# 111| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 111| Type = [ArithmeticType] _Complex long double
|
|
# 111| ValueCategory = prvalue
|
|
# 114| getStmt(45): [ExprStmt] ExprStmt
|
|
# 114| getExpr(): [AssignExpr] ... = ...
|
|
# 114| Type = [ArithmeticType] _Imaginary float
|
|
# 114| ValueCategory = prvalue
|
|
# 114| getLValue(): [VariableAccess] jf
|
|
# 114| Type = [ArithmeticType] _Imaginary float
|
|
# 114| ValueCategory = lvalue
|
|
# 114| getRValue(): [VariableAccess] cf
|
|
# 114| Type = [ArithmeticType] _Complex float
|
|
# 114| ValueCategory = prvalue(load)
|
|
# 114| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary float)...
|
|
# 114| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 114| Type = [ArithmeticType] _Imaginary float
|
|
# 114| ValueCategory = prvalue
|
|
# 115| getStmt(46): [ExprStmt] ExprStmt
|
|
# 115| getExpr(): [AssignExpr] ... = ...
|
|
# 115| Type = [ArithmeticType] _Imaginary float
|
|
# 115| ValueCategory = prvalue
|
|
# 115| getLValue(): [VariableAccess] jf
|
|
# 115| Type = [ArithmeticType] _Imaginary float
|
|
# 115| ValueCategory = lvalue
|
|
# 115| getRValue(): [VariableAccess] cd
|
|
# 115| Type = [ArithmeticType] _Complex double
|
|
# 115| ValueCategory = prvalue(load)
|
|
# 115| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary float)...
|
|
# 115| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 115| Type = [ArithmeticType] _Imaginary float
|
|
# 115| ValueCategory = prvalue
|
|
# 116| getStmt(47): [ExprStmt] ExprStmt
|
|
# 116| getExpr(): [AssignExpr] ... = ...
|
|
# 116| Type = [ArithmeticType] _Imaginary float
|
|
# 116| ValueCategory = prvalue
|
|
# 116| getLValue(): [VariableAccess] jf
|
|
# 116| Type = [ArithmeticType] _Imaginary float
|
|
# 116| ValueCategory = lvalue
|
|
# 116| getRValue(): [VariableAccess] cld
|
|
# 116| Type = [ArithmeticType] _Complex long double
|
|
# 116| ValueCategory = prvalue(load)
|
|
# 116| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary float)...
|
|
# 116| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 116| Type = [ArithmeticType] _Imaginary float
|
|
# 116| ValueCategory = prvalue
|
|
# 117| getStmt(48): [ExprStmt] ExprStmt
|
|
# 117| getExpr(): [AssignExpr] ... = ...
|
|
# 117| Type = [ArithmeticType] _Imaginary double
|
|
# 117| ValueCategory = prvalue
|
|
# 117| getLValue(): [VariableAccess] jd
|
|
# 117| Type = [ArithmeticType] _Imaginary double
|
|
# 117| ValueCategory = lvalue
|
|
# 117| getRValue(): [VariableAccess] cf
|
|
# 117| Type = [ArithmeticType] _Complex float
|
|
# 117| ValueCategory = prvalue(load)
|
|
# 117| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary double)...
|
|
# 117| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 117| Type = [ArithmeticType] _Imaginary double
|
|
# 117| ValueCategory = prvalue
|
|
# 118| getStmt(49): [ExprStmt] ExprStmt
|
|
# 118| getExpr(): [AssignExpr] ... = ...
|
|
# 118| Type = [ArithmeticType] _Imaginary double
|
|
# 118| ValueCategory = prvalue
|
|
# 118| getLValue(): [VariableAccess] jd
|
|
# 118| Type = [ArithmeticType] _Imaginary double
|
|
# 118| ValueCategory = lvalue
|
|
# 118| getRValue(): [VariableAccess] cd
|
|
# 118| Type = [ArithmeticType] _Complex double
|
|
# 118| ValueCategory = prvalue(load)
|
|
# 118| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary double)...
|
|
# 118| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 118| Type = [ArithmeticType] _Imaginary double
|
|
# 118| ValueCategory = prvalue
|
|
# 119| getStmt(50): [ExprStmt] ExprStmt
|
|
# 119| getExpr(): [AssignExpr] ... = ...
|
|
# 119| Type = [ArithmeticType] _Imaginary double
|
|
# 119| ValueCategory = prvalue
|
|
# 119| getLValue(): [VariableAccess] jd
|
|
# 119| Type = [ArithmeticType] _Imaginary double
|
|
# 119| ValueCategory = lvalue
|
|
# 119| getRValue(): [VariableAccess] cld
|
|
# 119| Type = [ArithmeticType] _Complex long double
|
|
# 119| ValueCategory = prvalue(load)
|
|
# 119| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary double)...
|
|
# 119| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 119| Type = [ArithmeticType] _Imaginary double
|
|
# 119| ValueCategory = prvalue
|
|
# 120| getStmt(51): [ExprStmt] ExprStmt
|
|
# 120| getExpr(): [AssignExpr] ... = ...
|
|
# 120| Type = [ArithmeticType] _Imaginary long double
|
|
# 120| ValueCategory = prvalue
|
|
# 120| getLValue(): [VariableAccess] jld
|
|
# 120| Type = [ArithmeticType] _Imaginary long double
|
|
# 120| ValueCategory = lvalue
|
|
# 120| getRValue(): [VariableAccess] cf
|
|
# 120| Type = [ArithmeticType] _Complex float
|
|
# 120| ValueCategory = prvalue(load)
|
|
# 120| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary long double)...
|
|
# 120| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 120| Type = [ArithmeticType] _Imaginary long double
|
|
# 120| ValueCategory = prvalue
|
|
# 121| getStmt(52): [ExprStmt] ExprStmt
|
|
# 121| getExpr(): [AssignExpr] ... = ...
|
|
# 121| Type = [ArithmeticType] _Imaginary long double
|
|
# 121| ValueCategory = prvalue
|
|
# 121| getLValue(): [VariableAccess] jld
|
|
# 121| Type = [ArithmeticType] _Imaginary long double
|
|
# 121| ValueCategory = lvalue
|
|
# 121| getRValue(): [VariableAccess] cd
|
|
# 121| Type = [ArithmeticType] _Complex double
|
|
# 121| ValueCategory = prvalue(load)
|
|
# 121| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary long double)...
|
|
# 121| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 121| Type = [ArithmeticType] _Imaginary long double
|
|
# 121| ValueCategory = prvalue
|
|
# 122| getStmt(53): [ExprStmt] ExprStmt
|
|
# 122| getExpr(): [AssignExpr] ... = ...
|
|
# 122| Type = [ArithmeticType] _Imaginary long double
|
|
# 122| ValueCategory = prvalue
|
|
# 122| getLValue(): [VariableAccess] jld
|
|
# 122| Type = [ArithmeticType] _Imaginary long double
|
|
# 122| ValueCategory = lvalue
|
|
# 122| getRValue(): [VariableAccess] cld
|
|
# 122| Type = [ArithmeticType] _Complex long double
|
|
# 122| ValueCategory = prvalue(load)
|
|
# 122| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary long double)...
|
|
# 122| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 122| Type = [ArithmeticType] _Imaginary long double
|
|
# 122| ValueCategory = prvalue
|
|
# 125| getStmt(54): [ExprStmt] ExprStmt
|
|
# 125| getExpr(): [AssignExpr] ... = ...
|
|
# 125| Type = [ArithmeticType] _Imaginary float
|
|
# 125| ValueCategory = prvalue
|
|
# 125| getLValue(): [VariableAccess] jf
|
|
# 125| Type = [ArithmeticType] _Imaginary float
|
|
# 125| ValueCategory = lvalue
|
|
# 125| getRValue(): [VariableAccess] f
|
|
# 125| Type = [FloatType] float
|
|
# 125| ValueCategory = prvalue(load)
|
|
# 125| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary float)...
|
|
# 125| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 125| Type = [ArithmeticType] _Imaginary float
|
|
# 125| ValueCategory = prvalue
|
|
# 126| getStmt(55): [ExprStmt] ExprStmt
|
|
# 126| getExpr(): [AssignExpr] ... = ...
|
|
# 126| Type = [ArithmeticType] _Imaginary float
|
|
# 126| ValueCategory = prvalue
|
|
# 126| getLValue(): [VariableAccess] jf
|
|
# 126| Type = [ArithmeticType] _Imaginary float
|
|
# 126| ValueCategory = lvalue
|
|
# 126| getRValue(): [VariableAccess] d
|
|
# 126| Type = [DoubleType] double
|
|
# 126| ValueCategory = prvalue(load)
|
|
# 126| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary float)...
|
|
# 126| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 126| Type = [ArithmeticType] _Imaginary float
|
|
# 126| ValueCategory = prvalue
|
|
# 127| getStmt(56): [ExprStmt] ExprStmt
|
|
# 127| getExpr(): [AssignExpr] ... = ...
|
|
# 127| Type = [ArithmeticType] _Imaginary float
|
|
# 127| ValueCategory = prvalue
|
|
# 127| getLValue(): [VariableAccess] jf
|
|
# 127| Type = [ArithmeticType] _Imaginary float
|
|
# 127| ValueCategory = lvalue
|
|
# 127| getRValue(): [VariableAccess] ld
|
|
# 127| Type = [LongDoubleType] long double
|
|
# 127| ValueCategory = prvalue(load)
|
|
# 127| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary float)...
|
|
# 127| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 127| Type = [ArithmeticType] _Imaginary float
|
|
# 127| ValueCategory = prvalue
|
|
# 128| getStmt(57): [ExprStmt] ExprStmt
|
|
# 128| getExpr(): [AssignExpr] ... = ...
|
|
# 128| Type = [ArithmeticType] _Imaginary double
|
|
# 128| ValueCategory = prvalue
|
|
# 128| getLValue(): [VariableAccess] jd
|
|
# 128| Type = [ArithmeticType] _Imaginary double
|
|
# 128| ValueCategory = lvalue
|
|
# 128| getRValue(): [VariableAccess] f
|
|
# 128| Type = [FloatType] float
|
|
# 128| ValueCategory = prvalue(load)
|
|
# 128| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary double)...
|
|
# 128| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 128| Type = [ArithmeticType] _Imaginary double
|
|
# 128| ValueCategory = prvalue
|
|
# 129| getStmt(58): [ExprStmt] ExprStmt
|
|
# 129| getExpr(): [AssignExpr] ... = ...
|
|
# 129| Type = [ArithmeticType] _Imaginary double
|
|
# 129| ValueCategory = prvalue
|
|
# 129| getLValue(): [VariableAccess] jd
|
|
# 129| Type = [ArithmeticType] _Imaginary double
|
|
# 129| ValueCategory = lvalue
|
|
# 129| getRValue(): [VariableAccess] d
|
|
# 129| Type = [DoubleType] double
|
|
# 129| ValueCategory = prvalue(load)
|
|
# 129| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary double)...
|
|
# 129| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 129| Type = [ArithmeticType] _Imaginary double
|
|
# 129| ValueCategory = prvalue
|
|
# 130| getStmt(59): [ExprStmt] ExprStmt
|
|
# 130| getExpr(): [AssignExpr] ... = ...
|
|
# 130| Type = [ArithmeticType] _Imaginary double
|
|
# 130| ValueCategory = prvalue
|
|
# 130| getLValue(): [VariableAccess] jd
|
|
# 130| Type = [ArithmeticType] _Imaginary double
|
|
# 130| ValueCategory = lvalue
|
|
# 130| getRValue(): [VariableAccess] ld
|
|
# 130| Type = [LongDoubleType] long double
|
|
# 130| ValueCategory = prvalue(load)
|
|
# 130| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary double)...
|
|
# 130| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 130| Type = [ArithmeticType] _Imaginary double
|
|
# 130| ValueCategory = prvalue
|
|
# 131| getStmt(60): [ExprStmt] ExprStmt
|
|
# 131| getExpr(): [AssignExpr] ... = ...
|
|
# 131| Type = [ArithmeticType] _Imaginary long double
|
|
# 131| ValueCategory = prvalue
|
|
# 131| getLValue(): [VariableAccess] jld
|
|
# 131| Type = [ArithmeticType] _Imaginary long double
|
|
# 131| ValueCategory = lvalue
|
|
# 131| getRValue(): [VariableAccess] f
|
|
# 131| Type = [FloatType] float
|
|
# 131| ValueCategory = prvalue(load)
|
|
# 131| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary long double)...
|
|
# 131| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 131| Type = [ArithmeticType] _Imaginary long double
|
|
# 131| ValueCategory = prvalue
|
|
# 132| getStmt(61): [ExprStmt] ExprStmt
|
|
# 132| getExpr(): [AssignExpr] ... = ...
|
|
# 132| Type = [ArithmeticType] _Imaginary long double
|
|
# 132| ValueCategory = prvalue
|
|
# 132| getLValue(): [VariableAccess] jld
|
|
# 132| Type = [ArithmeticType] _Imaginary long double
|
|
# 132| ValueCategory = lvalue
|
|
# 132| getRValue(): [VariableAccess] d
|
|
# 132| Type = [DoubleType] double
|
|
# 132| ValueCategory = prvalue(load)
|
|
# 132| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary long double)...
|
|
# 132| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 132| Type = [ArithmeticType] _Imaginary long double
|
|
# 132| ValueCategory = prvalue
|
|
# 133| getStmt(62): [ExprStmt] ExprStmt
|
|
# 133| getExpr(): [AssignExpr] ... = ...
|
|
# 133| Type = [ArithmeticType] _Imaginary long double
|
|
# 133| ValueCategory = prvalue
|
|
# 133| getLValue(): [VariableAccess] jld
|
|
# 133| Type = [ArithmeticType] _Imaginary long double
|
|
# 133| ValueCategory = lvalue
|
|
# 133| getRValue(): [VariableAccess] ld
|
|
# 133| Type = [LongDoubleType] long double
|
|
# 133| ValueCategory = prvalue(load)
|
|
# 133| getRValue().getFullyConverted(): [CStyleCast] (_Imaginary long double)...
|
|
# 133| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 133| Type = [ArithmeticType] _Imaginary long double
|
|
# 133| ValueCategory = prvalue
|
|
# 136| getStmt(63): [ExprStmt] ExprStmt
|
|
# 136| getExpr(): [AssignExpr] ... = ...
|
|
# 136| Type = [FloatType] float
|
|
# 136| ValueCategory = prvalue
|
|
# 136| getLValue(): [VariableAccess] f
|
|
# 136| Type = [FloatType] float
|
|
# 136| ValueCategory = lvalue
|
|
# 136| getRValue(): [VariableAccess] jf
|
|
# 136| Type = [ArithmeticType] _Imaginary float
|
|
# 136| ValueCategory = prvalue(load)
|
|
# 136| getRValue().getFullyConverted(): [CStyleCast] (float)...
|
|
# 136| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 136| Type = [FloatType] float
|
|
# 136| ValueCategory = prvalue
|
|
# 137| getStmt(64): [ExprStmt] ExprStmt
|
|
# 137| getExpr(): [AssignExpr] ... = ...
|
|
# 137| Type = [FloatType] float
|
|
# 137| ValueCategory = prvalue
|
|
# 137| getLValue(): [VariableAccess] f
|
|
# 137| Type = [FloatType] float
|
|
# 137| ValueCategory = lvalue
|
|
# 137| getRValue(): [VariableAccess] jd
|
|
# 137| Type = [ArithmeticType] _Imaginary double
|
|
# 137| ValueCategory = prvalue(load)
|
|
# 137| getRValue().getFullyConverted(): [CStyleCast] (float)...
|
|
# 137| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 137| Type = [FloatType] float
|
|
# 137| ValueCategory = prvalue
|
|
# 138| getStmt(65): [ExprStmt] ExprStmt
|
|
# 138| getExpr(): [AssignExpr] ... = ...
|
|
# 138| Type = [FloatType] float
|
|
# 138| ValueCategory = prvalue
|
|
# 138| getLValue(): [VariableAccess] f
|
|
# 138| Type = [FloatType] float
|
|
# 138| ValueCategory = lvalue
|
|
# 138| getRValue(): [VariableAccess] jld
|
|
# 138| Type = [ArithmeticType] _Imaginary long double
|
|
# 138| ValueCategory = prvalue(load)
|
|
# 138| getRValue().getFullyConverted(): [CStyleCast] (float)...
|
|
# 138| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 138| Type = [FloatType] float
|
|
# 138| ValueCategory = prvalue
|
|
# 139| getStmt(66): [ExprStmt] ExprStmt
|
|
# 139| getExpr(): [AssignExpr] ... = ...
|
|
# 139| Type = [DoubleType] double
|
|
# 139| ValueCategory = prvalue
|
|
# 139| getLValue(): [VariableAccess] d
|
|
# 139| Type = [DoubleType] double
|
|
# 139| ValueCategory = lvalue
|
|
# 139| getRValue(): [VariableAccess] jf
|
|
# 139| Type = [ArithmeticType] _Imaginary float
|
|
# 139| ValueCategory = prvalue(load)
|
|
# 139| getRValue().getFullyConverted(): [CStyleCast] (double)...
|
|
# 139| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 139| Type = [DoubleType] double
|
|
# 139| ValueCategory = prvalue
|
|
# 140| getStmt(67): [ExprStmt] ExprStmt
|
|
# 140| getExpr(): [AssignExpr] ... = ...
|
|
# 140| Type = [DoubleType] double
|
|
# 140| ValueCategory = prvalue
|
|
# 140| getLValue(): [VariableAccess] d
|
|
# 140| Type = [DoubleType] double
|
|
# 140| ValueCategory = lvalue
|
|
# 140| getRValue(): [VariableAccess] jd
|
|
# 140| Type = [ArithmeticType] _Imaginary double
|
|
# 140| ValueCategory = prvalue(load)
|
|
# 140| getRValue().getFullyConverted(): [CStyleCast] (double)...
|
|
# 140| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 140| Type = [DoubleType] double
|
|
# 140| ValueCategory = prvalue
|
|
# 141| getStmt(68): [ExprStmt] ExprStmt
|
|
# 141| getExpr(): [AssignExpr] ... = ...
|
|
# 141| Type = [DoubleType] double
|
|
# 141| ValueCategory = prvalue
|
|
# 141| getLValue(): [VariableAccess] d
|
|
# 141| Type = [DoubleType] double
|
|
# 141| ValueCategory = lvalue
|
|
# 141| getRValue(): [VariableAccess] jld
|
|
# 141| Type = [ArithmeticType] _Imaginary long double
|
|
# 141| ValueCategory = prvalue(load)
|
|
# 141| getRValue().getFullyConverted(): [CStyleCast] (double)...
|
|
# 141| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 141| Type = [DoubleType] double
|
|
# 141| ValueCategory = prvalue
|
|
# 142| getStmt(69): [ExprStmt] ExprStmt
|
|
# 142| getExpr(): [AssignExpr] ... = ...
|
|
# 142| Type = [LongDoubleType] long double
|
|
# 142| ValueCategory = prvalue
|
|
# 142| getLValue(): [VariableAccess] ld
|
|
# 142| Type = [LongDoubleType] long double
|
|
# 142| ValueCategory = lvalue
|
|
# 142| getRValue(): [VariableAccess] jf
|
|
# 142| Type = [ArithmeticType] _Imaginary float
|
|
# 142| ValueCategory = prvalue(load)
|
|
# 142| getRValue().getFullyConverted(): [CStyleCast] (long double)...
|
|
# 142| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 142| Type = [LongDoubleType] long double
|
|
# 142| ValueCategory = prvalue
|
|
# 143| getStmt(70): [ExprStmt] ExprStmt
|
|
# 143| getExpr(): [AssignExpr] ... = ...
|
|
# 143| Type = [LongDoubleType] long double
|
|
# 143| ValueCategory = prvalue
|
|
# 143| getLValue(): [VariableAccess] ld
|
|
# 143| Type = [LongDoubleType] long double
|
|
# 143| ValueCategory = lvalue
|
|
# 143| getRValue(): [VariableAccess] jd
|
|
# 143| Type = [ArithmeticType] _Imaginary double
|
|
# 143| ValueCategory = prvalue(load)
|
|
# 143| getRValue().getFullyConverted(): [CStyleCast] (long double)...
|
|
# 143| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 143| Type = [LongDoubleType] long double
|
|
# 143| ValueCategory = prvalue
|
|
# 144| getStmt(71): [ExprStmt] ExprStmt
|
|
# 144| getExpr(): [AssignExpr] ... = ...
|
|
# 144| Type = [LongDoubleType] long double
|
|
# 144| ValueCategory = prvalue
|
|
# 144| getLValue(): [VariableAccess] ld
|
|
# 144| Type = [LongDoubleType] long double
|
|
# 144| ValueCategory = lvalue
|
|
# 144| getRValue(): [VariableAccess] jld
|
|
# 144| Type = [ArithmeticType] _Imaginary long double
|
|
# 144| ValueCategory = prvalue(load)
|
|
# 144| getRValue().getFullyConverted(): [CStyleCast] (long double)...
|
|
# 144| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 144| Type = [LongDoubleType] long double
|
|
# 144| ValueCategory = prvalue
|
|
# 145| getStmt(72): [ReturnStmt] return ...
|
|
destructors_for_temps.cpp:
|
|
# 1| [CopyAssignmentOperator] ClassWithDestructor2& ClassWithDestructor2::operator=(ClassWithDestructor2 const&)
|
|
# 1| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const ClassWithDestructor2 &
|
|
# 1| [CopyConstructor] void ClassWithDestructor2::ClassWithDestructor2(ClassWithDestructor2 const&)
|
|
# 1| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const ClassWithDestructor2 &
|
|
# 3| [Constructor] void ClassWithDestructor2::ClassWithDestructor2()
|
|
# 3| <params>:
|
|
# 4| [Destructor] void ClassWithDestructor2::~ClassWithDestructor2()
|
|
# 4| <params>:
|
|
# 6| [MemberFunction] char ClassWithDestructor2::get_x()
|
|
# 6| <params>:
|
|
# 9| [CopyAssignmentOperator] ClassWithConstructor& ClassWithConstructor::operator=(ClassWithConstructor const&)
|
|
# 9| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const ClassWithConstructor &
|
|
# 9| [MoveAssignmentOperator] ClassWithConstructor& ClassWithConstructor::operator=(ClassWithConstructor&&)
|
|
# 9| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] ClassWithConstructor &&
|
|
# 9| [CopyConstructor] void ClassWithConstructor::ClassWithConstructor(ClassWithConstructor const&)
|
|
# 9| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const ClassWithConstructor &
|
|
# 9| [MoveConstructor] void ClassWithConstructor::ClassWithConstructor(ClassWithConstructor&&)
|
|
# 9| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] ClassWithConstructor &&
|
|
# 9| <initializations>:
|
|
# 9| getEntryPoint(): [BlockStmt] { ... }
|
|
# 9| getStmt(0): [ReturnStmt] return ...
|
|
# 11| [Constructor] void ClassWithConstructor::ClassWithConstructor(char, char)
|
|
# 11| <params>:
|
|
# 11| getParameter(0): [Parameter] x
|
|
# 11| Type = [PlainCharType] char
|
|
# 11| getParameter(1): [Parameter] y
|
|
# 11| Type = [PlainCharType] char
|
|
# 14| [TopLevelFunction] char temp_test()
|
|
# 14| <params>:
|
|
# 14| getEntryPoint(): [BlockStmt] { ... }
|
|
# 15| getStmt(0): [DeclStmt] declaration
|
|
# 15| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 15| Type = [PlainCharType] char
|
|
# 15| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 15| getExpr(): [FunctionCall] call to get_x
|
|
# 15| Type = [PlainCharType] char
|
|
# 15| ValueCategory = prvalue
|
|
# 15| getQualifier(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 15| Type = [VoidType] void
|
|
# 15| ValueCategory = prvalue
|
|
# 15| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 15| Type = [VoidType] void
|
|
# 15| ValueCategory = prvalue
|
|
# 15| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 15| Type = [Class] ClassWithDestructor2
|
|
# 15| ValueCategory = xvalue
|
|
# 15| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 15| Type = [Class] ClassWithDestructor2
|
|
# 15| ValueCategory = prvalue(load)
|
|
# 16| getStmt(1): [DeclStmt] declaration
|
|
# 16| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 16| Type = [Class] ClassWithConstructor
|
|
# 16| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 16| getExpr(): [ConstructorCall] call to ClassWithConstructor
|
|
# 16| Type = [VoidType] void
|
|
# 16| ValueCategory = prvalue
|
|
# 16| getArgument(0): [CharLiteral] 97
|
|
# 16| Type = [PlainCharType] char
|
|
# 16| Value = [CharLiteral] 97
|
|
# 16| ValueCategory = prvalue
|
|
# 16| getArgument(1): [FunctionCall] call to get_x
|
|
# 16| Type = [PlainCharType] char
|
|
# 16| ValueCategory = prvalue
|
|
# 16| getQualifier(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 16| Type = [VoidType] void
|
|
# 16| ValueCategory = prvalue
|
|
# 16| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 16| Type = [Class] ClassWithDestructor2
|
|
# 16| ValueCategory = prvalue(load)
|
|
# 16| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 16| Type = [VoidType] void
|
|
# 16| ValueCategory = prvalue
|
|
# 16| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 16| Type = [Class] ClassWithDestructor2
|
|
# 16| ValueCategory = xvalue
|
|
# 17| getStmt(2): [ReturnStmt] return ...
|
|
# 17| getExpr(): [FunctionCall] call to get_x
|
|
# 17| Type = [PlainCharType] char
|
|
# 17| ValueCategory = prvalue
|
|
# 17| getQualifier(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 17| Type = [VoidType] void
|
|
# 17| ValueCategory = prvalue
|
|
# 17| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 17| Type = [VoidType] void
|
|
# 17| ValueCategory = prvalue
|
|
# 17| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 17| Type = [Class] ClassWithDestructor2
|
|
# 17| ValueCategory = xvalue
|
|
# 17| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 17| Type = [Class] ClassWithDestructor2
|
|
# 17| ValueCategory = prvalue(load)
|
|
# 21| [TopLevelFunction] char temp_test2()
|
|
# 21| <params>:
|
|
# 21| getEntryPoint(): [BlockStmt] { ... }
|
|
# 22| getStmt(0): [ExprStmt] ExprStmt
|
|
# 22| getExpr(): [NewExpr] new
|
|
# 22| Type = [PointerType] ClassWithDestructor2 *
|
|
# 22| ValueCategory = prvalue
|
|
# 22| getInitializer(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 22| Type = [VoidType] void
|
|
# 22| ValueCategory = prvalue
|
|
# 23| getStmt(1): [ReturnStmt] return ...
|
|
# 23| getExpr(): [AddExpr] ... + ...
|
|
# 23| Type = [IntType] int
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getLeftOperand(): [FunctionCall] call to get_x
|
|
# 23| Type = [PlainCharType] char
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getQualifier(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 23| Type = [VoidType] void
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 23| Type = [Class] ClassWithDestructor2
|
|
# 23| ValueCategory = prvalue(load)
|
|
# 23| getRightOperand(): [FunctionCall] call to get_x
|
|
# 23| Type = [PlainCharType] char
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getQualifier(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 23| Type = [VoidType] void
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 23| Type = [Class] ClassWithDestructor2
|
|
# 23| ValueCategory = prvalue(load)
|
|
# 23| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 23| Type = [VoidType] void
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 23| Type = [Class] ClassWithDestructor2
|
|
# 23| ValueCategory = xvalue
|
|
# 23| getImplicitDestructorCall(1): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 23| Type = [VoidType] void
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 23| Type = [Class] ClassWithDestructor2
|
|
# 23| ValueCategory = xvalue
|
|
# 23| getLeftOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 23| Conversion = [IntegralConversion] integral conversion
|
|
# 23| Type = [IntType] int
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getRightOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 23| Conversion = [IntegralConversion] integral conversion
|
|
# 23| Type = [IntType] int
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getExpr().getFullyConverted(): [CStyleCast] (char)...
|
|
# 23| Conversion = [IntegralConversion] integral conversion
|
|
# 23| Type = [PlainCharType] char
|
|
# 23| ValueCategory = prvalue
|
|
# 27| [FunctionTemplateInstantiation,TopLevelFunction] ClassWithDestructor2 returnValue<ClassWithDestructor2>()
|
|
# 27| <params>:
|
|
# 27| [TemplateFunction,TopLevelFunction] T returnValue<T>()
|
|
# 27| <params>:
|
|
# 29| [TopLevelFunction] void temp_test3()
|
|
# 29| <params>:
|
|
# 29| getEntryPoint(): [BlockStmt] { ... }
|
|
# 30| getStmt(0): [DeclStmt] declaration
|
|
# 30| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rs
|
|
# 30| Type = [LValueReferenceType] const ClassWithDestructor2 &
|
|
# 30| getVariable().getInitializer(): [Initializer] initializer for rs
|
|
# 30| getExpr(): [FunctionCall] call to returnValue
|
|
# 30| Type = [Class] ClassWithDestructor2
|
|
# 30| ValueCategory = prvalue
|
|
# 30| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 30| Type = [LValueReferenceType] const ClassWithDestructor2 &
|
|
# 30| ValueCategory = prvalue
|
|
# 30| getExpr(): [CStyleCast] (const ClassWithDestructor2)...
|
|
# 30| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 30| Type = [SpecifiedType] const ClassWithDestructor2
|
|
# 30| ValueCategory = lvalue
|
|
# 30| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 30| Type = [Class] ClassWithDestructor2
|
|
# 30| ValueCategory = lvalue
|
|
# 31| getStmt(1): [ReturnStmt] return ...
|
|
# 31| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 31| Type = [VoidType] void
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 31| Type = [Class] ClassWithDestructor2
|
|
# 31| ValueCategory = xvalue
|
|
# 33| [TopLevelFunction] void temp_test4()
|
|
# 33| <params>:
|
|
# 33| getEntryPoint(): [BlockStmt] { ... }
|
|
# 34| getStmt(0): [DeclStmt] declaration
|
|
# 34| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 34| Type = [Class] ClassWithDestructor2
|
|
# 34| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 34| getExpr(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 34| Type = [VoidType] void
|
|
# 34| ValueCategory = prvalue
|
|
# 35| getStmt(1): [DeclStmt] declaration
|
|
# 35| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rs2
|
|
# 35| Type = [LValueReferenceType] const ClassWithDestructor2 &
|
|
# 35| getVariable().getInitializer(): [Initializer] initializer for rs2
|
|
# 35| getExpr(): [FunctionCall] call to returnValue
|
|
# 35| Type = [Class] ClassWithDestructor2
|
|
# 35| ValueCategory = prvalue
|
|
# 35| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 35| Type = [LValueReferenceType] const ClassWithDestructor2 &
|
|
# 35| ValueCategory = prvalue
|
|
# 35| getExpr(): [CStyleCast] (const ClassWithDestructor2)...
|
|
# 35| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 35| Type = [SpecifiedType] const ClassWithDestructor2
|
|
# 35| ValueCategory = lvalue
|
|
# 35| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 35| Type = [Class] ClassWithDestructor2
|
|
# 35| ValueCategory = lvalue
|
|
# 36| getStmt(2): [ReturnStmt] return ...
|
|
# 36| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 36| Type = [VoidType] void
|
|
# 36| ValueCategory = prvalue
|
|
# 36| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 36| Type = [Class] ClassWithDestructor2
|
|
# 36| ValueCategory = xvalue
|
|
# 36| getImplicitDestructorCall(1): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 36| Type = [VoidType] void
|
|
# 36| ValueCategory = prvalue
|
|
# 36| getQualifier(): [VariableAccess] c
|
|
# 36| Type = [Class] ClassWithDestructor2
|
|
# 36| ValueCategory = lvalue
|
|
# 38| [TopLevelFunction] void temp_test5(bool)
|
|
# 38| <params>:
|
|
# 38| getParameter(0): [Parameter] b
|
|
# 38| Type = [BoolType] bool
|
|
# 38| getEntryPoint(): [BlockStmt] { ... }
|
|
# 39| getStmt(0): [ExprStmt] ExprStmt
|
|
# 39| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 39| Type = [Class] ClassWithDestructor2
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getCondition(): [VariableAccess] b
|
|
# 39| Type = [BoolType] bool
|
|
# 39| ValueCategory = prvalue(load)
|
|
# 39| getThen(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 39| Type = [VoidType] void
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getElse(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 39| Type = [VoidType] void
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 39| Type = [VoidType] void
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 39| Type = [Class] ClassWithDestructor2
|
|
# 39| ValueCategory = xvalue
|
|
# 39| getThen().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 39| Type = [Class] ClassWithDestructor2
|
|
# 39| ValueCategory = prvalue(load)
|
|
# 39| getElse().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 39| Type = [Class] ClassWithDestructor2
|
|
# 39| ValueCategory = prvalue(load)
|
|
# 39| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 39| Type = [Class] ClassWithDestructor2
|
|
# 39| ValueCategory = prvalue
|
|
# 40| getStmt(1): [ReturnStmt] return ...
|
|
# 42| [TopLevelFunction] void temp_test6(bool)
|
|
# 42| <params>:
|
|
# 42| getParameter(0): [Parameter] b
|
|
# 42| Type = [BoolType] bool
|
|
# 42| getEntryPoint(): [BlockStmt] { ... }
|
|
# 43| getStmt(0): [DeclStmt] declaration
|
|
# 43| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 43| Type = [Class] ClassWithDestructor2
|
|
# 43| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 43| getExpr(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 43| Type = [VoidType] void
|
|
# 43| ValueCategory = prvalue
|
|
# 44| getStmt(1): [IfStmt] if (...) ...
|
|
# 44| getCondition(): [VariableAccess] b
|
|
# 44| Type = [BoolType] bool
|
|
# 44| ValueCategory = prvalue(load)
|
|
# 44| getThen(): [BlockStmt] { ... }
|
|
# 45| getStmt(0): [ExprStmt] ExprStmt
|
|
# 45| getExpr(): [ThrowExpr] throw ...
|
|
# 45| Type = [Class] ClassWithConstructor
|
|
# 45| ValueCategory = prvalue
|
|
# 45| getExpr(): [ConstructorCall] call to ClassWithConstructor
|
|
# 45| Type = [VoidType] void
|
|
# 45| ValueCategory = prvalue
|
|
# 45| getArgument(0): [CharLiteral] 120
|
|
# 45| Type = [PlainCharType] char
|
|
# 45| Value = [CharLiteral] 120
|
|
# 45| ValueCategory = prvalue
|
|
# 45| getArgument(1): [FunctionCall] call to get_x
|
|
# 45| Type = [PlainCharType] char
|
|
# 45| ValueCategory = prvalue
|
|
# 45| getQualifier(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 45| Type = [VoidType] void
|
|
# 45| ValueCategory = prvalue
|
|
# 45| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 45| Type = [Class] ClassWithDestructor2
|
|
# 45| ValueCategory = prvalue(load)
|
|
# 45| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 45| Type = [VoidType] void
|
|
# 45| ValueCategory = prvalue
|
|
# 45| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 45| Type = [Class] ClassWithDestructor2
|
|
# 45| ValueCategory = xvalue
|
|
# 47| getImplicitDestructorCall(1): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 47| Type = [VoidType] void
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getQualifier(): [VariableAccess] c
|
|
# 47| Type = [Class] ClassWithDestructor2
|
|
# 47| ValueCategory = lvalue
|
|
# 47| getStmt(2): [ReturnStmt] return ...
|
|
# 47| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 47| Type = [VoidType] void
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getQualifier(): [VariableAccess] c
|
|
# 47| Type = [Class] ClassWithDestructor2
|
|
# 47| ValueCategory = lvalue
|
|
# 49| [TopLevelFunction] void temp_test7(bool)
|
|
# 49| <params>:
|
|
# 49| getParameter(0): [Parameter] b
|
|
# 49| Type = [BoolType] bool
|
|
# 49| getEntryPoint(): [BlockStmt] { ... }
|
|
# 50| getStmt(0): [DeclStmt] declaration
|
|
# 50| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 50| Type = [Class] ClassWithDestructor2
|
|
# 50| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 50| getExpr(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 50| Type = [VoidType] void
|
|
# 50| ValueCategory = prvalue
|
|
# 51| getStmt(1): [ExprStmt] ExprStmt
|
|
# 51| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 51| Type = [Class] ClassWithDestructor2
|
|
# 51| ValueCategory = prvalue(load)
|
|
# 51| getCondition(): [VariableAccess] b
|
|
# 51| Type = [BoolType] bool
|
|
# 51| ValueCategory = prvalue(load)
|
|
# 51| getThen(): [ThrowExpr] throw ...
|
|
# 51| Type = [Class] ClassWithConstructor
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getExpr(): [ConstructorCall] call to ClassWithConstructor
|
|
# 51| Type = [VoidType] void
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getArgument(0): [CharLiteral] 120
|
|
# 51| Type = [PlainCharType] char
|
|
# 51| Value = [CharLiteral] 120
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getArgument(1): [FunctionCall] call to get_x
|
|
# 51| Type = [PlainCharType] char
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getQualifier(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 51| Type = [VoidType] void
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 51| Type = [Class] ClassWithDestructor2
|
|
# 51| ValueCategory = prvalue(load)
|
|
# 52| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 52| Type = [VoidType] void
|
|
# 52| ValueCategory = prvalue
|
|
# 52| getQualifier(): [VariableAccess] c
|
|
# 52| Type = [Class] ClassWithDestructor2
|
|
# 52| ValueCategory = lvalue
|
|
# 51| getElse(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 51| Type = [VoidType] void
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 51| Type = [VoidType] void
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 51| Type = [Class] ClassWithDestructor2
|
|
# 51| ValueCategory = xvalue
|
|
# 51| getImplicitDestructorCall(1): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 51| Type = [VoidType] void
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 51| Type = [Class] ClassWithDestructor2
|
|
# 51| ValueCategory = xvalue
|
|
# 51| getImplicitDestructorCall(2): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 51| Type = [VoidType] void
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 51| Type = [Class] ClassWithDestructor2
|
|
# 51| ValueCategory = xvalue
|
|
# 51| getElse().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 51| Type = [Class] ClassWithDestructor2
|
|
# 51| ValueCategory = prvalue(load)
|
|
# 51| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 51| Type = [Class] ClassWithDestructor2
|
|
# 51| ValueCategory = prvalue
|
|
# 52| getStmt(2): [ReturnStmt] return ...
|
|
# 52| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 52| Type = [VoidType] void
|
|
# 52| ValueCategory = prvalue
|
|
# 52| getQualifier(): [VariableAccess] c
|
|
# 52| Type = [Class] ClassWithDestructor2
|
|
# 52| ValueCategory = lvalue
|
|
# 54| [TopLevelFunction] void temp_test8(bool)
|
|
# 54| <params>:
|
|
# 54| getParameter(0): [Parameter] b
|
|
# 54| Type = [BoolType] bool
|
|
# 54| getEntryPoint(): [BlockStmt] { ... }
|
|
# 55| getStmt(0): [ExprStmt] ExprStmt
|
|
# 55| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 55| Type = [Class] ClassWithDestructor2
|
|
# 55| ValueCategory = prvalue(load)
|
|
# 55| getCondition(): [VariableAccess] b
|
|
# 55| Type = [BoolType] bool
|
|
# 55| ValueCategory = prvalue(load)
|
|
# 55| getThen(): [ThrowExpr] throw ...
|
|
# 55| Type = [Class] ClassWithConstructor
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getExpr(): [ConstructorCall] call to ClassWithConstructor
|
|
# 55| Type = [VoidType] void
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getArgument(0): [CharLiteral] 120
|
|
# 55| Type = [PlainCharType] char
|
|
# 55| Value = [CharLiteral] 120
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getArgument(1): [FunctionCall] call to get_x
|
|
# 55| Type = [PlainCharType] char
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getQualifier(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 55| Type = [VoidType] void
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 55| Type = [Class] ClassWithDestructor2
|
|
# 55| ValueCategory = prvalue(load)
|
|
# 55| getElse(): [ConstructorCall] call to ClassWithDestructor2
|
|
# 55| Type = [VoidType] void
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 55| Type = [VoidType] void
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 55| Type = [Class] ClassWithDestructor2
|
|
# 55| ValueCategory = xvalue
|
|
# 55| getImplicitDestructorCall(1): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 55| Type = [VoidType] void
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 55| Type = [Class] ClassWithDestructor2
|
|
# 55| ValueCategory = xvalue
|
|
# 55| getImplicitDestructorCall(2): [DestructorCall] call to ~ClassWithDestructor2
|
|
# 55| Type = [VoidType] void
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 55| Type = [Class] ClassWithDestructor2
|
|
# 55| ValueCategory = xvalue
|
|
# 55| getElse().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 55| Type = [Class] ClassWithDestructor2
|
|
# 55| ValueCategory = prvalue(load)
|
|
# 55| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 55| Type = [Class] ClassWithDestructor2
|
|
# 55| ValueCategory = prvalue
|
|
# 56| getStmt(1): [ReturnStmt] return ...
|
|
ir.c:
|
|
# 5| [TopLevelFunction] int getX(MyCoords*)
|
|
# 5| <params>:
|
|
# 5| getParameter(0): [Parameter] coords
|
|
# 5| Type = [PointerType] MyCoords *
|
|
# 7| [TopLevelFunction] void MyCoordsTest(int)
|
|
# 7| <params>:
|
|
# 7| getParameter(0): [Parameter] pos
|
|
# 7| Type = [IntType] int
|
|
# 7| getEntryPoint(): [BlockStmt] { ... }
|
|
# 8| getStmt(0): [DeclStmt] declaration
|
|
# 8| getDeclarationEntry(0): [VariableDeclarationEntry] definition of coords
|
|
# 8| Type = [CTypedefType] MyCoords
|
|
# 8| getVariable().getInitializer(): [Initializer] initializer for coords
|
|
# 8| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 8| Type = [Struct] (unnamed class/struct/union)
|
|
# 8| ValueCategory = prvalue
|
|
# 8| getAFieldExpr(x): [Literal] 0
|
|
# 8| Type = [IntType] int
|
|
# 8| Value = [Literal] 0
|
|
# 8| ValueCategory = prvalue
|
|
# 9| getStmt(1): [ExprStmt] ExprStmt
|
|
# 9| getExpr(): [AssignExpr] ... = ...
|
|
# 9| Type = [IntType] int
|
|
# 9| ValueCategory = prvalue
|
|
# 9| getLValue(): [ValueFieldAccess] x
|
|
# 9| Type = [IntType] int
|
|
# 9| ValueCategory = lvalue
|
|
# 9| getQualifier(): [VariableAccess] coords
|
|
# 9| Type = [CTypedefType] MyCoords
|
|
# 9| ValueCategory = lvalue
|
|
# 9| getRValue(): [AssignExpr] ... = ...
|
|
# 9| Type = [IntType] int
|
|
# 9| ValueCategory = prvalue(load)
|
|
# 9| getLValue(): [ValueFieldAccess] y
|
|
# 9| Type = [IntType] int
|
|
# 9| ValueCategory = lvalue
|
|
# 9| getQualifier(): [VariableAccess] coords
|
|
# 9| Type = [CTypedefType] MyCoords
|
|
# 9| ValueCategory = lvalue
|
|
# 9| getRValue(): [AddExpr] ... + ...
|
|
# 9| Type = [IntType] int
|
|
# 9| ValueCategory = prvalue
|
|
# 9| getLeftOperand(): [VariableAccess] pos
|
|
# 9| Type = [IntType] int
|
|
# 9| ValueCategory = prvalue(load)
|
|
# 9| getRightOperand(): [Literal] 1
|
|
# 9| Type = [IntType] int
|
|
# 9| Value = [Literal] 1
|
|
# 9| ValueCategory = prvalue
|
|
# 10| getStmt(2): [ExprStmt] ExprStmt
|
|
# 10| getExpr(): [AssignExpr] ... = ...
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getLValue(): [ValueFieldAccess] x
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = lvalue
|
|
# 10| getQualifier(): [VariableAccess] coords
|
|
# 10| Type = [CTypedefType] MyCoords
|
|
# 10| ValueCategory = lvalue
|
|
# 10| getRValue(): [FunctionCall] call to getX
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getArgument(0): [AddressOfExpr] & ...
|
|
# 10| Type = [PointerType] MyCoords *
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getOperand(): [VariableAccess] coords
|
|
# 10| Type = [CTypedefType] MyCoords
|
|
# 10| ValueCategory = lvalue
|
|
# 11| getStmt(3): [ReturnStmt] return ...
|
|
# 13| [TopLevelFunction] void CStyleCast(void*)
|
|
# 13| <params>:
|
|
# 13| getParameter(0): [Parameter] src
|
|
# 13| Type = [VoidPointerType] void *
|
|
# 14| getEntryPoint(): [BlockStmt] { ... }
|
|
# 15| getStmt(0): [DeclStmt] declaration
|
|
# 15| getDeclarationEntry(0): [VariableDeclarationEntry] definition of dst
|
|
# 15| Type = [CharPointerType] char *
|
|
# 15| getVariable().getInitializer(): [Initializer] initializer for dst
|
|
# 15| getExpr(): [VariableAccess] src
|
|
# 15| Type = [VoidPointerType] void *
|
|
# 15| ValueCategory = prvalue(load)
|
|
# 15| getExpr().getFullyConverted(): [CStyleCast] (char *)...
|
|
# 15| Conversion = [PointerConversion] pointer conversion
|
|
# 15| Type = [CharPointerType] char *
|
|
# 15| ValueCategory = prvalue
|
|
# 16| getStmt(1): [ReturnStmt] return ...
|
|
# 18| [TopLevelFunction] void ExRaiseAccessViolation(int)
|
|
# 18| <params>:
|
|
# 18| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 18| Type = [IntType] int
|
|
# 21| [TopLevelFunction] int TryExceptTest(int)
|
|
# 21| <params>:
|
|
# 21| getParameter(0): [Parameter] x
|
|
# 21| Type = [IntType] int
|
|
# 21| getEntryPoint(): [BlockStmt] { ... }
|
|
# 22| getStmt(0): [DeclStmt] declaration
|
|
# 22| getDeclarationEntry(0): [VariableDeclarationEntry] definition of localPtr
|
|
# 22| Type = [IntPointerType] int *
|
|
# 24| getStmt(1): [MicrosoftTryExceptStmt] __try { ... } __except( ... ) { ... }
|
|
# 24| getStmt(): [BlockStmt] { ... }
|
|
# 25| getStmt(0): [ExprStmt] ExprStmt
|
|
# 25| getExpr(): [FunctionCall] call to ExRaiseAccessViolation
|
|
# 25| Type = [VoidType] void
|
|
# 25| ValueCategory = prvalue
|
|
# 25| getArgument(0): [VariableAccess] x
|
|
# 25| Type = [IntType] int
|
|
# 25| ValueCategory = prvalue(load)
|
|
# 26| getCondition(): [Literal] 1
|
|
# 26| Type = [IntType] int
|
|
# 26| Value = [Literal] 1
|
|
# 26| ValueCategory = prvalue
|
|
# 26| getExcept(): [BlockStmt] { ... }
|
|
# 27| getStmt(0): [ReturnStmt] return ...
|
|
# 27| getExpr(): [Literal] 1
|
|
# 27| Type = [IntType] int
|
|
# 27| Value = [Literal] 1
|
|
# 27| ValueCategory = prvalue
|
|
# 29| getStmt(2): [ReturnStmt] return ...
|
|
# 29| getExpr(): [Literal] 0
|
|
# 29| Type = [IntType] int
|
|
# 29| Value = [Literal] 0
|
|
# 29| ValueCategory = prvalue
|
|
ir.cpp:
|
|
# 1| [TopLevelFunction] void Constants()
|
|
# 1| <params>:
|
|
# 1| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2| getStmt(0): [DeclStmt] declaration
|
|
# 2| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c_i
|
|
# 2| Type = [PlainCharType] char
|
|
# 2| getVariable().getInitializer(): [Initializer] initializer for c_i
|
|
# 2| getExpr(): [Literal] 1
|
|
# 2| Type = [IntType] int
|
|
# 2| Value = [Literal] 1
|
|
# 2| ValueCategory = prvalue
|
|
# 2| getExpr().getFullyConverted(): [CStyleCast] (char)...
|
|
# 2| Conversion = [IntegralConversion] integral conversion
|
|
# 2| Type = [PlainCharType] char
|
|
# 2| Value = [CStyleCast] 1
|
|
# 2| ValueCategory = prvalue
|
|
# 3| getStmt(1): [DeclStmt] declaration
|
|
# 3| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c_c
|
|
# 3| Type = [PlainCharType] char
|
|
# 3| getVariable().getInitializer(): [Initializer] initializer for c_c
|
|
# 3| getExpr(): [CharLiteral] 65
|
|
# 3| Type = [PlainCharType] char
|
|
# 3| Value = [CharLiteral] 65
|
|
# 3| ValueCategory = prvalue
|
|
# 5| getStmt(2): [DeclStmt] declaration
|
|
# 5| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sc_i
|
|
# 5| Type = [SignedCharType] signed char
|
|
# 5| getVariable().getInitializer(): [Initializer] initializer for sc_i
|
|
# 5| getExpr(): [UnaryMinusExpr] - ...
|
|
# 5| Type = [IntType] int
|
|
# 5| Value = [UnaryMinusExpr] -1
|
|
# 5| ValueCategory = prvalue
|
|
# 5| getOperand(): [Literal] 1
|
|
# 5| Type = [IntType] int
|
|
# 5| Value = [Literal] 1
|
|
# 5| ValueCategory = prvalue
|
|
# 5| getExpr().getFullyConverted(): [CStyleCast] (signed char)...
|
|
# 5| Conversion = [IntegralConversion] integral conversion
|
|
# 5| Type = [SignedCharType] signed char
|
|
# 5| Value = [CStyleCast] -1
|
|
# 5| ValueCategory = prvalue
|
|
# 6| getStmt(3): [DeclStmt] declaration
|
|
# 6| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sc_c
|
|
# 6| Type = [SignedCharType] signed char
|
|
# 6| getVariable().getInitializer(): [Initializer] initializer for sc_c
|
|
# 6| getExpr(): [CharLiteral] 65
|
|
# 6| Type = [PlainCharType] char
|
|
# 6| Value = [CharLiteral] 65
|
|
# 6| ValueCategory = prvalue
|
|
# 6| getExpr().getFullyConverted(): [CStyleCast] (signed char)...
|
|
# 6| Conversion = [IntegralConversion] integral conversion
|
|
# 6| Type = [SignedCharType] signed char
|
|
# 6| Value = [CStyleCast] 65
|
|
# 6| ValueCategory = prvalue
|
|
# 8| getStmt(4): [DeclStmt] declaration
|
|
# 8| getDeclarationEntry(0): [VariableDeclarationEntry] definition of uc_i
|
|
# 8| Type = [UnsignedCharType] unsigned char
|
|
# 8| getVariable().getInitializer(): [Initializer] initializer for uc_i
|
|
# 8| getExpr(): [Literal] 5
|
|
# 8| Type = [IntType] int
|
|
# 8| Value = [Literal] 5
|
|
# 8| ValueCategory = prvalue
|
|
# 8| getExpr().getFullyConverted(): [CStyleCast] (unsigned char)...
|
|
# 8| Conversion = [IntegralConversion] integral conversion
|
|
# 8| Type = [UnsignedCharType] unsigned char
|
|
# 8| Value = [CStyleCast] 5
|
|
# 8| ValueCategory = prvalue
|
|
# 9| getStmt(5): [DeclStmt] declaration
|
|
# 9| getDeclarationEntry(0): [VariableDeclarationEntry] definition of uc_c
|
|
# 9| Type = [UnsignedCharType] unsigned char
|
|
# 9| getVariable().getInitializer(): [Initializer] initializer for uc_c
|
|
# 9| getExpr(): [CharLiteral] 65
|
|
# 9| Type = [PlainCharType] char
|
|
# 9| Value = [CharLiteral] 65
|
|
# 9| ValueCategory = prvalue
|
|
# 9| getExpr().getFullyConverted(): [CStyleCast] (unsigned char)...
|
|
# 9| Conversion = [IntegralConversion] integral conversion
|
|
# 9| Type = [UnsignedCharType] unsigned char
|
|
# 9| Value = [CStyleCast] 65
|
|
# 9| ValueCategory = prvalue
|
|
# 11| getStmt(6): [DeclStmt] declaration
|
|
# 11| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 11| Type = [ShortType] short
|
|
# 11| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 11| getExpr(): [Literal] 5
|
|
# 11| Type = [IntType] int
|
|
# 11| Value = [Literal] 5
|
|
# 11| ValueCategory = prvalue
|
|
# 11| getExpr().getFullyConverted(): [CStyleCast] (short)...
|
|
# 11| Conversion = [IntegralConversion] integral conversion
|
|
# 11| Type = [ShortType] short
|
|
# 11| Value = [CStyleCast] 5
|
|
# 11| ValueCategory = prvalue
|
|
# 12| getStmt(7): [DeclStmt] declaration
|
|
# 12| getDeclarationEntry(0): [VariableDeclarationEntry] definition of us
|
|
# 12| Type = [ShortType] unsigned short
|
|
# 12| getVariable().getInitializer(): [Initializer] initializer for us
|
|
# 12| getExpr(): [Literal] 5
|
|
# 12| Type = [IntType] int
|
|
# 12| Value = [Literal] 5
|
|
# 12| ValueCategory = prvalue
|
|
# 12| getExpr().getFullyConverted(): [CStyleCast] (unsigned short)...
|
|
# 12| Conversion = [IntegralConversion] integral conversion
|
|
# 12| Type = [ShortType] unsigned short
|
|
# 12| Value = [CStyleCast] 5
|
|
# 12| ValueCategory = prvalue
|
|
# 14| getStmt(8): [DeclStmt] declaration
|
|
# 14| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 14| Type = [IntType] int
|
|
# 14| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 14| getExpr(): [Literal] 5
|
|
# 14| Type = [IntType] int
|
|
# 14| Value = [Literal] 5
|
|
# 14| ValueCategory = prvalue
|
|
# 15| getStmt(9): [DeclStmt] declaration
|
|
# 15| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ui
|
|
# 15| Type = [IntType] unsigned int
|
|
# 15| getVariable().getInitializer(): [Initializer] initializer for ui
|
|
# 15| getExpr(): [Literal] 5
|
|
# 15| Type = [IntType] int
|
|
# 15| Value = [Literal] 5
|
|
# 15| ValueCategory = prvalue
|
|
# 15| getExpr().getFullyConverted(): [CStyleCast] (unsigned int)...
|
|
# 15| Conversion = [IntegralConversion] integral conversion
|
|
# 15| Type = [IntType] unsigned int
|
|
# 15| Value = [CStyleCast] 5
|
|
# 15| ValueCategory = prvalue
|
|
# 17| getStmt(10): [DeclStmt] declaration
|
|
# 17| getDeclarationEntry(0): [VariableDeclarationEntry] definition of l
|
|
# 17| Type = [LongType] long
|
|
# 17| getVariable().getInitializer(): [Initializer] initializer for l
|
|
# 17| getExpr(): [Literal] 5
|
|
# 17| Type = [IntType] int
|
|
# 17| Value = [Literal] 5
|
|
# 17| ValueCategory = prvalue
|
|
# 17| getExpr().getFullyConverted(): [CStyleCast] (long)...
|
|
# 17| Conversion = [IntegralConversion] integral conversion
|
|
# 17| Type = [LongType] long
|
|
# 17| Value = [CStyleCast] 5
|
|
# 17| ValueCategory = prvalue
|
|
# 18| getStmt(11): [DeclStmt] declaration
|
|
# 18| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ul
|
|
# 18| Type = [LongType] unsigned long
|
|
# 18| getVariable().getInitializer(): [Initializer] initializer for ul
|
|
# 18| getExpr(): [Literal] 5
|
|
# 18| Type = [IntType] int
|
|
# 18| Value = [Literal] 5
|
|
# 18| ValueCategory = prvalue
|
|
# 18| getExpr().getFullyConverted(): [CStyleCast] (unsigned long)...
|
|
# 18| Conversion = [IntegralConversion] integral conversion
|
|
# 18| Type = [LongType] unsigned long
|
|
# 18| Value = [CStyleCast] 5
|
|
# 18| ValueCategory = prvalue
|
|
# 20| getStmt(12): [DeclStmt] declaration
|
|
# 20| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ll_i
|
|
# 20| Type = [LongLongType] long long
|
|
# 20| getVariable().getInitializer(): [Initializer] initializer for ll_i
|
|
# 20| getExpr(): [Literal] 5
|
|
# 20| Type = [IntType] int
|
|
# 20| Value = [Literal] 5
|
|
# 20| ValueCategory = prvalue
|
|
# 20| getExpr().getFullyConverted(): [CStyleCast] (long long)...
|
|
# 20| Conversion = [IntegralConversion] integral conversion
|
|
# 20| Type = [LongLongType] long long
|
|
# 20| Value = [CStyleCast] 5
|
|
# 20| ValueCategory = prvalue
|
|
# 21| getStmt(13): [DeclStmt] declaration
|
|
# 21| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ll_ll
|
|
# 21| Type = [LongLongType] long long
|
|
# 21| getVariable().getInitializer(): [Initializer] initializer for ll_ll
|
|
# 21| getExpr(): [Literal] 5
|
|
# 21| Type = [LongLongType] long long
|
|
# 21| Value = [Literal] 5
|
|
# 21| ValueCategory = prvalue
|
|
# 22| getStmt(14): [DeclStmt] declaration
|
|
# 22| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ull_i
|
|
# 22| Type = [LongLongType] unsigned long long
|
|
# 22| getVariable().getInitializer(): [Initializer] initializer for ull_i
|
|
# 22| getExpr(): [Literal] 5
|
|
# 22| Type = [IntType] int
|
|
# 22| Value = [Literal] 5
|
|
# 22| ValueCategory = prvalue
|
|
# 22| getExpr().getFullyConverted(): [CStyleCast] (unsigned long long)...
|
|
# 22| Conversion = [IntegralConversion] integral conversion
|
|
# 22| Type = [LongLongType] unsigned long long
|
|
# 22| Value = [CStyleCast] 5
|
|
# 22| ValueCategory = prvalue
|
|
# 23| getStmt(15): [DeclStmt] declaration
|
|
# 23| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ull_ull
|
|
# 23| Type = [LongLongType] unsigned long long
|
|
# 23| getVariable().getInitializer(): [Initializer] initializer for ull_ull
|
|
# 23| getExpr(): [Literal] 5
|
|
# 23| Type = [LongLongType] unsigned long long
|
|
# 23| Value = [Literal] 5
|
|
# 23| ValueCategory = prvalue
|
|
# 25| getStmt(16): [DeclStmt] declaration
|
|
# 25| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b_t
|
|
# 25| Type = [BoolType] bool
|
|
# 25| getVariable().getInitializer(): [Initializer] initializer for b_t
|
|
# 25| getExpr(): [Literal] 1
|
|
# 25| Type = [BoolType] bool
|
|
# 25| Value = [Literal] 1
|
|
# 25| ValueCategory = prvalue
|
|
# 26| getStmt(17): [DeclStmt] declaration
|
|
# 26| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b_f
|
|
# 26| Type = [BoolType] bool
|
|
# 26| getVariable().getInitializer(): [Initializer] initializer for b_f
|
|
# 26| getExpr(): [Literal] 0
|
|
# 26| Type = [BoolType] bool
|
|
# 26| Value = [Literal] 0
|
|
# 26| ValueCategory = prvalue
|
|
# 28| getStmt(18): [DeclStmt] declaration
|
|
# 28| getDeclarationEntry(0): [VariableDeclarationEntry] definition of wc_i
|
|
# 28| Type = [Wchar_t,WideCharType] wchar_t
|
|
# 28| getVariable().getInitializer(): [Initializer] initializer for wc_i
|
|
# 28| getExpr(): [Literal] 5
|
|
# 28| Type = [IntType] int
|
|
# 28| Value = [Literal] 5
|
|
# 28| ValueCategory = prvalue
|
|
# 28| getExpr().getFullyConverted(): [CStyleCast] (wchar_t)...
|
|
# 28| Conversion = [IntegralConversion] integral conversion
|
|
# 28| Type = [Wchar_t,WideCharType] wchar_t
|
|
# 28| Value = [CStyleCast] 5
|
|
# 28| ValueCategory = prvalue
|
|
# 29| getStmt(19): [DeclStmt] declaration
|
|
# 29| getDeclarationEntry(0): [VariableDeclarationEntry] definition of wc_c
|
|
# 29| Type = [Wchar_t,WideCharType] wchar_t
|
|
# 29| getVariable().getInitializer(): [Initializer] initializer for wc_c
|
|
# 29| getExpr(): [CharLiteral] 65
|
|
# 29| Type = [Wchar_t,WideCharType] wchar_t
|
|
# 29| Value = [CharLiteral] 65
|
|
# 29| ValueCategory = prvalue
|
|
# 31| getStmt(20): [DeclStmt] declaration
|
|
# 31| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c16
|
|
# 31| Type = [Char16Type] char16_t
|
|
# 31| getVariable().getInitializer(): [Initializer] initializer for c16
|
|
# 31| getExpr(): [Literal] 65
|
|
# 31| Type = [Char16Type] char16_t
|
|
# 31| Value = [Literal] 65
|
|
# 31| ValueCategory = prvalue
|
|
# 32| getStmt(21): [DeclStmt] declaration
|
|
# 32| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c32
|
|
# 32| Type = [Char32Type] char32_t
|
|
# 32| getVariable().getInitializer(): [Initializer] initializer for c32
|
|
# 32| getExpr(): [Literal] 65
|
|
# 32| Type = [Char32Type] char32_t
|
|
# 32| Value = [Literal] 65
|
|
# 32| ValueCategory = prvalue
|
|
# 34| getStmt(22): [DeclStmt] declaration
|
|
# 34| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f_i
|
|
# 34| Type = [FloatType] float
|
|
# 34| getVariable().getInitializer(): [Initializer] initializer for f_i
|
|
# 34| getExpr(): [Literal] 1
|
|
# 34| Type = [IntType] int
|
|
# 34| Value = [Literal] 1
|
|
# 34| ValueCategory = prvalue
|
|
# 34| getExpr().getFullyConverted(): [CStyleCast] (float)...
|
|
# 34| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 34| Type = [FloatType] float
|
|
# 34| Value = [CStyleCast] 1.0
|
|
# 34| ValueCategory = prvalue
|
|
# 35| getStmt(23): [DeclStmt] declaration
|
|
# 35| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f_f
|
|
# 35| Type = [FloatType] float
|
|
# 35| getVariable().getInitializer(): [Initializer] initializer for f_f
|
|
# 35| getExpr(): [Literal] 1.0
|
|
# 35| Type = [FloatType] float
|
|
# 35| Value = [Literal] 1.0
|
|
# 35| ValueCategory = prvalue
|
|
# 36| getStmt(24): [DeclStmt] declaration
|
|
# 36| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f_d
|
|
# 36| Type = [FloatType] float
|
|
# 36| getVariable().getInitializer(): [Initializer] initializer for f_d
|
|
# 36| getExpr(): [Literal] 1.0
|
|
# 36| Type = [DoubleType] double
|
|
# 36| Value = [Literal] 1.0
|
|
# 36| ValueCategory = prvalue
|
|
# 36| getExpr().getFullyConverted(): [CStyleCast] (float)...
|
|
# 36| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 36| Type = [FloatType] float
|
|
# 36| Value = [CStyleCast] 1.0
|
|
# 36| ValueCategory = prvalue
|
|
# 38| getStmt(25): [DeclStmt] declaration
|
|
# 38| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d_i
|
|
# 38| Type = [DoubleType] double
|
|
# 38| getVariable().getInitializer(): [Initializer] initializer for d_i
|
|
# 38| getExpr(): [Literal] 1
|
|
# 38| Type = [IntType] int
|
|
# 38| Value = [Literal] 1
|
|
# 38| ValueCategory = prvalue
|
|
# 38| getExpr().getFullyConverted(): [CStyleCast] (double)...
|
|
# 38| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 38| Type = [DoubleType] double
|
|
# 38| Value = [CStyleCast] 1.0
|
|
# 38| ValueCategory = prvalue
|
|
# 39| getStmt(26): [DeclStmt] declaration
|
|
# 39| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d_f
|
|
# 39| Type = [DoubleType] double
|
|
# 39| getVariable().getInitializer(): [Initializer] initializer for d_f
|
|
# 39| getExpr(): [Literal] 1.0
|
|
# 39| Type = [FloatType] float
|
|
# 39| Value = [Literal] 1.0
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getExpr().getFullyConverted(): [CStyleCast] (double)...
|
|
# 39| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 39| Type = [DoubleType] double
|
|
# 39| Value = [CStyleCast] 1.0
|
|
# 39| ValueCategory = prvalue
|
|
# 40| getStmt(27): [DeclStmt] declaration
|
|
# 40| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d_d
|
|
# 40| Type = [DoubleType] double
|
|
# 40| getVariable().getInitializer(): [Initializer] initializer for d_d
|
|
# 40| getExpr(): [Literal] 1.0
|
|
# 40| Type = [DoubleType] double
|
|
# 40| Value = [Literal] 1.0
|
|
# 40| ValueCategory = prvalue
|
|
# 41| getStmt(28): [ReturnStmt] return ...
|
|
# 43| [TopLevelFunction] void Foo()
|
|
# 43| <params>:
|
|
# 43| getEntryPoint(): [BlockStmt] { ... }
|
|
# 44| getStmt(0): [DeclStmt] declaration
|
|
# 44| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 44| Type = [IntType] int
|
|
# 44| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 44| getExpr(): [AddExpr] ... + ...
|
|
# 44| Type = [IntType] int
|
|
# 44| Value = [AddExpr] 17
|
|
# 44| ValueCategory = prvalue
|
|
# 44| getLeftOperand(): [Literal] 5
|
|
# 44| Type = [IntType] int
|
|
# 44| Value = [Literal] 5
|
|
# 44| ValueCategory = prvalue
|
|
# 44| getRightOperand(): [Literal] 12
|
|
# 44| Type = [IntType] int
|
|
# 44| Value = [Literal] 12
|
|
# 44| ValueCategory = prvalue
|
|
# 45| getStmt(1): [DeclStmt] declaration
|
|
# 45| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 45| Type = [ShortType] short
|
|
# 45| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 45| getExpr(): [Literal] 7
|
|
# 45| Type = [IntType] int
|
|
# 45| Value = [Literal] 7
|
|
# 45| ValueCategory = prvalue
|
|
# 45| getExpr().getFullyConverted(): [CStyleCast] (short)...
|
|
# 45| Conversion = [IntegralConversion] integral conversion
|
|
# 45| Type = [ShortType] short
|
|
# 45| Value = [CStyleCast] 7
|
|
# 45| ValueCategory = prvalue
|
|
# 46| getStmt(2): [ExprStmt] ExprStmt
|
|
# 46| getExpr(): [AssignExpr] ... = ...
|
|
# 46| Type = [ShortType] short
|
|
# 46| ValueCategory = lvalue
|
|
# 46| getLValue(): [VariableAccess] y
|
|
# 46| Type = [ShortType] short
|
|
# 46| ValueCategory = lvalue
|
|
# 46| getRValue(): [AddExpr] ... + ...
|
|
# 46| Type = [IntType] int
|
|
# 46| ValueCategory = prvalue
|
|
# 46| getLeftOperand(): [VariableAccess] x
|
|
# 46| Type = [IntType] int
|
|
# 46| ValueCategory = prvalue(load)
|
|
# 46| getRightOperand(): [VariableAccess] y
|
|
# 46| Type = [ShortType] short
|
|
# 46| ValueCategory = prvalue(load)
|
|
# 46| getRightOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 46| Conversion = [IntegralConversion] integral conversion
|
|
# 46| Type = [IntType] int
|
|
# 46| ValueCategory = prvalue
|
|
# 46| getRValue().getFullyConverted(): [CStyleCast] (short)...
|
|
# 46| Conversion = [IntegralConversion] integral conversion
|
|
# 46| Type = [ShortType] short
|
|
# 46| ValueCategory = prvalue
|
|
# 47| getStmt(3): [ExprStmt] ExprStmt
|
|
# 47| getExpr(): [AssignExpr] ... = ...
|
|
# 47| Type = [IntType] int
|
|
# 47| ValueCategory = lvalue
|
|
# 47| getLValue(): [VariableAccess] x
|
|
# 47| Type = [IntType] int
|
|
# 47| ValueCategory = lvalue
|
|
# 47| getRValue(): [MulExpr] ... * ...
|
|
# 47| Type = [IntType] int
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getLeftOperand(): [VariableAccess] x
|
|
# 47| Type = [IntType] int
|
|
# 47| ValueCategory = prvalue(load)
|
|
# 47| getRightOperand(): [VariableAccess] y
|
|
# 47| Type = [ShortType] short
|
|
# 47| ValueCategory = prvalue(load)
|
|
# 47| getRightOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 47| Conversion = [IntegralConversion] integral conversion
|
|
# 47| Type = [IntType] int
|
|
# 47| ValueCategory = prvalue
|
|
# 48| getStmt(4): [ReturnStmt] return ...
|
|
# 50| [TopLevelFunction] void IntegerOps(int, int)
|
|
# 50| <params>:
|
|
# 50| getParameter(0): [Parameter] x
|
|
# 50| Type = [IntType] int
|
|
# 50| getParameter(1): [Parameter] y
|
|
# 50| Type = [IntType] int
|
|
# 50| getEntryPoint(): [BlockStmt] { ... }
|
|
# 51| getStmt(0): [DeclStmt] declaration
|
|
# 51| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 51| Type = [IntType] int
|
|
# 53| getStmt(1): [ExprStmt] ExprStmt
|
|
# 53| getExpr(): [AssignExpr] ... = ...
|
|
# 53| Type = [IntType] int
|
|
# 53| ValueCategory = lvalue
|
|
# 53| getLValue(): [VariableAccess] z
|
|
# 53| Type = [IntType] int
|
|
# 53| ValueCategory = lvalue
|
|
# 53| getRValue(): [AddExpr] ... + ...
|
|
# 53| Type = [IntType] int
|
|
# 53| ValueCategory = prvalue
|
|
# 53| getLeftOperand(): [VariableAccess] x
|
|
# 53| Type = [IntType] int
|
|
# 53| ValueCategory = prvalue(load)
|
|
# 53| getRightOperand(): [VariableAccess] y
|
|
# 53| Type = [IntType] int
|
|
# 53| ValueCategory = prvalue(load)
|
|
# 54| getStmt(2): [ExprStmt] ExprStmt
|
|
# 54| getExpr(): [AssignExpr] ... = ...
|
|
# 54| Type = [IntType] int
|
|
# 54| ValueCategory = lvalue
|
|
# 54| getLValue(): [VariableAccess] z
|
|
# 54| Type = [IntType] int
|
|
# 54| ValueCategory = lvalue
|
|
# 54| getRValue(): [SubExpr] ... - ...
|
|
# 54| Type = [IntType] int
|
|
# 54| ValueCategory = prvalue
|
|
# 54| getLeftOperand(): [VariableAccess] x
|
|
# 54| Type = [IntType] int
|
|
# 54| ValueCategory = prvalue(load)
|
|
# 54| getRightOperand(): [VariableAccess] y
|
|
# 54| Type = [IntType] int
|
|
# 54| ValueCategory = prvalue(load)
|
|
# 55| getStmt(3): [ExprStmt] ExprStmt
|
|
# 55| getExpr(): [AssignExpr] ... = ...
|
|
# 55| Type = [IntType] int
|
|
# 55| ValueCategory = lvalue
|
|
# 55| getLValue(): [VariableAccess] z
|
|
# 55| Type = [IntType] int
|
|
# 55| ValueCategory = lvalue
|
|
# 55| getRValue(): [MulExpr] ... * ...
|
|
# 55| Type = [IntType] int
|
|
# 55| ValueCategory = prvalue
|
|
# 55| getLeftOperand(): [VariableAccess] x
|
|
# 55| Type = [IntType] int
|
|
# 55| ValueCategory = prvalue(load)
|
|
# 55| getRightOperand(): [VariableAccess] y
|
|
# 55| Type = [IntType] int
|
|
# 55| ValueCategory = prvalue(load)
|
|
# 56| getStmt(4): [ExprStmt] ExprStmt
|
|
# 56| getExpr(): [AssignExpr] ... = ...
|
|
# 56| Type = [IntType] int
|
|
# 56| ValueCategory = lvalue
|
|
# 56| getLValue(): [VariableAccess] z
|
|
# 56| Type = [IntType] int
|
|
# 56| ValueCategory = lvalue
|
|
# 56| getRValue(): [DivExpr] ... / ...
|
|
# 56| Type = [IntType] int
|
|
# 56| ValueCategory = prvalue
|
|
# 56| getLeftOperand(): [VariableAccess] x
|
|
# 56| Type = [IntType] int
|
|
# 56| ValueCategory = prvalue(load)
|
|
# 56| getRightOperand(): [VariableAccess] y
|
|
# 56| Type = [IntType] int
|
|
# 56| ValueCategory = prvalue(load)
|
|
# 57| getStmt(5): [ExprStmt] ExprStmt
|
|
# 57| getExpr(): [AssignExpr] ... = ...
|
|
# 57| Type = [IntType] int
|
|
# 57| ValueCategory = lvalue
|
|
# 57| getLValue(): [VariableAccess] z
|
|
# 57| Type = [IntType] int
|
|
# 57| ValueCategory = lvalue
|
|
# 57| getRValue(): [RemExpr] ... % ...
|
|
# 57| Type = [IntType] int
|
|
# 57| ValueCategory = prvalue
|
|
# 57| getLeftOperand(): [VariableAccess] x
|
|
# 57| Type = [IntType] int
|
|
# 57| ValueCategory = prvalue(load)
|
|
# 57| getRightOperand(): [VariableAccess] y
|
|
# 57| Type = [IntType] int
|
|
# 57| ValueCategory = prvalue(load)
|
|
# 59| getStmt(6): [ExprStmt] ExprStmt
|
|
# 59| getExpr(): [AssignExpr] ... = ...
|
|
# 59| Type = [IntType] int
|
|
# 59| ValueCategory = lvalue
|
|
# 59| getLValue(): [VariableAccess] z
|
|
# 59| Type = [IntType] int
|
|
# 59| ValueCategory = lvalue
|
|
# 59| getRValue(): [BitwiseAndExpr] ... & ...
|
|
# 59| Type = [IntType] int
|
|
# 59| ValueCategory = prvalue
|
|
# 59| getLeftOperand(): [VariableAccess] x
|
|
# 59| Type = [IntType] int
|
|
# 59| ValueCategory = prvalue(load)
|
|
# 59| getRightOperand(): [VariableAccess] y
|
|
# 59| Type = [IntType] int
|
|
# 59| ValueCategory = prvalue(load)
|
|
# 60| getStmt(7): [ExprStmt] ExprStmt
|
|
# 60| getExpr(): [AssignExpr] ... = ...
|
|
# 60| Type = [IntType] int
|
|
# 60| ValueCategory = lvalue
|
|
# 60| getLValue(): [VariableAccess] z
|
|
# 60| Type = [IntType] int
|
|
# 60| ValueCategory = lvalue
|
|
# 60| getRValue(): [BitwiseOrExpr] ... | ...
|
|
# 60| Type = [IntType] int
|
|
# 60| ValueCategory = prvalue
|
|
# 60| getLeftOperand(): [VariableAccess] x
|
|
# 60| Type = [IntType] int
|
|
# 60| ValueCategory = prvalue(load)
|
|
# 60| getRightOperand(): [VariableAccess] y
|
|
# 60| Type = [IntType] int
|
|
# 60| ValueCategory = prvalue(load)
|
|
# 61| getStmt(8): [ExprStmt] ExprStmt
|
|
# 61| getExpr(): [AssignExpr] ... = ...
|
|
# 61| Type = [IntType] int
|
|
# 61| ValueCategory = lvalue
|
|
# 61| getLValue(): [VariableAccess] z
|
|
# 61| Type = [IntType] int
|
|
# 61| ValueCategory = lvalue
|
|
# 61| getRValue(): [BitwiseXorExpr] ... ^ ...
|
|
# 61| Type = [IntType] int
|
|
# 61| ValueCategory = prvalue
|
|
# 61| getLeftOperand(): [VariableAccess] x
|
|
# 61| Type = [IntType] int
|
|
# 61| ValueCategory = prvalue(load)
|
|
# 61| getRightOperand(): [VariableAccess] y
|
|
# 61| Type = [IntType] int
|
|
# 61| ValueCategory = prvalue(load)
|
|
# 63| getStmt(9): [ExprStmt] ExprStmt
|
|
# 63| getExpr(): [AssignExpr] ... = ...
|
|
# 63| Type = [IntType] int
|
|
# 63| ValueCategory = lvalue
|
|
# 63| getLValue(): [VariableAccess] z
|
|
# 63| Type = [IntType] int
|
|
# 63| ValueCategory = lvalue
|
|
# 63| getRValue(): [LShiftExpr] ... << ...
|
|
# 63| Type = [IntType] int
|
|
# 63| ValueCategory = prvalue
|
|
# 63| getLeftOperand(): [VariableAccess] x
|
|
# 63| Type = [IntType] int
|
|
# 63| ValueCategory = prvalue(load)
|
|
# 63| getRightOperand(): [VariableAccess] y
|
|
# 63| Type = [IntType] int
|
|
# 63| ValueCategory = prvalue(load)
|
|
# 64| getStmt(10): [ExprStmt] ExprStmt
|
|
# 64| getExpr(): [AssignExpr] ... = ...
|
|
# 64| Type = [IntType] int
|
|
# 64| ValueCategory = lvalue
|
|
# 64| getLValue(): [VariableAccess] z
|
|
# 64| Type = [IntType] int
|
|
# 64| ValueCategory = lvalue
|
|
# 64| getRValue(): [RShiftExpr] ... >> ...
|
|
# 64| Type = [IntType] int
|
|
# 64| ValueCategory = prvalue
|
|
# 64| getLeftOperand(): [VariableAccess] x
|
|
# 64| Type = [IntType] int
|
|
# 64| ValueCategory = prvalue(load)
|
|
# 64| getRightOperand(): [VariableAccess] y
|
|
# 64| Type = [IntType] int
|
|
# 64| ValueCategory = prvalue(load)
|
|
# 66| getStmt(11): [ExprStmt] ExprStmt
|
|
# 66| getExpr(): [AssignExpr] ... = ...
|
|
# 66| Type = [IntType] int
|
|
# 66| ValueCategory = lvalue
|
|
# 66| getLValue(): [VariableAccess] z
|
|
# 66| Type = [IntType] int
|
|
# 66| ValueCategory = lvalue
|
|
# 66| getRValue(): [VariableAccess] x
|
|
# 66| Type = [IntType] int
|
|
# 66| ValueCategory = prvalue(load)
|
|
# 68| getStmt(12): [ExprStmt] ExprStmt
|
|
# 68| getExpr(): [AssignAddExpr] ... += ...
|
|
# 68| Type = [IntType] int
|
|
# 68| ValueCategory = lvalue
|
|
# 68| getLValue(): [VariableAccess] z
|
|
# 68| Type = [IntType] int
|
|
# 68| ValueCategory = lvalue
|
|
# 68| getRValue(): [VariableAccess] x
|
|
# 68| Type = [IntType] int
|
|
# 68| ValueCategory = prvalue(load)
|
|
# 69| getStmt(13): [ExprStmt] ExprStmt
|
|
# 69| getExpr(): [AssignSubExpr] ... -= ...
|
|
# 69| Type = [IntType] int
|
|
# 69| ValueCategory = lvalue
|
|
# 69| getLValue(): [VariableAccess] z
|
|
# 69| Type = [IntType] int
|
|
# 69| ValueCategory = lvalue
|
|
# 69| getRValue(): [VariableAccess] x
|
|
# 69| Type = [IntType] int
|
|
# 69| ValueCategory = prvalue(load)
|
|
# 70| getStmt(14): [ExprStmt] ExprStmt
|
|
# 70| getExpr(): [AssignMulExpr] ... *= ...
|
|
# 70| Type = [IntType] int
|
|
# 70| ValueCategory = lvalue
|
|
# 70| getLValue(): [VariableAccess] z
|
|
# 70| Type = [IntType] int
|
|
# 70| ValueCategory = lvalue
|
|
# 70| getRValue(): [VariableAccess] x
|
|
# 70| Type = [IntType] int
|
|
# 70| ValueCategory = prvalue(load)
|
|
# 71| getStmt(15): [ExprStmt] ExprStmt
|
|
# 71| getExpr(): [AssignDivExpr] ... /= ...
|
|
# 71| Type = [IntType] int
|
|
# 71| ValueCategory = lvalue
|
|
# 71| getLValue(): [VariableAccess] z
|
|
# 71| Type = [IntType] int
|
|
# 71| ValueCategory = lvalue
|
|
# 71| getRValue(): [VariableAccess] x
|
|
# 71| Type = [IntType] int
|
|
# 71| ValueCategory = prvalue(load)
|
|
# 72| getStmt(16): [ExprStmt] ExprStmt
|
|
# 72| getExpr(): [AssignRemExpr] ... %= ...
|
|
# 72| Type = [IntType] int
|
|
# 72| ValueCategory = lvalue
|
|
# 72| getLValue(): [VariableAccess] z
|
|
# 72| Type = [IntType] int
|
|
# 72| ValueCategory = lvalue
|
|
# 72| getRValue(): [VariableAccess] x
|
|
# 72| Type = [IntType] int
|
|
# 72| ValueCategory = prvalue(load)
|
|
# 74| getStmt(17): [ExprStmt] ExprStmt
|
|
# 74| getExpr(): [AssignAndExpr] ... &= ...
|
|
# 74| Type = [IntType] int
|
|
# 74| ValueCategory = lvalue
|
|
# 74| getLValue(): [VariableAccess] z
|
|
# 74| Type = [IntType] int
|
|
# 74| ValueCategory = lvalue
|
|
# 74| getRValue(): [VariableAccess] x
|
|
# 74| Type = [IntType] int
|
|
# 74| ValueCategory = prvalue(load)
|
|
# 75| getStmt(18): [ExprStmt] ExprStmt
|
|
# 75| getExpr(): [AssignOrExpr] ... |= ...
|
|
# 75| Type = [IntType] int
|
|
# 75| ValueCategory = lvalue
|
|
# 75| getLValue(): [VariableAccess] z
|
|
# 75| Type = [IntType] int
|
|
# 75| ValueCategory = lvalue
|
|
# 75| getRValue(): [VariableAccess] x
|
|
# 75| Type = [IntType] int
|
|
# 75| ValueCategory = prvalue(load)
|
|
# 76| getStmt(19): [ExprStmt] ExprStmt
|
|
# 76| getExpr(): [AssignXorExpr] ... ^= ...
|
|
# 76| Type = [IntType] int
|
|
# 76| ValueCategory = lvalue
|
|
# 76| getLValue(): [VariableAccess] z
|
|
# 76| Type = [IntType] int
|
|
# 76| ValueCategory = lvalue
|
|
# 76| getRValue(): [VariableAccess] x
|
|
# 76| Type = [IntType] int
|
|
# 76| ValueCategory = prvalue(load)
|
|
# 78| getStmt(20): [ExprStmt] ExprStmt
|
|
# 78| getExpr(): [AssignLShiftExpr] ... <<= ...
|
|
# 78| Type = [IntType] int
|
|
# 78| ValueCategory = lvalue
|
|
# 78| getLValue(): [VariableAccess] z
|
|
# 78| Type = [IntType] int
|
|
# 78| ValueCategory = lvalue
|
|
# 78| getRValue(): [VariableAccess] x
|
|
# 78| Type = [IntType] int
|
|
# 78| ValueCategory = prvalue(load)
|
|
# 79| getStmt(21): [ExprStmt] ExprStmt
|
|
# 79| getExpr(): [AssignRShiftExpr] ... >>= ...
|
|
# 79| Type = [IntType] int
|
|
# 79| ValueCategory = lvalue
|
|
# 79| getLValue(): [VariableAccess] z
|
|
# 79| Type = [IntType] int
|
|
# 79| ValueCategory = lvalue
|
|
# 79| getRValue(): [VariableAccess] x
|
|
# 79| Type = [IntType] int
|
|
# 79| ValueCategory = prvalue(load)
|
|
# 81| getStmt(22): [ExprStmt] ExprStmt
|
|
# 81| getExpr(): [AssignExpr] ... = ...
|
|
# 81| Type = [IntType] int
|
|
# 81| ValueCategory = lvalue
|
|
# 81| getLValue(): [VariableAccess] z
|
|
# 81| Type = [IntType] int
|
|
# 81| ValueCategory = lvalue
|
|
# 81| getRValue(): [UnaryPlusExpr] + ...
|
|
# 81| Type = [IntType] int
|
|
# 81| ValueCategory = prvalue
|
|
# 81| getOperand(): [VariableAccess] x
|
|
# 81| Type = [IntType] int
|
|
# 81| ValueCategory = prvalue(load)
|
|
# 82| getStmt(23): [ExprStmt] ExprStmt
|
|
# 82| getExpr(): [AssignExpr] ... = ...
|
|
# 82| Type = [IntType] int
|
|
# 82| ValueCategory = lvalue
|
|
# 82| getLValue(): [VariableAccess] z
|
|
# 82| Type = [IntType] int
|
|
# 82| ValueCategory = lvalue
|
|
# 82| getRValue(): [UnaryMinusExpr] - ...
|
|
# 82| Type = [IntType] int
|
|
# 82| ValueCategory = prvalue
|
|
# 82| getOperand(): [VariableAccess] x
|
|
# 82| Type = [IntType] int
|
|
# 82| ValueCategory = prvalue(load)
|
|
# 83| getStmt(24): [ExprStmt] ExprStmt
|
|
# 83| getExpr(): [AssignExpr] ... = ...
|
|
# 83| Type = [IntType] int
|
|
# 83| ValueCategory = lvalue
|
|
# 83| getLValue(): [VariableAccess] z
|
|
# 83| Type = [IntType] int
|
|
# 83| ValueCategory = lvalue
|
|
# 83| getRValue(): [ComplementExpr] ~ ...
|
|
# 83| Type = [IntType] int
|
|
# 83| ValueCategory = prvalue
|
|
# 83| getOperand(): [VariableAccess] x
|
|
# 83| Type = [IntType] int
|
|
# 83| ValueCategory = prvalue(load)
|
|
# 84| getStmt(25): [ExprStmt] ExprStmt
|
|
# 84| getExpr(): [AssignExpr] ... = ...
|
|
# 84| Type = [IntType] int
|
|
# 84| ValueCategory = lvalue
|
|
# 84| getLValue(): [VariableAccess] z
|
|
# 84| Type = [IntType] int
|
|
# 84| ValueCategory = lvalue
|
|
# 84| getRValue(): [NotExpr] ! ...
|
|
# 84| Type = [BoolType] bool
|
|
# 84| ValueCategory = prvalue
|
|
# 84| getOperand(): [VariableAccess] x
|
|
# 84| Type = [IntType] int
|
|
# 84| ValueCategory = prvalue(load)
|
|
# 84| getOperand().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 84| Conversion = [BoolConversion] conversion to bool
|
|
# 84| Type = [BoolType] bool
|
|
# 84| ValueCategory = prvalue
|
|
# 84| getRValue().getFullyConverted(): [CStyleCast] (int)...
|
|
# 84| Conversion = [IntegralConversion] integral conversion
|
|
# 84| Type = [IntType] int
|
|
# 84| ValueCategory = prvalue
|
|
# 85| getStmt(26): [ReturnStmt] return ...
|
|
# 87| [TopLevelFunction] void IntegerCompare(int, int)
|
|
# 87| <params>:
|
|
# 87| getParameter(0): [Parameter] x
|
|
# 87| Type = [IntType] int
|
|
# 87| getParameter(1): [Parameter] y
|
|
# 87| Type = [IntType] int
|
|
# 87| getEntryPoint(): [BlockStmt] { ... }
|
|
# 88| getStmt(0): [DeclStmt] declaration
|
|
# 88| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 88| Type = [BoolType] bool
|
|
# 90| getStmt(1): [ExprStmt] ExprStmt
|
|
# 90| getExpr(): [AssignExpr] ... = ...
|
|
# 90| Type = [BoolType] bool
|
|
# 90| ValueCategory = lvalue
|
|
# 90| getLValue(): [VariableAccess] b
|
|
# 90| Type = [BoolType] bool
|
|
# 90| ValueCategory = lvalue
|
|
# 90| getRValue(): [EQExpr] ... == ...
|
|
# 90| Type = [BoolType] bool
|
|
# 90| ValueCategory = prvalue
|
|
# 90| getLeftOperand(): [VariableAccess] x
|
|
# 90| Type = [IntType] int
|
|
# 90| ValueCategory = prvalue(load)
|
|
# 90| getRightOperand(): [VariableAccess] y
|
|
# 90| Type = [IntType] int
|
|
# 90| ValueCategory = prvalue(load)
|
|
# 91| getStmt(2): [ExprStmt] ExprStmt
|
|
# 91| getExpr(): [AssignExpr] ... = ...
|
|
# 91| Type = [BoolType] bool
|
|
# 91| ValueCategory = lvalue
|
|
# 91| getLValue(): [VariableAccess] b
|
|
# 91| Type = [BoolType] bool
|
|
# 91| ValueCategory = lvalue
|
|
# 91| getRValue(): [NEExpr] ... != ...
|
|
# 91| Type = [BoolType] bool
|
|
# 91| ValueCategory = prvalue
|
|
# 91| getLeftOperand(): [VariableAccess] x
|
|
# 91| Type = [IntType] int
|
|
# 91| ValueCategory = prvalue(load)
|
|
# 91| getRightOperand(): [VariableAccess] y
|
|
# 91| Type = [IntType] int
|
|
# 91| ValueCategory = prvalue(load)
|
|
# 92| getStmt(3): [ExprStmt] ExprStmt
|
|
# 92| getExpr(): [AssignExpr] ... = ...
|
|
# 92| Type = [BoolType] bool
|
|
# 92| ValueCategory = lvalue
|
|
# 92| getLValue(): [VariableAccess] b
|
|
# 92| Type = [BoolType] bool
|
|
# 92| ValueCategory = lvalue
|
|
# 92| getRValue(): [LTExpr] ... < ...
|
|
# 92| Type = [BoolType] bool
|
|
# 92| ValueCategory = prvalue
|
|
# 92| getLesserOperand(): [VariableAccess] x
|
|
# 92| Type = [IntType] int
|
|
# 92| ValueCategory = prvalue(load)
|
|
# 92| getGreaterOperand(): [VariableAccess] y
|
|
# 92| Type = [IntType] int
|
|
# 92| ValueCategory = prvalue(load)
|
|
# 93| getStmt(4): [ExprStmt] ExprStmt
|
|
# 93| getExpr(): [AssignExpr] ... = ...
|
|
# 93| Type = [BoolType] bool
|
|
# 93| ValueCategory = lvalue
|
|
# 93| getLValue(): [VariableAccess] b
|
|
# 93| Type = [BoolType] bool
|
|
# 93| ValueCategory = lvalue
|
|
# 93| getRValue(): [GTExpr] ... > ...
|
|
# 93| Type = [BoolType] bool
|
|
# 93| ValueCategory = prvalue
|
|
# 93| getGreaterOperand(): [VariableAccess] x
|
|
# 93| Type = [IntType] int
|
|
# 93| ValueCategory = prvalue(load)
|
|
# 93| getLesserOperand(): [VariableAccess] y
|
|
# 93| Type = [IntType] int
|
|
# 93| ValueCategory = prvalue(load)
|
|
# 94| getStmt(5): [ExprStmt] ExprStmt
|
|
# 94| getExpr(): [AssignExpr] ... = ...
|
|
# 94| Type = [BoolType] bool
|
|
# 94| ValueCategory = lvalue
|
|
# 94| getLValue(): [VariableAccess] b
|
|
# 94| Type = [BoolType] bool
|
|
# 94| ValueCategory = lvalue
|
|
# 94| getRValue(): [LEExpr] ... <= ...
|
|
# 94| Type = [BoolType] bool
|
|
# 94| ValueCategory = prvalue
|
|
# 94| getLesserOperand(): [VariableAccess] x
|
|
# 94| Type = [IntType] int
|
|
# 94| ValueCategory = prvalue(load)
|
|
# 94| getGreaterOperand(): [VariableAccess] y
|
|
# 94| Type = [IntType] int
|
|
# 94| ValueCategory = prvalue(load)
|
|
# 95| getStmt(6): [ExprStmt] ExprStmt
|
|
# 95| getExpr(): [AssignExpr] ... = ...
|
|
# 95| Type = [BoolType] bool
|
|
# 95| ValueCategory = lvalue
|
|
# 95| getLValue(): [VariableAccess] b
|
|
# 95| Type = [BoolType] bool
|
|
# 95| ValueCategory = lvalue
|
|
# 95| getRValue(): [GEExpr] ... >= ...
|
|
# 95| Type = [BoolType] bool
|
|
# 95| ValueCategory = prvalue
|
|
# 95| getGreaterOperand(): [VariableAccess] x
|
|
# 95| Type = [IntType] int
|
|
# 95| ValueCategory = prvalue(load)
|
|
# 95| getLesserOperand(): [VariableAccess] y
|
|
# 95| Type = [IntType] int
|
|
# 95| ValueCategory = prvalue(load)
|
|
# 96| getStmt(7): [ReturnStmt] return ...
|
|
# 98| [TopLevelFunction] void IntegerCrement(int)
|
|
# 98| <params>:
|
|
# 98| getParameter(0): [Parameter] x
|
|
# 98| Type = [IntType] int
|
|
# 98| getEntryPoint(): [BlockStmt] { ... }
|
|
# 99| getStmt(0): [DeclStmt] declaration
|
|
# 99| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 99| Type = [IntType] int
|
|
# 101| getStmt(1): [ExprStmt] ExprStmt
|
|
# 101| getExpr(): [AssignExpr] ... = ...
|
|
# 101| Type = [IntType] int
|
|
# 101| ValueCategory = lvalue
|
|
# 101| getLValue(): [VariableAccess] y
|
|
# 101| Type = [IntType] int
|
|
# 101| ValueCategory = lvalue
|
|
# 101| getRValue(): [PrefixIncrExpr] ++ ...
|
|
# 101| Type = [IntType] int
|
|
# 101| ValueCategory = prvalue(load)
|
|
# 101| getOperand(): [VariableAccess] x
|
|
# 101| Type = [IntType] int
|
|
# 101| ValueCategory = lvalue
|
|
# 102| getStmt(2): [ExprStmt] ExprStmt
|
|
# 102| getExpr(): [AssignExpr] ... = ...
|
|
# 102| Type = [IntType] int
|
|
# 102| ValueCategory = lvalue
|
|
# 102| getLValue(): [VariableAccess] y
|
|
# 102| Type = [IntType] int
|
|
# 102| ValueCategory = lvalue
|
|
# 102| getRValue(): [PrefixDecrExpr] -- ...
|
|
# 102| Type = [IntType] int
|
|
# 102| ValueCategory = prvalue(load)
|
|
# 102| getOperand(): [VariableAccess] x
|
|
# 102| Type = [IntType] int
|
|
# 102| ValueCategory = lvalue
|
|
# 103| getStmt(3): [ExprStmt] ExprStmt
|
|
# 103| getExpr(): [AssignExpr] ... = ...
|
|
# 103| Type = [IntType] int
|
|
# 103| ValueCategory = lvalue
|
|
# 103| getLValue(): [VariableAccess] y
|
|
# 103| Type = [IntType] int
|
|
# 103| ValueCategory = lvalue
|
|
# 103| getRValue(): [PostfixIncrExpr] ... ++
|
|
# 103| Type = [IntType] int
|
|
# 103| ValueCategory = prvalue
|
|
# 103| getOperand(): [VariableAccess] x
|
|
# 103| Type = [IntType] int
|
|
# 103| ValueCategory = lvalue
|
|
# 104| getStmt(4): [ExprStmt] ExprStmt
|
|
# 104| getExpr(): [AssignExpr] ... = ...
|
|
# 104| Type = [IntType] int
|
|
# 104| ValueCategory = lvalue
|
|
# 104| getLValue(): [VariableAccess] y
|
|
# 104| Type = [IntType] int
|
|
# 104| ValueCategory = lvalue
|
|
# 104| getRValue(): [PostfixDecrExpr] ... --
|
|
# 104| Type = [IntType] int
|
|
# 104| ValueCategory = prvalue
|
|
# 104| getOperand(): [VariableAccess] x
|
|
# 104| Type = [IntType] int
|
|
# 104| ValueCategory = lvalue
|
|
# 105| getStmt(5): [ReturnStmt] return ...
|
|
# 107| [TopLevelFunction] void IntegerCrement_LValue(int)
|
|
# 107| <params>:
|
|
# 107| getParameter(0): [Parameter] x
|
|
# 107| Type = [IntType] int
|
|
# 107| getEntryPoint(): [BlockStmt] { ... }
|
|
# 108| getStmt(0): [DeclStmt] declaration
|
|
# 108| getDeclarationEntry(0): [VariableDeclarationEntry] definition of p
|
|
# 108| Type = [IntPointerType] int *
|
|
# 110| getStmt(1): [ExprStmt] ExprStmt
|
|
# 110| getExpr(): [AssignExpr] ... = ...
|
|
# 110| Type = [IntPointerType] int *
|
|
# 110| ValueCategory = lvalue
|
|
# 110| getLValue(): [VariableAccess] p
|
|
# 110| Type = [IntPointerType] int *
|
|
# 110| ValueCategory = lvalue
|
|
# 110| getRValue(): [AddressOfExpr] & ...
|
|
# 110| Type = [IntPointerType] int *
|
|
# 110| ValueCategory = prvalue
|
|
# 110| getOperand(): [PrefixIncrExpr] ++ ...
|
|
# 110| Type = [IntType] int
|
|
# 110| ValueCategory = lvalue
|
|
# 110| getOperand(): [VariableAccess] x
|
|
# 110| Type = [IntType] int
|
|
# 110| ValueCategory = lvalue
|
|
# 110| getOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 110| Type = [IntType] int
|
|
# 110| ValueCategory = lvalue
|
|
# 111| getStmt(2): [ExprStmt] ExprStmt
|
|
# 111| getExpr(): [AssignExpr] ... = ...
|
|
# 111| Type = [IntPointerType] int *
|
|
# 111| ValueCategory = lvalue
|
|
# 111| getLValue(): [VariableAccess] p
|
|
# 111| Type = [IntPointerType] int *
|
|
# 111| ValueCategory = lvalue
|
|
# 111| getRValue(): [AddressOfExpr] & ...
|
|
# 111| Type = [IntPointerType] int *
|
|
# 111| ValueCategory = prvalue
|
|
# 111| getOperand(): [PrefixDecrExpr] -- ...
|
|
# 111| Type = [IntType] int
|
|
# 111| ValueCategory = lvalue
|
|
# 111| getOperand(): [VariableAccess] x
|
|
# 111| Type = [IntType] int
|
|
# 111| ValueCategory = lvalue
|
|
# 111| getOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 111| Type = [IntType] int
|
|
# 111| ValueCategory = lvalue
|
|
# 112| getStmt(3): [ReturnStmt] return ...
|
|
# 114| [TopLevelFunction] void FloatOps(double, double)
|
|
# 114| <params>:
|
|
# 114| getParameter(0): [Parameter] x
|
|
# 114| Type = [DoubleType] double
|
|
# 114| getParameter(1): [Parameter] y
|
|
# 114| Type = [DoubleType] double
|
|
# 114| getEntryPoint(): [BlockStmt] { ... }
|
|
# 115| getStmt(0): [DeclStmt] declaration
|
|
# 115| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 115| Type = [DoubleType] double
|
|
# 117| getStmt(1): [ExprStmt] ExprStmt
|
|
# 117| getExpr(): [AssignExpr] ... = ...
|
|
# 117| Type = [DoubleType] double
|
|
# 117| ValueCategory = lvalue
|
|
# 117| getLValue(): [VariableAccess] z
|
|
# 117| Type = [DoubleType] double
|
|
# 117| ValueCategory = lvalue
|
|
# 117| getRValue(): [AddExpr] ... + ...
|
|
# 117| Type = [DoubleType] double
|
|
# 117| ValueCategory = prvalue
|
|
# 117| getLeftOperand(): [VariableAccess] x
|
|
# 117| Type = [DoubleType] double
|
|
# 117| ValueCategory = prvalue(load)
|
|
# 117| getRightOperand(): [VariableAccess] y
|
|
# 117| Type = [DoubleType] double
|
|
# 117| ValueCategory = prvalue(load)
|
|
# 118| getStmt(2): [ExprStmt] ExprStmt
|
|
# 118| getExpr(): [AssignExpr] ... = ...
|
|
# 118| Type = [DoubleType] double
|
|
# 118| ValueCategory = lvalue
|
|
# 118| getLValue(): [VariableAccess] z
|
|
# 118| Type = [DoubleType] double
|
|
# 118| ValueCategory = lvalue
|
|
# 118| getRValue(): [SubExpr] ... - ...
|
|
# 118| Type = [DoubleType] double
|
|
# 118| ValueCategory = prvalue
|
|
# 118| getLeftOperand(): [VariableAccess] x
|
|
# 118| Type = [DoubleType] double
|
|
# 118| ValueCategory = prvalue(load)
|
|
# 118| getRightOperand(): [VariableAccess] y
|
|
# 118| Type = [DoubleType] double
|
|
# 118| ValueCategory = prvalue(load)
|
|
# 119| getStmt(3): [ExprStmt] ExprStmt
|
|
# 119| getExpr(): [AssignExpr] ... = ...
|
|
# 119| Type = [DoubleType] double
|
|
# 119| ValueCategory = lvalue
|
|
# 119| getLValue(): [VariableAccess] z
|
|
# 119| Type = [DoubleType] double
|
|
# 119| ValueCategory = lvalue
|
|
# 119| getRValue(): [MulExpr] ... * ...
|
|
# 119| Type = [DoubleType] double
|
|
# 119| ValueCategory = prvalue
|
|
# 119| getLeftOperand(): [VariableAccess] x
|
|
# 119| Type = [DoubleType] double
|
|
# 119| ValueCategory = prvalue(load)
|
|
# 119| getRightOperand(): [VariableAccess] y
|
|
# 119| Type = [DoubleType] double
|
|
# 119| ValueCategory = prvalue(load)
|
|
# 120| getStmt(4): [ExprStmt] ExprStmt
|
|
# 120| getExpr(): [AssignExpr] ... = ...
|
|
# 120| Type = [DoubleType] double
|
|
# 120| ValueCategory = lvalue
|
|
# 120| getLValue(): [VariableAccess] z
|
|
# 120| Type = [DoubleType] double
|
|
# 120| ValueCategory = lvalue
|
|
# 120| getRValue(): [DivExpr] ... / ...
|
|
# 120| Type = [DoubleType] double
|
|
# 120| ValueCategory = prvalue
|
|
# 120| getLeftOperand(): [VariableAccess] x
|
|
# 120| Type = [DoubleType] double
|
|
# 120| ValueCategory = prvalue(load)
|
|
# 120| getRightOperand(): [VariableAccess] y
|
|
# 120| Type = [DoubleType] double
|
|
# 120| ValueCategory = prvalue(load)
|
|
# 122| getStmt(5): [ExprStmt] ExprStmt
|
|
# 122| getExpr(): [AssignExpr] ... = ...
|
|
# 122| Type = [DoubleType] double
|
|
# 122| ValueCategory = lvalue
|
|
# 122| getLValue(): [VariableAccess] z
|
|
# 122| Type = [DoubleType] double
|
|
# 122| ValueCategory = lvalue
|
|
# 122| getRValue(): [VariableAccess] x
|
|
# 122| Type = [DoubleType] double
|
|
# 122| ValueCategory = prvalue(load)
|
|
# 124| getStmt(6): [ExprStmt] ExprStmt
|
|
# 124| getExpr(): [AssignAddExpr] ... += ...
|
|
# 124| Type = [DoubleType] double
|
|
# 124| ValueCategory = lvalue
|
|
# 124| getLValue(): [VariableAccess] z
|
|
# 124| Type = [DoubleType] double
|
|
# 124| ValueCategory = lvalue
|
|
# 124| getRValue(): [VariableAccess] x
|
|
# 124| Type = [DoubleType] double
|
|
# 124| ValueCategory = prvalue(load)
|
|
# 125| getStmt(7): [ExprStmt] ExprStmt
|
|
# 125| getExpr(): [AssignSubExpr] ... -= ...
|
|
# 125| Type = [DoubleType] double
|
|
# 125| ValueCategory = lvalue
|
|
# 125| getLValue(): [VariableAccess] z
|
|
# 125| Type = [DoubleType] double
|
|
# 125| ValueCategory = lvalue
|
|
# 125| getRValue(): [VariableAccess] x
|
|
# 125| Type = [DoubleType] double
|
|
# 125| ValueCategory = prvalue(load)
|
|
# 126| getStmt(8): [ExprStmt] ExprStmt
|
|
# 126| getExpr(): [AssignMulExpr] ... *= ...
|
|
# 126| Type = [DoubleType] double
|
|
# 126| ValueCategory = lvalue
|
|
# 126| getLValue(): [VariableAccess] z
|
|
# 126| Type = [DoubleType] double
|
|
# 126| ValueCategory = lvalue
|
|
# 126| getRValue(): [VariableAccess] x
|
|
# 126| Type = [DoubleType] double
|
|
# 126| ValueCategory = prvalue(load)
|
|
# 127| getStmt(9): [ExprStmt] ExprStmt
|
|
# 127| getExpr(): [AssignDivExpr] ... /= ...
|
|
# 127| Type = [DoubleType] double
|
|
# 127| ValueCategory = lvalue
|
|
# 127| getLValue(): [VariableAccess] z
|
|
# 127| Type = [DoubleType] double
|
|
# 127| ValueCategory = lvalue
|
|
# 127| getRValue(): [VariableAccess] x
|
|
# 127| Type = [DoubleType] double
|
|
# 127| ValueCategory = prvalue(load)
|
|
# 129| getStmt(10): [ExprStmt] ExprStmt
|
|
# 129| getExpr(): [AssignExpr] ... = ...
|
|
# 129| Type = [DoubleType] double
|
|
# 129| ValueCategory = lvalue
|
|
# 129| getLValue(): [VariableAccess] z
|
|
# 129| Type = [DoubleType] double
|
|
# 129| ValueCategory = lvalue
|
|
# 129| getRValue(): [UnaryPlusExpr] + ...
|
|
# 129| Type = [DoubleType] double
|
|
# 129| ValueCategory = prvalue
|
|
# 129| getOperand(): [VariableAccess] x
|
|
# 129| Type = [DoubleType] double
|
|
# 129| ValueCategory = prvalue(load)
|
|
# 130| getStmt(11): [ExprStmt] ExprStmt
|
|
# 130| getExpr(): [AssignExpr] ... = ...
|
|
# 130| Type = [DoubleType] double
|
|
# 130| ValueCategory = lvalue
|
|
# 130| getLValue(): [VariableAccess] z
|
|
# 130| Type = [DoubleType] double
|
|
# 130| ValueCategory = lvalue
|
|
# 130| getRValue(): [UnaryMinusExpr] - ...
|
|
# 130| Type = [DoubleType] double
|
|
# 130| ValueCategory = prvalue
|
|
# 130| getOperand(): [VariableAccess] x
|
|
# 130| Type = [DoubleType] double
|
|
# 130| ValueCategory = prvalue(load)
|
|
# 131| getStmt(12): [ReturnStmt] return ...
|
|
# 133| [TopLevelFunction] void FloatCompare(double, double)
|
|
# 133| <params>:
|
|
# 133| getParameter(0): [Parameter] x
|
|
# 133| Type = [DoubleType] double
|
|
# 133| getParameter(1): [Parameter] y
|
|
# 133| Type = [DoubleType] double
|
|
# 133| getEntryPoint(): [BlockStmt] { ... }
|
|
# 134| getStmt(0): [DeclStmt] declaration
|
|
# 134| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 134| Type = [BoolType] bool
|
|
# 136| getStmt(1): [ExprStmt] ExprStmt
|
|
# 136| getExpr(): [AssignExpr] ... = ...
|
|
# 136| Type = [BoolType] bool
|
|
# 136| ValueCategory = lvalue
|
|
# 136| getLValue(): [VariableAccess] b
|
|
# 136| Type = [BoolType] bool
|
|
# 136| ValueCategory = lvalue
|
|
# 136| getRValue(): [EQExpr] ... == ...
|
|
# 136| Type = [BoolType] bool
|
|
# 136| ValueCategory = prvalue
|
|
# 136| getLeftOperand(): [VariableAccess] x
|
|
# 136| Type = [DoubleType] double
|
|
# 136| ValueCategory = prvalue(load)
|
|
# 136| getRightOperand(): [VariableAccess] y
|
|
# 136| Type = [DoubleType] double
|
|
# 136| ValueCategory = prvalue(load)
|
|
# 137| getStmt(2): [ExprStmt] ExprStmt
|
|
# 137| getExpr(): [AssignExpr] ... = ...
|
|
# 137| Type = [BoolType] bool
|
|
# 137| ValueCategory = lvalue
|
|
# 137| getLValue(): [VariableAccess] b
|
|
# 137| Type = [BoolType] bool
|
|
# 137| ValueCategory = lvalue
|
|
# 137| getRValue(): [NEExpr] ... != ...
|
|
# 137| Type = [BoolType] bool
|
|
# 137| ValueCategory = prvalue
|
|
# 137| getLeftOperand(): [VariableAccess] x
|
|
# 137| Type = [DoubleType] double
|
|
# 137| ValueCategory = prvalue(load)
|
|
# 137| getRightOperand(): [VariableAccess] y
|
|
# 137| Type = [DoubleType] double
|
|
# 137| ValueCategory = prvalue(load)
|
|
# 138| getStmt(3): [ExprStmt] ExprStmt
|
|
# 138| getExpr(): [AssignExpr] ... = ...
|
|
# 138| Type = [BoolType] bool
|
|
# 138| ValueCategory = lvalue
|
|
# 138| getLValue(): [VariableAccess] b
|
|
# 138| Type = [BoolType] bool
|
|
# 138| ValueCategory = lvalue
|
|
# 138| getRValue(): [LTExpr] ... < ...
|
|
# 138| Type = [BoolType] bool
|
|
# 138| ValueCategory = prvalue
|
|
# 138| getLesserOperand(): [VariableAccess] x
|
|
# 138| Type = [DoubleType] double
|
|
# 138| ValueCategory = prvalue(load)
|
|
# 138| getGreaterOperand(): [VariableAccess] y
|
|
# 138| Type = [DoubleType] double
|
|
# 138| ValueCategory = prvalue(load)
|
|
# 139| getStmt(4): [ExprStmt] ExprStmt
|
|
# 139| getExpr(): [AssignExpr] ... = ...
|
|
# 139| Type = [BoolType] bool
|
|
# 139| ValueCategory = lvalue
|
|
# 139| getLValue(): [VariableAccess] b
|
|
# 139| Type = [BoolType] bool
|
|
# 139| ValueCategory = lvalue
|
|
# 139| getRValue(): [GTExpr] ... > ...
|
|
# 139| Type = [BoolType] bool
|
|
# 139| ValueCategory = prvalue
|
|
# 139| getGreaterOperand(): [VariableAccess] x
|
|
# 139| Type = [DoubleType] double
|
|
# 139| ValueCategory = prvalue(load)
|
|
# 139| getLesserOperand(): [VariableAccess] y
|
|
# 139| Type = [DoubleType] double
|
|
# 139| ValueCategory = prvalue(load)
|
|
# 140| getStmt(5): [ExprStmt] ExprStmt
|
|
# 140| getExpr(): [AssignExpr] ... = ...
|
|
# 140| Type = [BoolType] bool
|
|
# 140| ValueCategory = lvalue
|
|
# 140| getLValue(): [VariableAccess] b
|
|
# 140| Type = [BoolType] bool
|
|
# 140| ValueCategory = lvalue
|
|
# 140| getRValue(): [LEExpr] ... <= ...
|
|
# 140| Type = [BoolType] bool
|
|
# 140| ValueCategory = prvalue
|
|
# 140| getLesserOperand(): [VariableAccess] x
|
|
# 140| Type = [DoubleType] double
|
|
# 140| ValueCategory = prvalue(load)
|
|
# 140| getGreaterOperand(): [VariableAccess] y
|
|
# 140| Type = [DoubleType] double
|
|
# 140| ValueCategory = prvalue(load)
|
|
# 141| getStmt(6): [ExprStmt] ExprStmt
|
|
# 141| getExpr(): [AssignExpr] ... = ...
|
|
# 141| Type = [BoolType] bool
|
|
# 141| ValueCategory = lvalue
|
|
# 141| getLValue(): [VariableAccess] b
|
|
# 141| Type = [BoolType] bool
|
|
# 141| ValueCategory = lvalue
|
|
# 141| getRValue(): [GEExpr] ... >= ...
|
|
# 141| Type = [BoolType] bool
|
|
# 141| ValueCategory = prvalue
|
|
# 141| getGreaterOperand(): [VariableAccess] x
|
|
# 141| Type = [DoubleType] double
|
|
# 141| ValueCategory = prvalue(load)
|
|
# 141| getLesserOperand(): [VariableAccess] y
|
|
# 141| Type = [DoubleType] double
|
|
# 141| ValueCategory = prvalue(load)
|
|
# 142| getStmt(7): [ReturnStmt] return ...
|
|
# 144| [TopLevelFunction] void FloatCrement(float)
|
|
# 144| <params>:
|
|
# 144| getParameter(0): [Parameter] x
|
|
# 144| Type = [FloatType] float
|
|
# 144| getEntryPoint(): [BlockStmt] { ... }
|
|
# 145| getStmt(0): [DeclStmt] declaration
|
|
# 145| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 145| Type = [FloatType] float
|
|
# 147| getStmt(1): [ExprStmt] ExprStmt
|
|
# 147| getExpr(): [AssignExpr] ... = ...
|
|
# 147| Type = [FloatType] float
|
|
# 147| ValueCategory = lvalue
|
|
# 147| getLValue(): [VariableAccess] y
|
|
# 147| Type = [FloatType] float
|
|
# 147| ValueCategory = lvalue
|
|
# 147| getRValue(): [PrefixIncrExpr] ++ ...
|
|
# 147| Type = [FloatType] float
|
|
# 147| ValueCategory = prvalue(load)
|
|
# 147| getOperand(): [VariableAccess] x
|
|
# 147| Type = [FloatType] float
|
|
# 147| ValueCategory = lvalue
|
|
# 148| getStmt(2): [ExprStmt] ExprStmt
|
|
# 148| getExpr(): [AssignExpr] ... = ...
|
|
# 148| Type = [FloatType] float
|
|
# 148| ValueCategory = lvalue
|
|
# 148| getLValue(): [VariableAccess] y
|
|
# 148| Type = [FloatType] float
|
|
# 148| ValueCategory = lvalue
|
|
# 148| getRValue(): [PrefixDecrExpr] -- ...
|
|
# 148| Type = [FloatType] float
|
|
# 148| ValueCategory = prvalue(load)
|
|
# 148| getOperand(): [VariableAccess] x
|
|
# 148| Type = [FloatType] float
|
|
# 148| ValueCategory = lvalue
|
|
# 149| getStmt(3): [ExprStmt] ExprStmt
|
|
# 149| getExpr(): [AssignExpr] ... = ...
|
|
# 149| Type = [FloatType] float
|
|
# 149| ValueCategory = lvalue
|
|
# 149| getLValue(): [VariableAccess] y
|
|
# 149| Type = [FloatType] float
|
|
# 149| ValueCategory = lvalue
|
|
# 149| getRValue(): [PostfixIncrExpr] ... ++
|
|
# 149| Type = [FloatType] float
|
|
# 149| ValueCategory = prvalue
|
|
# 149| getOperand(): [VariableAccess] x
|
|
# 149| Type = [FloatType] float
|
|
# 149| ValueCategory = lvalue
|
|
# 150| getStmt(4): [ExprStmt] ExprStmt
|
|
# 150| getExpr(): [AssignExpr] ... = ...
|
|
# 150| Type = [FloatType] float
|
|
# 150| ValueCategory = lvalue
|
|
# 150| getLValue(): [VariableAccess] y
|
|
# 150| Type = [FloatType] float
|
|
# 150| ValueCategory = lvalue
|
|
# 150| getRValue(): [PostfixDecrExpr] ... --
|
|
# 150| Type = [FloatType] float
|
|
# 150| ValueCategory = prvalue
|
|
# 150| getOperand(): [VariableAccess] x
|
|
# 150| Type = [FloatType] float
|
|
# 150| ValueCategory = lvalue
|
|
# 151| getStmt(5): [ReturnStmt] return ...
|
|
# 153| [TopLevelFunction] void PointerOps(int*, int)
|
|
# 153| <params>:
|
|
# 153| getParameter(0): [Parameter] p
|
|
# 153| Type = [IntPointerType] int *
|
|
# 153| getParameter(1): [Parameter] i
|
|
# 153| Type = [IntType] int
|
|
# 153| getEntryPoint(): [BlockStmt] { ... }
|
|
# 154| getStmt(0): [DeclStmt] declaration
|
|
# 154| getDeclarationEntry(0): [VariableDeclarationEntry] definition of q
|
|
# 154| Type = [IntPointerType] int *
|
|
# 155| getStmt(1): [DeclStmt] declaration
|
|
# 155| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 155| Type = [BoolType] bool
|
|
# 157| getStmt(2): [ExprStmt] ExprStmt
|
|
# 157| getExpr(): [AssignExpr] ... = ...
|
|
# 157| Type = [IntPointerType] int *
|
|
# 157| ValueCategory = lvalue
|
|
# 157| getLValue(): [VariableAccess] q
|
|
# 157| Type = [IntPointerType] int *
|
|
# 157| ValueCategory = lvalue
|
|
# 157| getRValue(): [PointerAddExpr] ... + ...
|
|
# 157| Type = [IntPointerType] int *
|
|
# 157| ValueCategory = prvalue
|
|
# 157| getLeftOperand(): [VariableAccess] p
|
|
# 157| Type = [IntPointerType] int *
|
|
# 157| ValueCategory = prvalue(load)
|
|
# 157| getRightOperand(): [VariableAccess] i
|
|
# 157| Type = [IntType] int
|
|
# 157| ValueCategory = prvalue(load)
|
|
# 158| getStmt(3): [ExprStmt] ExprStmt
|
|
# 158| getExpr(): [AssignExpr] ... = ...
|
|
# 158| Type = [IntPointerType] int *
|
|
# 158| ValueCategory = lvalue
|
|
# 158| getLValue(): [VariableAccess] q
|
|
# 158| Type = [IntPointerType] int *
|
|
# 158| ValueCategory = lvalue
|
|
# 158| getRValue(): [PointerAddExpr] ... + ...
|
|
# 158| Type = [IntPointerType] int *
|
|
# 158| ValueCategory = prvalue
|
|
# 158| getLeftOperand(): [VariableAccess] i
|
|
# 158| Type = [IntType] int
|
|
# 158| ValueCategory = prvalue(load)
|
|
# 158| getRightOperand(): [VariableAccess] p
|
|
# 158| Type = [IntPointerType] int *
|
|
# 158| ValueCategory = prvalue(load)
|
|
# 159| getStmt(4): [ExprStmt] ExprStmt
|
|
# 159| getExpr(): [AssignExpr] ... = ...
|
|
# 159| Type = [IntPointerType] int *
|
|
# 159| ValueCategory = lvalue
|
|
# 159| getLValue(): [VariableAccess] q
|
|
# 159| Type = [IntPointerType] int *
|
|
# 159| ValueCategory = lvalue
|
|
# 159| getRValue(): [PointerSubExpr] ... - ...
|
|
# 159| Type = [IntPointerType] int *
|
|
# 159| ValueCategory = prvalue
|
|
# 159| getLeftOperand(): [VariableAccess] p
|
|
# 159| Type = [IntPointerType] int *
|
|
# 159| ValueCategory = prvalue(load)
|
|
# 159| getRightOperand(): [VariableAccess] i
|
|
# 159| Type = [IntType] int
|
|
# 159| ValueCategory = prvalue(load)
|
|
# 160| getStmt(5): [ExprStmt] ExprStmt
|
|
# 160| getExpr(): [AssignExpr] ... = ...
|
|
# 160| Type = [IntType] int
|
|
# 160| ValueCategory = lvalue
|
|
# 160| getLValue(): [VariableAccess] i
|
|
# 160| Type = [IntType] int
|
|
# 160| ValueCategory = lvalue
|
|
# 160| getRValue(): [PointerDiffExpr] ... - ...
|
|
# 160| Type = [LongType] long
|
|
# 160| ValueCategory = prvalue
|
|
# 160| getLeftOperand(): [VariableAccess] p
|
|
# 160| Type = [IntPointerType] int *
|
|
# 160| ValueCategory = prvalue(load)
|
|
# 160| getRightOperand(): [VariableAccess] q
|
|
# 160| Type = [IntPointerType] int *
|
|
# 160| ValueCategory = prvalue(load)
|
|
# 160| getRValue().getFullyConverted(): [CStyleCast] (int)...
|
|
# 160| Conversion = [IntegralConversion] integral conversion
|
|
# 160| Type = [IntType] int
|
|
# 160| ValueCategory = prvalue
|
|
# 162| getStmt(6): [ExprStmt] ExprStmt
|
|
# 162| getExpr(): [AssignExpr] ... = ...
|
|
# 162| Type = [IntPointerType] int *
|
|
# 162| ValueCategory = lvalue
|
|
# 162| getLValue(): [VariableAccess] q
|
|
# 162| Type = [IntPointerType] int *
|
|
# 162| ValueCategory = lvalue
|
|
# 162| getRValue(): [VariableAccess] p
|
|
# 162| Type = [IntPointerType] int *
|
|
# 162| ValueCategory = prvalue(load)
|
|
# 164| getStmt(7): [ExprStmt] ExprStmt
|
|
# 164| getExpr(): [AssignPointerAddExpr] ... += ...
|
|
# 164| Type = [IntPointerType] int *
|
|
# 164| ValueCategory = lvalue
|
|
# 164| getLValue(): [VariableAccess] q
|
|
# 164| Type = [IntPointerType] int *
|
|
# 164| ValueCategory = lvalue
|
|
# 164| getRValue(): [VariableAccess] i
|
|
# 164| Type = [IntType] int
|
|
# 164| ValueCategory = prvalue(load)
|
|
# 165| getStmt(8): [ExprStmt] ExprStmt
|
|
# 165| getExpr(): [AssignPointerSubExpr] ... -= ...
|
|
# 165| Type = [IntPointerType] int *
|
|
# 165| ValueCategory = lvalue
|
|
# 165| getLValue(): [VariableAccess] q
|
|
# 165| Type = [IntPointerType] int *
|
|
# 165| ValueCategory = lvalue
|
|
# 165| getRValue(): [VariableAccess] i
|
|
# 165| Type = [IntType] int
|
|
# 165| ValueCategory = prvalue(load)
|
|
# 167| getStmt(9): [ExprStmt] ExprStmt
|
|
# 167| getExpr(): [AssignExpr] ... = ...
|
|
# 167| Type = [BoolType] bool
|
|
# 167| ValueCategory = lvalue
|
|
# 167| getLValue(): [VariableAccess] b
|
|
# 167| Type = [BoolType] bool
|
|
# 167| ValueCategory = lvalue
|
|
# 167| getRValue(): [VariableAccess] p
|
|
# 167| Type = [IntPointerType] int *
|
|
# 167| ValueCategory = prvalue(load)
|
|
# 167| getRValue().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 167| Conversion = [BoolConversion] conversion to bool
|
|
# 167| Type = [BoolType] bool
|
|
# 167| ValueCategory = prvalue
|
|
# 168| getStmt(10): [ExprStmt] ExprStmt
|
|
# 168| getExpr(): [AssignExpr] ... = ...
|
|
# 168| Type = [BoolType] bool
|
|
# 168| ValueCategory = lvalue
|
|
# 168| getLValue(): [VariableAccess] b
|
|
# 168| Type = [BoolType] bool
|
|
# 168| ValueCategory = lvalue
|
|
# 168| getRValue(): [NotExpr] ! ...
|
|
# 168| Type = [BoolType] bool
|
|
# 168| ValueCategory = prvalue
|
|
# 168| getOperand(): [VariableAccess] p
|
|
# 168| Type = [IntPointerType] int *
|
|
# 168| ValueCategory = prvalue(load)
|
|
# 168| getOperand().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 168| Conversion = [BoolConversion] conversion to bool
|
|
# 168| Type = [BoolType] bool
|
|
# 168| ValueCategory = prvalue
|
|
# 169| getStmt(11): [ReturnStmt] return ...
|
|
# 171| [TopLevelFunction] void ArrayAccess(int*, int)
|
|
# 171| <params>:
|
|
# 171| getParameter(0): [Parameter] p
|
|
# 171| Type = [IntPointerType] int *
|
|
# 171| getParameter(1): [Parameter] i
|
|
# 171| Type = [IntType] int
|
|
# 171| getEntryPoint(): [BlockStmt] { ... }
|
|
# 172| getStmt(0): [DeclStmt] declaration
|
|
# 172| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 172| Type = [IntType] int
|
|
# 174| getStmt(1): [ExprStmt] ExprStmt
|
|
# 174| getExpr(): [AssignExpr] ... = ...
|
|
# 174| Type = [IntType] int
|
|
# 174| ValueCategory = lvalue
|
|
# 174| getLValue(): [VariableAccess] x
|
|
# 174| Type = [IntType] int
|
|
# 174| ValueCategory = lvalue
|
|
# 174| getRValue(): [ArrayExpr] access to array
|
|
# 174| Type = [IntType] int
|
|
# 174| ValueCategory = prvalue(load)
|
|
# 174| getArrayBase(): [VariableAccess] p
|
|
# 174| Type = [IntPointerType] int *
|
|
# 174| ValueCategory = prvalue(load)
|
|
# 174| getArrayOffset(): [VariableAccess] i
|
|
# 174| Type = [IntType] int
|
|
# 174| ValueCategory = prvalue(load)
|
|
# 175| getStmt(2): [ExprStmt] ExprStmt
|
|
# 175| getExpr(): [AssignExpr] ... = ...
|
|
# 175| Type = [IntType] int
|
|
# 175| ValueCategory = lvalue
|
|
# 175| getLValue(): [VariableAccess] x
|
|
# 175| Type = [IntType] int
|
|
# 175| ValueCategory = lvalue
|
|
# 175| getRValue(): [ArrayExpr] access to array
|
|
# 175| Type = [IntType] int
|
|
# 175| ValueCategory = prvalue(load)
|
|
# 175| getArrayBase(): [VariableAccess] p
|
|
# 175| Type = [IntPointerType] int *
|
|
# 175| ValueCategory = prvalue(load)
|
|
# 175| getArrayOffset(): [VariableAccess] i
|
|
# 175| Type = [IntType] int
|
|
# 175| ValueCategory = prvalue(load)
|
|
# 177| getStmt(3): [ExprStmt] ExprStmt
|
|
# 177| getExpr(): [AssignExpr] ... = ...
|
|
# 177| Type = [IntType] int
|
|
# 177| ValueCategory = lvalue
|
|
# 177| getLValue(): [ArrayExpr] access to array
|
|
# 177| Type = [IntType] int
|
|
# 177| ValueCategory = lvalue
|
|
# 177| getArrayBase(): [VariableAccess] p
|
|
# 177| Type = [IntPointerType] int *
|
|
# 177| ValueCategory = prvalue(load)
|
|
# 177| getArrayOffset(): [VariableAccess] i
|
|
# 177| Type = [IntType] int
|
|
# 177| ValueCategory = prvalue(load)
|
|
# 177| getRValue(): [VariableAccess] x
|
|
# 177| Type = [IntType] int
|
|
# 177| ValueCategory = prvalue(load)
|
|
# 178| getStmt(4): [ExprStmt] ExprStmt
|
|
# 178| getExpr(): [AssignExpr] ... = ...
|
|
# 178| Type = [IntType] int
|
|
# 178| ValueCategory = lvalue
|
|
# 178| getLValue(): [ArrayExpr] access to array
|
|
# 178| Type = [IntType] int
|
|
# 178| ValueCategory = lvalue
|
|
# 178| getArrayBase(): [VariableAccess] p
|
|
# 178| Type = [IntPointerType] int *
|
|
# 178| ValueCategory = prvalue(load)
|
|
# 178| getArrayOffset(): [VariableAccess] i
|
|
# 178| Type = [IntType] int
|
|
# 178| ValueCategory = prvalue(load)
|
|
# 178| getRValue(): [VariableAccess] x
|
|
# 178| Type = [IntType] int
|
|
# 178| ValueCategory = prvalue(load)
|
|
# 180| getStmt(5): [DeclStmt] declaration
|
|
# 180| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 180| Type = [ArrayType] int[10]
|
|
# 181| getStmt(6): [ExprStmt] ExprStmt
|
|
# 181| getExpr(): [AssignExpr] ... = ...
|
|
# 181| Type = [IntType] int
|
|
# 181| ValueCategory = lvalue
|
|
# 181| getLValue(): [VariableAccess] x
|
|
# 181| Type = [IntType] int
|
|
# 181| ValueCategory = lvalue
|
|
# 181| getRValue(): [ArrayExpr] access to array
|
|
# 181| Type = [IntType] int
|
|
# 181| ValueCategory = prvalue(load)
|
|
# 181| getArrayBase(): [VariableAccess] a
|
|
# 181| Type = [ArrayType] int[10]
|
|
# 181| ValueCategory = lvalue
|
|
# 181| getArrayOffset(): [VariableAccess] i
|
|
# 181| Type = [IntType] int
|
|
# 181| ValueCategory = prvalue(load)
|
|
# 181| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 181| Type = [IntPointerType] int *
|
|
# 181| ValueCategory = prvalue
|
|
# 182| getStmt(7): [ExprStmt] ExprStmt
|
|
# 182| getExpr(): [AssignExpr] ... = ...
|
|
# 182| Type = [IntType] int
|
|
# 182| ValueCategory = lvalue
|
|
# 182| getLValue(): [VariableAccess] x
|
|
# 182| Type = [IntType] int
|
|
# 182| ValueCategory = lvalue
|
|
# 182| getRValue(): [ArrayExpr] access to array
|
|
# 182| Type = [IntType] int
|
|
# 182| ValueCategory = prvalue(load)
|
|
# 182| getArrayBase(): [VariableAccess] a
|
|
# 182| Type = [ArrayType] int[10]
|
|
# 182| ValueCategory = lvalue
|
|
# 182| getArrayOffset(): [VariableAccess] i
|
|
# 182| Type = [IntType] int
|
|
# 182| ValueCategory = prvalue(load)
|
|
# 182| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 182| Type = [IntPointerType] int *
|
|
# 182| ValueCategory = prvalue
|
|
# 183| getStmt(8): [ExprStmt] ExprStmt
|
|
# 183| getExpr(): [AssignExpr] ... = ...
|
|
# 183| Type = [IntType] int
|
|
# 183| ValueCategory = lvalue
|
|
# 183| getLValue(): [ArrayExpr] access to array
|
|
# 183| Type = [IntType] int
|
|
# 183| ValueCategory = lvalue
|
|
# 183| getArrayBase(): [VariableAccess] a
|
|
# 183| Type = [ArrayType] int[10]
|
|
# 183| ValueCategory = lvalue
|
|
# 183| getArrayOffset(): [VariableAccess] i
|
|
# 183| Type = [IntType] int
|
|
# 183| ValueCategory = prvalue(load)
|
|
# 183| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 183| Type = [IntPointerType] int *
|
|
# 183| ValueCategory = prvalue
|
|
# 183| getRValue(): [VariableAccess] x
|
|
# 183| Type = [IntType] int
|
|
# 183| ValueCategory = prvalue(load)
|
|
# 184| getStmt(9): [ExprStmt] ExprStmt
|
|
# 184| getExpr(): [AssignExpr] ... = ...
|
|
# 184| Type = [IntType] int
|
|
# 184| ValueCategory = lvalue
|
|
# 184| getLValue(): [ArrayExpr] access to array
|
|
# 184| Type = [IntType] int
|
|
# 184| ValueCategory = lvalue
|
|
# 184| getArrayBase(): [VariableAccess] a
|
|
# 184| Type = [ArrayType] int[10]
|
|
# 184| ValueCategory = lvalue
|
|
# 184| getArrayOffset(): [VariableAccess] i
|
|
# 184| Type = [IntType] int
|
|
# 184| ValueCategory = prvalue(load)
|
|
# 184| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 184| Type = [IntPointerType] int *
|
|
# 184| ValueCategory = prvalue
|
|
# 184| getRValue(): [VariableAccess] x
|
|
# 184| Type = [IntType] int
|
|
# 184| ValueCategory = prvalue(load)
|
|
# 185| getStmt(10): [ReturnStmt] return ...
|
|
# 187| [TopLevelFunction] void StringLiteral(int)
|
|
# 187| <params>:
|
|
# 187| getParameter(0): [Parameter] i
|
|
# 187| Type = [IntType] int
|
|
# 187| getEntryPoint(): [BlockStmt] { ... }
|
|
# 188| getStmt(0): [DeclStmt] declaration
|
|
# 188| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 188| Type = [PlainCharType] char
|
|
# 188| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 188| getExpr(): [ArrayExpr] access to array
|
|
# 188| Type = [PlainCharType] char
|
|
# 188| ValueCategory = prvalue(load)
|
|
# 188| getArrayBase(): Foo
|
|
# 188| Type = [ArrayType] const char[4]
|
|
# 188| Value = [StringLiteral] "Foo"
|
|
# 188| ValueCategory = lvalue
|
|
# 188| getArrayOffset(): [VariableAccess] i
|
|
# 188| Type = [IntType] int
|
|
# 188| ValueCategory = prvalue(load)
|
|
# 188| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 188| Type = [PointerType] const char *
|
|
# 188| ValueCategory = prvalue
|
|
# 189| getStmt(1): [DeclStmt] declaration
|
|
# 189| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pwc
|
|
# 189| Type = [PointerType] wchar_t *
|
|
# 189| getVariable().getInitializer(): [Initializer] initializer for pwc
|
|
# 189| getExpr(): Bar
|
|
# 189| Type = [ArrayType] const wchar_t[4]
|
|
# 189| Value = [StringLiteral] "Bar"
|
|
# 189| ValueCategory = lvalue
|
|
# 189| getExpr().getFullyConverted(): [CStyleCast] (wchar_t *)...
|
|
# 189| Conversion = [PointerConversion] pointer conversion
|
|
# 189| Type = [PointerType] wchar_t *
|
|
# 189| ValueCategory = prvalue
|
|
# 189| getExpr(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 189| Type = [PointerType] const wchar_t *
|
|
# 189| ValueCategory = prvalue
|
|
# 190| getStmt(2): [DeclStmt] declaration
|
|
# 190| getDeclarationEntry(0): [VariableDeclarationEntry] definition of wc
|
|
# 190| Type = [Wchar_t,WideCharType] wchar_t
|
|
# 190| getVariable().getInitializer(): [Initializer] initializer for wc
|
|
# 190| getExpr(): [ArrayExpr] access to array
|
|
# 190| Type = [Wchar_t,WideCharType] wchar_t
|
|
# 190| ValueCategory = prvalue(load)
|
|
# 190| getArrayBase(): [VariableAccess] pwc
|
|
# 190| Type = [PointerType] wchar_t *
|
|
# 190| ValueCategory = prvalue(load)
|
|
# 190| getArrayOffset(): [VariableAccess] i
|
|
# 190| Type = [IntType] int
|
|
# 190| ValueCategory = prvalue(load)
|
|
# 191| getStmt(3): [ReturnStmt] return ...
|
|
# 193| [TopLevelFunction] void PointerCompare(int*, int*)
|
|
# 193| <params>:
|
|
# 193| getParameter(0): [Parameter] p
|
|
# 193| Type = [IntPointerType] int *
|
|
# 193| getParameter(1): [Parameter] q
|
|
# 193| Type = [IntPointerType] int *
|
|
# 193| getEntryPoint(): [BlockStmt] { ... }
|
|
# 194| getStmt(0): [DeclStmt] declaration
|
|
# 194| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 194| Type = [BoolType] bool
|
|
# 196| getStmt(1): [ExprStmt] ExprStmt
|
|
# 196| getExpr(): [AssignExpr] ... = ...
|
|
# 196| Type = [BoolType] bool
|
|
# 196| ValueCategory = lvalue
|
|
# 196| getLValue(): [VariableAccess] b
|
|
# 196| Type = [BoolType] bool
|
|
# 196| ValueCategory = lvalue
|
|
# 196| getRValue(): [EQExpr] ... == ...
|
|
# 196| Type = [BoolType] bool
|
|
# 196| ValueCategory = prvalue
|
|
# 196| getLeftOperand(): [VariableAccess] p
|
|
# 196| Type = [IntPointerType] int *
|
|
# 196| ValueCategory = prvalue(load)
|
|
# 196| getRightOperand(): [VariableAccess] q
|
|
# 196| Type = [IntPointerType] int *
|
|
# 196| ValueCategory = prvalue(load)
|
|
# 197| getStmt(2): [ExprStmt] ExprStmt
|
|
# 197| getExpr(): [AssignExpr] ... = ...
|
|
# 197| Type = [BoolType] bool
|
|
# 197| ValueCategory = lvalue
|
|
# 197| getLValue(): [VariableAccess] b
|
|
# 197| Type = [BoolType] bool
|
|
# 197| ValueCategory = lvalue
|
|
# 197| getRValue(): [NEExpr] ... != ...
|
|
# 197| Type = [BoolType] bool
|
|
# 197| ValueCategory = prvalue
|
|
# 197| getLeftOperand(): [VariableAccess] p
|
|
# 197| Type = [IntPointerType] int *
|
|
# 197| ValueCategory = prvalue(load)
|
|
# 197| getRightOperand(): [VariableAccess] q
|
|
# 197| Type = [IntPointerType] int *
|
|
# 197| ValueCategory = prvalue(load)
|
|
# 198| getStmt(3): [ExprStmt] ExprStmt
|
|
# 198| getExpr(): [AssignExpr] ... = ...
|
|
# 198| Type = [BoolType] bool
|
|
# 198| ValueCategory = lvalue
|
|
# 198| getLValue(): [VariableAccess] b
|
|
# 198| Type = [BoolType] bool
|
|
# 198| ValueCategory = lvalue
|
|
# 198| getRValue(): [LTExpr] ... < ...
|
|
# 198| Type = [BoolType] bool
|
|
# 198| ValueCategory = prvalue
|
|
# 198| getLesserOperand(): [VariableAccess] p
|
|
# 198| Type = [IntPointerType] int *
|
|
# 198| ValueCategory = prvalue(load)
|
|
# 198| getGreaterOperand(): [VariableAccess] q
|
|
# 198| Type = [IntPointerType] int *
|
|
# 198| ValueCategory = prvalue(load)
|
|
# 199| getStmt(4): [ExprStmt] ExprStmt
|
|
# 199| getExpr(): [AssignExpr] ... = ...
|
|
# 199| Type = [BoolType] bool
|
|
# 199| ValueCategory = lvalue
|
|
# 199| getLValue(): [VariableAccess] b
|
|
# 199| Type = [BoolType] bool
|
|
# 199| ValueCategory = lvalue
|
|
# 199| getRValue(): [GTExpr] ... > ...
|
|
# 199| Type = [BoolType] bool
|
|
# 199| ValueCategory = prvalue
|
|
# 199| getGreaterOperand(): [VariableAccess] p
|
|
# 199| Type = [IntPointerType] int *
|
|
# 199| ValueCategory = prvalue(load)
|
|
# 199| getLesserOperand(): [VariableAccess] q
|
|
# 199| Type = [IntPointerType] int *
|
|
# 199| ValueCategory = prvalue(load)
|
|
# 200| getStmt(5): [ExprStmt] ExprStmt
|
|
# 200| getExpr(): [AssignExpr] ... = ...
|
|
# 200| Type = [BoolType] bool
|
|
# 200| ValueCategory = lvalue
|
|
# 200| getLValue(): [VariableAccess] b
|
|
# 200| Type = [BoolType] bool
|
|
# 200| ValueCategory = lvalue
|
|
# 200| getRValue(): [LEExpr] ... <= ...
|
|
# 200| Type = [BoolType] bool
|
|
# 200| ValueCategory = prvalue
|
|
# 200| getLesserOperand(): [VariableAccess] p
|
|
# 200| Type = [IntPointerType] int *
|
|
# 200| ValueCategory = prvalue(load)
|
|
# 200| getGreaterOperand(): [VariableAccess] q
|
|
# 200| Type = [IntPointerType] int *
|
|
# 200| ValueCategory = prvalue(load)
|
|
# 201| getStmt(6): [ExprStmt] ExprStmt
|
|
# 201| getExpr(): [AssignExpr] ... = ...
|
|
# 201| Type = [BoolType] bool
|
|
# 201| ValueCategory = lvalue
|
|
# 201| getLValue(): [VariableAccess] b
|
|
# 201| Type = [BoolType] bool
|
|
# 201| ValueCategory = lvalue
|
|
# 201| getRValue(): [GEExpr] ... >= ...
|
|
# 201| Type = [BoolType] bool
|
|
# 201| ValueCategory = prvalue
|
|
# 201| getGreaterOperand(): [VariableAccess] p
|
|
# 201| Type = [IntPointerType] int *
|
|
# 201| ValueCategory = prvalue(load)
|
|
# 201| getLesserOperand(): [VariableAccess] q
|
|
# 201| Type = [IntPointerType] int *
|
|
# 201| ValueCategory = prvalue(load)
|
|
# 202| getStmt(7): [ReturnStmt] return ...
|
|
# 204| [TopLevelFunction] void PointerCrement(int*)
|
|
# 204| <params>:
|
|
# 204| getParameter(0): [Parameter] p
|
|
# 204| Type = [IntPointerType] int *
|
|
# 204| getEntryPoint(): [BlockStmt] { ... }
|
|
# 205| getStmt(0): [DeclStmt] declaration
|
|
# 205| getDeclarationEntry(0): [VariableDeclarationEntry] definition of q
|
|
# 205| Type = [IntPointerType] int *
|
|
# 207| getStmt(1): [ExprStmt] ExprStmt
|
|
# 207| getExpr(): [AssignExpr] ... = ...
|
|
# 207| Type = [IntPointerType] int *
|
|
# 207| ValueCategory = lvalue
|
|
# 207| getLValue(): [VariableAccess] q
|
|
# 207| Type = [IntPointerType] int *
|
|
# 207| ValueCategory = lvalue
|
|
# 207| getRValue(): [PrefixIncrExpr] ++ ...
|
|
# 207| Type = [IntPointerType] int *
|
|
# 207| ValueCategory = prvalue(load)
|
|
# 207| getOperand(): [VariableAccess] p
|
|
# 207| Type = [IntPointerType] int *
|
|
# 207| ValueCategory = lvalue
|
|
# 208| getStmt(2): [ExprStmt] ExprStmt
|
|
# 208| getExpr(): [AssignExpr] ... = ...
|
|
# 208| Type = [IntPointerType] int *
|
|
# 208| ValueCategory = lvalue
|
|
# 208| getLValue(): [VariableAccess] q
|
|
# 208| Type = [IntPointerType] int *
|
|
# 208| ValueCategory = lvalue
|
|
# 208| getRValue(): [PrefixDecrExpr] -- ...
|
|
# 208| Type = [IntPointerType] int *
|
|
# 208| ValueCategory = prvalue(load)
|
|
# 208| getOperand(): [VariableAccess] p
|
|
# 208| Type = [IntPointerType] int *
|
|
# 208| ValueCategory = lvalue
|
|
# 209| getStmt(3): [ExprStmt] ExprStmt
|
|
# 209| getExpr(): [AssignExpr] ... = ...
|
|
# 209| Type = [IntPointerType] int *
|
|
# 209| ValueCategory = lvalue
|
|
# 209| getLValue(): [VariableAccess] q
|
|
# 209| Type = [IntPointerType] int *
|
|
# 209| ValueCategory = lvalue
|
|
# 209| getRValue(): [PostfixIncrExpr] ... ++
|
|
# 209| Type = [IntPointerType] int *
|
|
# 209| ValueCategory = prvalue
|
|
# 209| getOperand(): [VariableAccess] p
|
|
# 209| Type = [IntPointerType] int *
|
|
# 209| ValueCategory = lvalue
|
|
# 210| getStmt(4): [ExprStmt] ExprStmt
|
|
# 210| getExpr(): [AssignExpr] ... = ...
|
|
# 210| Type = [IntPointerType] int *
|
|
# 210| ValueCategory = lvalue
|
|
# 210| getLValue(): [VariableAccess] q
|
|
# 210| Type = [IntPointerType] int *
|
|
# 210| ValueCategory = lvalue
|
|
# 210| getRValue(): [PostfixDecrExpr] ... --
|
|
# 210| Type = [IntPointerType] int *
|
|
# 210| ValueCategory = prvalue
|
|
# 210| getOperand(): [VariableAccess] p
|
|
# 210| Type = [IntPointerType] int *
|
|
# 210| ValueCategory = lvalue
|
|
# 211| getStmt(5): [ReturnStmt] return ...
|
|
# 213| [TopLevelFunction] void CompoundAssignment()
|
|
# 213| <params>:
|
|
# 213| getEntryPoint(): [BlockStmt] { ... }
|
|
# 215| getStmt(0): [DeclStmt] declaration
|
|
# 215| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 215| Type = [IntType] int
|
|
# 215| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 215| getExpr(): [Literal] 5
|
|
# 215| Type = [IntType] int
|
|
# 215| Value = [Literal] 5
|
|
# 215| ValueCategory = prvalue
|
|
# 216| getStmt(1): [ExprStmt] ExprStmt
|
|
# 216| getExpr(): [AssignAddExpr] ... += ...
|
|
# 216| Type = [IntType] int
|
|
# 216| ValueCategory = lvalue
|
|
# 216| getLValue(): [VariableAccess] x
|
|
# 216| Type = [IntType] int
|
|
# 216| ValueCategory = lvalue
|
|
# 216| getRValue(): [Literal] 7
|
|
# 216| Type = [IntType] int
|
|
# 216| Value = [Literal] 7
|
|
# 216| ValueCategory = prvalue
|
|
# 219| getStmt(2): [DeclStmt] declaration
|
|
# 219| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 219| Type = [ShortType] short
|
|
# 219| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 219| getExpr(): [Literal] 5
|
|
# 219| Type = [IntType] int
|
|
# 219| Value = [Literal] 5
|
|
# 219| ValueCategory = prvalue
|
|
# 219| getExpr().getFullyConverted(): [CStyleCast] (short)...
|
|
# 219| Conversion = [IntegralConversion] integral conversion
|
|
# 219| Type = [ShortType] short
|
|
# 219| Value = [CStyleCast] 5
|
|
# 219| ValueCategory = prvalue
|
|
# 220| getStmt(3): [ExprStmt] ExprStmt
|
|
# 220| getExpr(): [AssignAddExpr] ... += ...
|
|
# 220| Type = [ShortType] short
|
|
# 220| ValueCategory = lvalue
|
|
# 220| getLValue(): [VariableAccess] y
|
|
# 220| Type = [ShortType] short
|
|
# 220| ValueCategory = lvalue
|
|
# 220| getRValue(): [VariableAccess] x
|
|
# 220| Type = [IntType] int
|
|
# 220| ValueCategory = prvalue(load)
|
|
# 223| getStmt(4): [ExprStmt] ExprStmt
|
|
# 223| getExpr(): [AssignLShiftExpr] ... <<= ...
|
|
# 223| Type = [ShortType] short
|
|
# 223| ValueCategory = lvalue
|
|
# 223| getLValue(): [VariableAccess] y
|
|
# 223| Type = [ShortType] short
|
|
# 223| ValueCategory = lvalue
|
|
# 223| getRValue(): [Literal] 1
|
|
# 223| Type = [IntType] int
|
|
# 223| Value = [Literal] 1
|
|
# 223| ValueCategory = prvalue
|
|
# 226| getStmt(5): [DeclStmt] declaration
|
|
# 226| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 226| Type = [LongType] long
|
|
# 226| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 226| getExpr(): [Literal] 7
|
|
# 226| Type = [IntType] int
|
|
# 226| Value = [Literal] 7
|
|
# 226| ValueCategory = prvalue
|
|
# 226| getExpr().getFullyConverted(): [CStyleCast] (long)...
|
|
# 226| Conversion = [IntegralConversion] integral conversion
|
|
# 226| Type = [LongType] long
|
|
# 226| Value = [CStyleCast] 7
|
|
# 226| ValueCategory = prvalue
|
|
# 227| getStmt(6): [ExprStmt] ExprStmt
|
|
# 227| getExpr(): [AssignAddExpr] ... += ...
|
|
# 227| Type = [LongType] long
|
|
# 227| ValueCategory = lvalue
|
|
# 227| getLValue(): [VariableAccess] z
|
|
# 227| Type = [LongType] long
|
|
# 227| ValueCategory = lvalue
|
|
# 227| getRValue(): [Literal] 2.0
|
|
# 227| Type = [FloatType] float
|
|
# 227| Value = [Literal] 2.0
|
|
# 227| ValueCategory = prvalue
|
|
# 228| getStmt(7): [ReturnStmt] return ...
|
|
# 230| [TopLevelFunction] void UninitializedVariables()
|
|
# 230| <params>:
|
|
# 230| getEntryPoint(): [BlockStmt] { ... }
|
|
# 231| getStmt(0): [DeclStmt] declaration
|
|
# 231| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 231| Type = [IntType] int
|
|
# 232| getStmt(1): [DeclStmt] declaration
|
|
# 232| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 232| Type = [IntType] int
|
|
# 232| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 232| getExpr(): [VariableAccess] x
|
|
# 232| Type = [IntType] int
|
|
# 232| ValueCategory = prvalue(load)
|
|
# 233| getStmt(2): [ReturnStmt] return ...
|
|
# 235| [TopLevelFunction] int Parameters(int, int)
|
|
# 235| <params>:
|
|
# 235| getParameter(0): [Parameter] x
|
|
# 235| Type = [IntType] int
|
|
# 235| getParameter(1): [Parameter] y
|
|
# 235| Type = [IntType] int
|
|
# 235| getEntryPoint(): [BlockStmt] { ... }
|
|
# 236| getStmt(0): [ReturnStmt] return ...
|
|
# 236| getExpr(): [RemExpr] ... % ...
|
|
# 236| Type = [IntType] int
|
|
# 236| ValueCategory = prvalue
|
|
# 236| getLeftOperand(): [VariableAccess] x
|
|
# 236| Type = [IntType] int
|
|
# 236| ValueCategory = prvalue(load)
|
|
# 236| getRightOperand(): [VariableAccess] y
|
|
# 236| Type = [IntType] int
|
|
# 236| ValueCategory = prvalue(load)
|
|
# 239| [TopLevelFunction] void IfStatements(bool, int, int)
|
|
# 239| <params>:
|
|
# 239| getParameter(0): [Parameter] b
|
|
# 239| Type = [BoolType] bool
|
|
# 239| getParameter(1): [Parameter] x
|
|
# 239| Type = [IntType] int
|
|
# 239| getParameter(2): [Parameter] y
|
|
# 239| Type = [IntType] int
|
|
# 239| getEntryPoint(): [BlockStmt] { ... }
|
|
# 240| getStmt(0): [IfStmt] if (...) ...
|
|
# 240| getCondition(): [VariableAccess] b
|
|
# 240| Type = [BoolType] bool
|
|
# 240| ValueCategory = prvalue(load)
|
|
# 240| getThen(): [BlockStmt] { ... }
|
|
# 243| getStmt(1): [IfStmt] if (...) ...
|
|
# 243| getCondition(): [VariableAccess] b
|
|
# 243| Type = [BoolType] bool
|
|
# 243| ValueCategory = prvalue(load)
|
|
# 243| getThen(): [BlockStmt] { ... }
|
|
# 244| getStmt(0): [ExprStmt] ExprStmt
|
|
# 244| getExpr(): [AssignExpr] ... = ...
|
|
# 244| Type = [IntType] int
|
|
# 244| ValueCategory = lvalue
|
|
# 244| getLValue(): [VariableAccess] x
|
|
# 244| Type = [IntType] int
|
|
# 244| ValueCategory = lvalue
|
|
# 244| getRValue(): [VariableAccess] y
|
|
# 244| Type = [IntType] int
|
|
# 244| ValueCategory = prvalue(load)
|
|
# 247| getStmt(2): [IfStmt] if (...) ...
|
|
# 247| getCondition(): [LTExpr] ... < ...
|
|
# 247| Type = [BoolType] bool
|
|
# 247| ValueCategory = prvalue
|
|
# 247| getLesserOperand(): [VariableAccess] x
|
|
# 247| Type = [IntType] int
|
|
# 247| ValueCategory = prvalue(load)
|
|
# 247| getGreaterOperand(): [Literal] 7
|
|
# 247| Type = [IntType] int
|
|
# 247| Value = [Literal] 7
|
|
# 247| ValueCategory = prvalue
|
|
# 248| getThen(): [ExprStmt] ExprStmt
|
|
# 248| getExpr(): [AssignExpr] ... = ...
|
|
# 248| Type = [IntType] int
|
|
# 248| ValueCategory = lvalue
|
|
# 248| getLValue(): [VariableAccess] x
|
|
# 248| Type = [IntType] int
|
|
# 248| ValueCategory = lvalue
|
|
# 248| getRValue(): [Literal] 2
|
|
# 248| Type = [IntType] int
|
|
# 248| Value = [Literal] 2
|
|
# 248| ValueCategory = prvalue
|
|
# 250| getElse(): [ExprStmt] ExprStmt
|
|
# 250| getExpr(): [AssignExpr] ... = ...
|
|
# 250| Type = [IntType] int
|
|
# 250| ValueCategory = lvalue
|
|
# 250| getLValue(): [VariableAccess] x
|
|
# 250| Type = [IntType] int
|
|
# 250| ValueCategory = lvalue
|
|
# 250| getRValue(): [Literal] 7
|
|
# 250| Type = [IntType] int
|
|
# 250| Value = [Literal] 7
|
|
# 250| ValueCategory = prvalue
|
|
# 251| getStmt(3): [ReturnStmt] return ...
|
|
# 253| [TopLevelFunction] void WhileStatements(int)
|
|
# 253| <params>:
|
|
# 253| getParameter(0): [Parameter] n
|
|
# 253| Type = [IntType] int
|
|
# 253| getEntryPoint(): [BlockStmt] { ... }
|
|
# 254| getStmt(0): [WhileStmt] while (...) ...
|
|
# 254| getCondition(): [GTExpr] ... > ...
|
|
# 254| Type = [BoolType] bool
|
|
# 254| ValueCategory = prvalue
|
|
# 254| getGreaterOperand(): [VariableAccess] n
|
|
# 254| Type = [IntType] int
|
|
# 254| ValueCategory = prvalue(load)
|
|
# 254| getLesserOperand(): [Literal] 0
|
|
# 254| Type = [IntType] int
|
|
# 254| Value = [Literal] 0
|
|
# 254| ValueCategory = prvalue
|
|
# 254| getStmt(): [BlockStmt] { ... }
|
|
# 255| getStmt(0): [ExprStmt] ExprStmt
|
|
# 255| getExpr(): [AssignSubExpr] ... -= ...
|
|
# 255| Type = [IntType] int
|
|
# 255| ValueCategory = lvalue
|
|
# 255| getLValue(): [VariableAccess] n
|
|
# 255| Type = [IntType] int
|
|
# 255| ValueCategory = lvalue
|
|
# 255| getRValue(): [Literal] 1
|
|
# 255| Type = [IntType] int
|
|
# 255| Value = [Literal] 1
|
|
# 255| ValueCategory = prvalue
|
|
# 257| getStmt(1): [ReturnStmt] return ...
|
|
# 259| [TopLevelFunction] void DoStatements(int)
|
|
# 259| <params>:
|
|
# 259| getParameter(0): [Parameter] n
|
|
# 259| Type = [IntType] int
|
|
# 259| getEntryPoint(): [BlockStmt] { ... }
|
|
# 260| getStmt(0): [DoStmt] do (...) ...
|
|
# 262| getCondition(): [GTExpr] ... > ...
|
|
# 262| Type = [BoolType] bool
|
|
# 262| ValueCategory = prvalue
|
|
# 262| getGreaterOperand(): [VariableAccess] n
|
|
# 262| Type = [IntType] int
|
|
# 262| ValueCategory = prvalue(load)
|
|
# 262| getLesserOperand(): [Literal] 0
|
|
# 262| Type = [IntType] int
|
|
# 262| Value = [Literal] 0
|
|
# 262| ValueCategory = prvalue
|
|
# 260| getStmt(): [BlockStmt] { ... }
|
|
# 261| getStmt(0): [ExprStmt] ExprStmt
|
|
# 261| getExpr(): [AssignSubExpr] ... -= ...
|
|
# 261| Type = [IntType] int
|
|
# 261| ValueCategory = lvalue
|
|
# 261| getLValue(): [VariableAccess] n
|
|
# 261| Type = [IntType] int
|
|
# 261| ValueCategory = lvalue
|
|
# 261| getRValue(): [Literal] 1
|
|
# 261| Type = [IntType] int
|
|
# 261| Value = [Literal] 1
|
|
# 261| ValueCategory = prvalue
|
|
# 263| getStmt(1): [ReturnStmt] return ...
|
|
# 265| [TopLevelFunction] void For_Empty()
|
|
# 265| <params>:
|
|
# 265| getEntryPoint(): [BlockStmt] { ... }
|
|
# 266| getStmt(0): [DeclStmt] declaration
|
|
# 266| getDeclarationEntry(0): [VariableDeclarationEntry] definition of j
|
|
# 266| Type = [IntType] int
|
|
# 267| getStmt(1): [ForStmt] for(...;...;...) ...
|
|
# 267| getStmt(): [BlockStmt] { ... }
|
|
# 268| getStmt(0): [EmptyStmt] ;
|
|
# 272| [TopLevelFunction] void For_Init()
|
|
# 272| <params>:
|
|
# 272| getEntryPoint(): [BlockStmt] { ... }
|
|
# 273| getStmt(0): [ForStmt] for(...;...;...) ...
|
|
# 273| getInitialization(): [DeclStmt] declaration
|
|
# 273| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 273| Type = [IntType] int
|
|
# 273| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 273| getExpr(): [Literal] 0
|
|
# 273| Type = [IntType] int
|
|
# 273| Value = [Literal] 0
|
|
# 273| ValueCategory = prvalue
|
|
# 273| getStmt(): [BlockStmt] { ... }
|
|
# 274| getStmt(0): [EmptyStmt] ;
|
|
# 278| [TopLevelFunction] void For_Condition()
|
|
# 278| <params>:
|
|
# 278| getEntryPoint(): [BlockStmt] { ... }
|
|
# 279| getStmt(0): [DeclStmt] declaration
|
|
# 279| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 279| Type = [IntType] int
|
|
# 279| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 279| getExpr(): [Literal] 0
|
|
# 279| Type = [IntType] int
|
|
# 279| Value = [Literal] 0
|
|
# 279| ValueCategory = prvalue
|
|
# 280| getStmt(1): [ForStmt] for(...;...;...) ...
|
|
# 280| getCondition(): [LTExpr] ... < ...
|
|
# 280| Type = [BoolType] bool
|
|
# 280| ValueCategory = prvalue
|
|
# 280| getLesserOperand(): [VariableAccess] i
|
|
# 280| Type = [IntType] int
|
|
# 280| ValueCategory = prvalue(load)
|
|
# 280| getGreaterOperand(): [Literal] 10
|
|
# 280| Type = [IntType] int
|
|
# 280| Value = [Literal] 10
|
|
# 280| ValueCategory = prvalue
|
|
# 280| getStmt(): [BlockStmt] { ... }
|
|
# 281| getStmt(0): [EmptyStmt] ;
|
|
# 283| getStmt(2): [ReturnStmt] return ...
|
|
# 285| [TopLevelFunction] void For_Update()
|
|
# 285| <params>:
|
|
# 285| getEntryPoint(): [BlockStmt] { ... }
|
|
# 286| getStmt(0): [DeclStmt] declaration
|
|
# 286| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 286| Type = [IntType] int
|
|
# 286| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 286| getExpr(): [Literal] 0
|
|
# 286| Type = [IntType] int
|
|
# 286| Value = [Literal] 0
|
|
# 286| ValueCategory = prvalue
|
|
# 287| getStmt(1): [ForStmt] for(...;...;...) ...
|
|
# 287| getUpdate(): [AssignAddExpr] ... += ...
|
|
# 287| Type = [IntType] int
|
|
# 287| ValueCategory = lvalue
|
|
# 287| getLValue(): [VariableAccess] i
|
|
# 287| Type = [IntType] int
|
|
# 287| ValueCategory = lvalue
|
|
# 287| getRValue(): [Literal] 1
|
|
# 287| Type = [IntType] int
|
|
# 287| Value = [Literal] 1
|
|
# 287| ValueCategory = prvalue
|
|
# 287| getStmt(): [BlockStmt] { ... }
|
|
# 288| getStmt(0): [EmptyStmt] ;
|
|
# 292| [TopLevelFunction] void For_InitCondition()
|
|
# 292| <params>:
|
|
# 292| getEntryPoint(): [BlockStmt] { ... }
|
|
# 293| getStmt(0): [ForStmt] for(...;...;...) ...
|
|
# 293| getInitialization(): [DeclStmt] declaration
|
|
# 293| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 293| Type = [IntType] int
|
|
# 293| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 293| getExpr(): [Literal] 0
|
|
# 293| Type = [IntType] int
|
|
# 293| Value = [Literal] 0
|
|
# 293| ValueCategory = prvalue
|
|
# 293| getCondition(): [LTExpr] ... < ...
|
|
# 293| Type = [BoolType] bool
|
|
# 293| ValueCategory = prvalue
|
|
# 293| getLesserOperand(): [VariableAccess] i
|
|
# 293| Type = [IntType] int
|
|
# 293| ValueCategory = prvalue(load)
|
|
# 293| getGreaterOperand(): [Literal] 10
|
|
# 293| Type = [IntType] int
|
|
# 293| Value = [Literal] 10
|
|
# 293| ValueCategory = prvalue
|
|
# 293| getStmt(): [BlockStmt] { ... }
|
|
# 294| getStmt(0): [EmptyStmt] ;
|
|
# 296| getStmt(1): [ReturnStmt] return ...
|
|
# 298| [TopLevelFunction] void For_InitUpdate()
|
|
# 298| <params>:
|
|
# 298| getEntryPoint(): [BlockStmt] { ... }
|
|
# 299| getStmt(0): [ForStmt] for(...;...;...) ...
|
|
# 299| getInitialization(): [DeclStmt] declaration
|
|
# 299| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 299| Type = [IntType] int
|
|
# 299| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 299| getExpr(): [Literal] 0
|
|
# 299| Type = [IntType] int
|
|
# 299| Value = [Literal] 0
|
|
# 299| ValueCategory = prvalue
|
|
# 299| getUpdate(): [AssignAddExpr] ... += ...
|
|
# 299| Type = [IntType] int
|
|
# 299| ValueCategory = lvalue
|
|
# 299| getLValue(): [VariableAccess] i
|
|
# 299| Type = [IntType] int
|
|
# 299| ValueCategory = lvalue
|
|
# 299| getRValue(): [Literal] 1
|
|
# 299| Type = [IntType] int
|
|
# 299| Value = [Literal] 1
|
|
# 299| ValueCategory = prvalue
|
|
# 299| getStmt(): [BlockStmt] { ... }
|
|
# 300| getStmt(0): [EmptyStmt] ;
|
|
# 304| [TopLevelFunction] void For_ConditionUpdate()
|
|
# 304| <params>:
|
|
# 304| getEntryPoint(): [BlockStmt] { ... }
|
|
# 305| getStmt(0): [DeclStmt] declaration
|
|
# 305| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 305| Type = [IntType] int
|
|
# 305| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 305| getExpr(): [Literal] 0
|
|
# 305| Type = [IntType] int
|
|
# 305| Value = [Literal] 0
|
|
# 305| ValueCategory = prvalue
|
|
# 306| getStmt(1): [ForStmt] for(...;...;...) ...
|
|
# 306| getCondition(): [LTExpr] ... < ...
|
|
# 306| Type = [BoolType] bool
|
|
# 306| ValueCategory = prvalue
|
|
# 306| getLesserOperand(): [VariableAccess] i
|
|
# 306| Type = [IntType] int
|
|
# 306| ValueCategory = prvalue(load)
|
|
# 306| getGreaterOperand(): [Literal] 10
|
|
# 306| Type = [IntType] int
|
|
# 306| Value = [Literal] 10
|
|
# 306| ValueCategory = prvalue
|
|
# 306| getUpdate(): [AssignAddExpr] ... += ...
|
|
# 306| Type = [IntType] int
|
|
# 306| ValueCategory = lvalue
|
|
# 306| getLValue(): [VariableAccess] i
|
|
# 306| Type = [IntType] int
|
|
# 306| ValueCategory = lvalue
|
|
# 306| getRValue(): [Literal] 1
|
|
# 306| Type = [IntType] int
|
|
# 306| Value = [Literal] 1
|
|
# 306| ValueCategory = prvalue
|
|
# 306| getStmt(): [BlockStmt] { ... }
|
|
# 307| getStmt(0): [EmptyStmt] ;
|
|
# 309| getStmt(2): [ReturnStmt] return ...
|
|
# 311| [TopLevelFunction] void For_InitConditionUpdate()
|
|
# 311| <params>:
|
|
# 311| getEntryPoint(): [BlockStmt] { ... }
|
|
# 312| getStmt(0): [ForStmt] for(...;...;...) ...
|
|
# 312| getInitialization(): [DeclStmt] declaration
|
|
# 312| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 312| Type = [IntType] int
|
|
# 312| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 312| getExpr(): [Literal] 0
|
|
# 312| Type = [IntType] int
|
|
# 312| Value = [Literal] 0
|
|
# 312| ValueCategory = prvalue
|
|
# 312| getCondition(): [LTExpr] ... < ...
|
|
# 312| Type = [BoolType] bool
|
|
# 312| ValueCategory = prvalue
|
|
# 312| getLesserOperand(): [VariableAccess] i
|
|
# 312| Type = [IntType] int
|
|
# 312| ValueCategory = prvalue(load)
|
|
# 312| getGreaterOperand(): [Literal] 10
|
|
# 312| Type = [IntType] int
|
|
# 312| Value = [Literal] 10
|
|
# 312| ValueCategory = prvalue
|
|
# 312| getUpdate(): [AssignAddExpr] ... += ...
|
|
# 312| Type = [IntType] int
|
|
# 312| ValueCategory = lvalue
|
|
# 312| getLValue(): [VariableAccess] i
|
|
# 312| Type = [IntType] int
|
|
# 312| ValueCategory = lvalue
|
|
# 312| getRValue(): [Literal] 1
|
|
# 312| Type = [IntType] int
|
|
# 312| Value = [Literal] 1
|
|
# 312| ValueCategory = prvalue
|
|
# 312| getStmt(): [BlockStmt] { ... }
|
|
# 313| getStmt(0): [EmptyStmt] ;
|
|
# 315| getStmt(1): [ReturnStmt] return ...
|
|
# 317| [TopLevelFunction] void For_Break()
|
|
# 317| <params>:
|
|
# 317| getEntryPoint(): [BlockStmt] { ... }
|
|
# 318| getStmt(0): [ForStmt] for(...;...;...) ...
|
|
# 318| getInitialization(): [DeclStmt] declaration
|
|
# 318| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 318| Type = [IntType] int
|
|
# 318| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 318| getExpr(): [Literal] 0
|
|
# 318| Type = [IntType] int
|
|
# 318| Value = [Literal] 0
|
|
# 318| ValueCategory = prvalue
|
|
# 318| getCondition(): [LTExpr] ... < ...
|
|
# 318| Type = [BoolType] bool
|
|
# 318| ValueCategory = prvalue
|
|
# 318| getLesserOperand(): [VariableAccess] i
|
|
# 318| Type = [IntType] int
|
|
# 318| ValueCategory = prvalue(load)
|
|
# 318| getGreaterOperand(): [Literal] 10
|
|
# 318| Type = [IntType] int
|
|
# 318| Value = [Literal] 10
|
|
# 318| ValueCategory = prvalue
|
|
# 318| getUpdate(): [AssignAddExpr] ... += ...
|
|
# 318| Type = [IntType] int
|
|
# 318| ValueCategory = lvalue
|
|
# 318| getLValue(): [VariableAccess] i
|
|
# 318| Type = [IntType] int
|
|
# 318| ValueCategory = lvalue
|
|
# 318| getRValue(): [Literal] 1
|
|
# 318| Type = [IntType] int
|
|
# 318| Value = [Literal] 1
|
|
# 318| ValueCategory = prvalue
|
|
# 318| getStmt(): [BlockStmt] { ... }
|
|
# 319| getStmt(0): [IfStmt] if (...) ...
|
|
# 319| getCondition(): [EQExpr] ... == ...
|
|
# 319| Type = [BoolType] bool
|
|
# 319| ValueCategory = prvalue
|
|
# 319| getLeftOperand(): [VariableAccess] i
|
|
# 319| Type = [IntType] int
|
|
# 319| ValueCategory = prvalue(load)
|
|
# 319| getRightOperand(): [Literal] 5
|
|
# 319| Type = [IntType] int
|
|
# 319| Value = [Literal] 5
|
|
# 319| ValueCategory = prvalue
|
|
# 319| getThen(): [BlockStmt] { ... }
|
|
# 320| getStmt(0): [BreakStmt] break;
|
|
# 322| getStmt(1): [LabelStmt] label ...:
|
|
# 323| getStmt(2): [ReturnStmt] return ...
|
|
# 325| [TopLevelFunction] void For_Continue_Update()
|
|
# 325| <params>:
|
|
# 325| getEntryPoint(): [BlockStmt] { ... }
|
|
# 326| getStmt(0): [ForStmt] for(...;...;...) ...
|
|
# 326| getInitialization(): [DeclStmt] declaration
|
|
# 326| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 326| Type = [IntType] int
|
|
# 326| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 326| getExpr(): [Literal] 0
|
|
# 326| Type = [IntType] int
|
|
# 326| Value = [Literal] 0
|
|
# 326| ValueCategory = prvalue
|
|
# 326| getCondition(): [LTExpr] ... < ...
|
|
# 326| Type = [BoolType] bool
|
|
# 326| ValueCategory = prvalue
|
|
# 326| getLesserOperand(): [VariableAccess] i
|
|
# 326| Type = [IntType] int
|
|
# 326| ValueCategory = prvalue(load)
|
|
# 326| getGreaterOperand(): [Literal] 10
|
|
# 326| Type = [IntType] int
|
|
# 326| Value = [Literal] 10
|
|
# 326| ValueCategory = prvalue
|
|
# 326| getUpdate(): [AssignAddExpr] ... += ...
|
|
# 326| Type = [IntType] int
|
|
# 326| ValueCategory = lvalue
|
|
# 326| getLValue(): [VariableAccess] i
|
|
# 326| Type = [IntType] int
|
|
# 326| ValueCategory = lvalue
|
|
# 326| getRValue(): [Literal] 1
|
|
# 326| Type = [IntType] int
|
|
# 326| Value = [Literal] 1
|
|
# 326| ValueCategory = prvalue
|
|
# 326| getStmt(): [BlockStmt] { ... }
|
|
# 327| getStmt(0): [IfStmt] if (...) ...
|
|
# 327| getCondition(): [EQExpr] ... == ...
|
|
# 327| Type = [BoolType] bool
|
|
# 327| ValueCategory = prvalue
|
|
# 327| getLeftOperand(): [VariableAccess] i
|
|
# 327| Type = [IntType] int
|
|
# 327| ValueCategory = prvalue(load)
|
|
# 327| getRightOperand(): [Literal] 5
|
|
# 327| Type = [IntType] int
|
|
# 327| Value = [Literal] 5
|
|
# 327| ValueCategory = prvalue
|
|
# 327| getThen(): [BlockStmt] { ... }
|
|
# 328| getStmt(0): [ContinueStmt] continue;
|
|
# 326| getStmt(1): [LabelStmt] label ...:
|
|
# 331| getStmt(1): [ReturnStmt] return ...
|
|
# 333| [TopLevelFunction] void For_Continue_NoUpdate()
|
|
# 333| <params>:
|
|
# 333| getEntryPoint(): [BlockStmt] { ... }
|
|
# 334| getStmt(0): [ForStmt] for(...;...;...) ...
|
|
# 334| getInitialization(): [DeclStmt] declaration
|
|
# 334| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 334| Type = [IntType] int
|
|
# 334| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 334| getExpr(): [Literal] 0
|
|
# 334| Type = [IntType] int
|
|
# 334| Value = [Literal] 0
|
|
# 334| ValueCategory = prvalue
|
|
# 334| getCondition(): [LTExpr] ... < ...
|
|
# 334| Type = [BoolType] bool
|
|
# 334| ValueCategory = prvalue
|
|
# 334| getLesserOperand(): [VariableAccess] i
|
|
# 334| Type = [IntType] int
|
|
# 334| ValueCategory = prvalue(load)
|
|
# 334| getGreaterOperand(): [Literal] 10
|
|
# 334| Type = [IntType] int
|
|
# 334| Value = [Literal] 10
|
|
# 334| ValueCategory = prvalue
|
|
# 334| getStmt(): [BlockStmt] { ... }
|
|
# 335| getStmt(0): [IfStmt] if (...) ...
|
|
# 335| getCondition(): [EQExpr] ... == ...
|
|
# 335| Type = [BoolType] bool
|
|
# 335| ValueCategory = prvalue
|
|
# 335| getLeftOperand(): [VariableAccess] i
|
|
# 335| Type = [IntType] int
|
|
# 335| ValueCategory = prvalue(load)
|
|
# 335| getRightOperand(): [Literal] 5
|
|
# 335| Type = [IntType] int
|
|
# 335| Value = [Literal] 5
|
|
# 335| ValueCategory = prvalue
|
|
# 335| getThen(): [BlockStmt] { ... }
|
|
# 336| getStmt(0): [ContinueStmt] continue;
|
|
# 334| getStmt(1): [LabelStmt] label ...:
|
|
# 339| getStmt(1): [ReturnStmt] return ...
|
|
# 341| [TopLevelFunction] int Dereference(int*)
|
|
# 341| <params>:
|
|
# 341| getParameter(0): [Parameter] p
|
|
# 341| Type = [IntPointerType] int *
|
|
# 341| getEntryPoint(): [BlockStmt] { ... }
|
|
# 342| getStmt(0): [ExprStmt] ExprStmt
|
|
# 342| getExpr(): [AssignExpr] ... = ...
|
|
# 342| Type = [IntType] int
|
|
# 342| ValueCategory = lvalue
|
|
# 342| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 342| Type = [IntType] int
|
|
# 342| ValueCategory = lvalue
|
|
# 342| getOperand(): [VariableAccess] p
|
|
# 342| Type = [IntPointerType] int *
|
|
# 342| ValueCategory = prvalue(load)
|
|
# 342| getRValue(): [Literal] 1
|
|
# 342| Type = [IntType] int
|
|
# 342| Value = [Literal] 1
|
|
# 342| ValueCategory = prvalue
|
|
# 343| getStmt(1): [ReturnStmt] return ...
|
|
# 343| getExpr(): [PointerDereferenceExpr] * ...
|
|
# 343| Type = [IntType] int
|
|
# 343| ValueCategory = prvalue(load)
|
|
# 343| getOperand(): [VariableAccess] p
|
|
# 343| Type = [IntPointerType] int *
|
|
# 343| ValueCategory = prvalue(load)
|
|
# 348| [TopLevelFunction] int* AddressOf()
|
|
# 348| <params>:
|
|
# 348| getEntryPoint(): [BlockStmt] { ... }
|
|
# 349| getStmt(0): [ReturnStmt] return ...
|
|
# 349| getExpr(): [AddressOfExpr] & ...
|
|
# 349| Type = [IntPointerType] int *
|
|
# 349| ValueCategory = prvalue
|
|
# 349| getOperand(): [VariableAccess] g
|
|
# 349| Type = [IntType] int
|
|
# 349| ValueCategory = lvalue
|
|
# 352| [TopLevelFunction] void Break(int)
|
|
# 352| <params>:
|
|
# 352| getParameter(0): [Parameter] n
|
|
# 352| Type = [IntType] int
|
|
# 352| getEntryPoint(): [BlockStmt] { ... }
|
|
# 353| getStmt(0): [WhileStmt] while (...) ...
|
|
# 353| getCondition(): [GTExpr] ... > ...
|
|
# 353| Type = [BoolType] bool
|
|
# 353| ValueCategory = prvalue
|
|
# 353| getGreaterOperand(): [VariableAccess] n
|
|
# 353| Type = [IntType] int
|
|
# 353| ValueCategory = prvalue(load)
|
|
# 353| getLesserOperand(): [Literal] 0
|
|
# 353| Type = [IntType] int
|
|
# 353| Value = [Literal] 0
|
|
# 353| ValueCategory = prvalue
|
|
# 353| getStmt(): [BlockStmt] { ... }
|
|
# 354| getStmt(0): [IfStmt] if (...) ...
|
|
# 354| getCondition(): [EQExpr] ... == ...
|
|
# 354| Type = [BoolType] bool
|
|
# 354| ValueCategory = prvalue
|
|
# 354| getLeftOperand(): [VariableAccess] n
|
|
# 354| Type = [IntType] int
|
|
# 354| ValueCategory = prvalue(load)
|
|
# 354| getRightOperand(): [Literal] 1
|
|
# 354| Type = [IntType] int
|
|
# 354| Value = [Literal] 1
|
|
# 354| ValueCategory = prvalue
|
|
# 355| getThen(): [BreakStmt] break;
|
|
# 356| getStmt(1): [ExprStmt] ExprStmt
|
|
# 356| getExpr(): [AssignSubExpr] ... -= ...
|
|
# 356| Type = [IntType] int
|
|
# 356| ValueCategory = lvalue
|
|
# 356| getLValue(): [VariableAccess] n
|
|
# 356| Type = [IntType] int
|
|
# 356| ValueCategory = lvalue
|
|
# 356| getRValue(): [Literal] 1
|
|
# 356| Type = [IntType] int
|
|
# 356| Value = [Literal] 1
|
|
# 356| ValueCategory = prvalue
|
|
# 357| getStmt(1): [LabelStmt] label ...:
|
|
# 358| getStmt(2): [ReturnStmt] return ...
|
|
# 360| [TopLevelFunction] void Continue(int)
|
|
# 360| <params>:
|
|
# 360| getParameter(0): [Parameter] n
|
|
# 360| Type = [IntType] int
|
|
# 360| getEntryPoint(): [BlockStmt] { ... }
|
|
# 361| getStmt(0): [DoStmt] do (...) ...
|
|
# 366| getCondition(): [GTExpr] ... > ...
|
|
# 366| Type = [BoolType] bool
|
|
# 366| ValueCategory = prvalue
|
|
# 366| getGreaterOperand(): [VariableAccess] n
|
|
# 366| Type = [IntType] int
|
|
# 366| ValueCategory = prvalue(load)
|
|
# 366| getLesserOperand(): [Literal] 0
|
|
# 366| Type = [IntType] int
|
|
# 366| Value = [Literal] 0
|
|
# 366| ValueCategory = prvalue
|
|
# 361| getStmt(): [BlockStmt] { ... }
|
|
# 362| getStmt(0): [IfStmt] if (...) ...
|
|
# 362| getCondition(): [EQExpr] ... == ...
|
|
# 362| Type = [BoolType] bool
|
|
# 362| ValueCategory = prvalue
|
|
# 362| getLeftOperand(): [VariableAccess] n
|
|
# 362| Type = [IntType] int
|
|
# 362| ValueCategory = prvalue(load)
|
|
# 362| getRightOperand(): [Literal] 1
|
|
# 362| Type = [IntType] int
|
|
# 362| Value = [Literal] 1
|
|
# 362| ValueCategory = prvalue
|
|
# 362| getThen(): [BlockStmt] { ... }
|
|
# 363| getStmt(0): [ContinueStmt] continue;
|
|
# 365| getStmt(1): [ExprStmt] ExprStmt
|
|
# 365| getExpr(): [AssignSubExpr] ... -= ...
|
|
# 365| Type = [IntType] int
|
|
# 365| ValueCategory = lvalue
|
|
# 365| getLValue(): [VariableAccess] n
|
|
# 365| Type = [IntType] int
|
|
# 365| ValueCategory = lvalue
|
|
# 365| getRValue(): [Literal] 1
|
|
# 365| Type = [IntType] int
|
|
# 365| Value = [Literal] 1
|
|
# 365| ValueCategory = prvalue
|
|
# 361| getStmt(2): [LabelStmt] label ...:
|
|
# 367| getStmt(1): [ReturnStmt] return ...
|
|
# 370| [TopLevelFunction] int Add(int, int)
|
|
# 370| <params>:
|
|
# 370| getParameter(0): [Parameter] x
|
|
# 370| Type = [IntType] int
|
|
# 370| getParameter(1): [Parameter] y
|
|
# 370| Type = [IntType] int
|
|
# 372| [TopLevelFunction] void Call()
|
|
# 372| <params>:
|
|
# 372| getEntryPoint(): [BlockStmt] { ... }
|
|
# 373| getStmt(0): [ExprStmt] ExprStmt
|
|
# 373| getExpr(): [FunctionCall] call to VoidFunc
|
|
# 373| Type = [VoidType] void
|
|
# 373| ValueCategory = prvalue
|
|
# 374| getStmt(1): [ReturnStmt] return ...
|
|
# 376| [TopLevelFunction] int CallAdd(int, int)
|
|
# 376| <params>:
|
|
# 376| getParameter(0): [Parameter] x
|
|
# 376| Type = [IntType] int
|
|
# 376| getParameter(1): [Parameter] y
|
|
# 376| Type = [IntType] int
|
|
# 376| getEntryPoint(): [BlockStmt] { ... }
|
|
# 377| getStmt(0): [ReturnStmt] return ...
|
|
# 377| getExpr(): [FunctionCall] call to Add
|
|
# 377| Type = [IntType] int
|
|
# 377| ValueCategory = prvalue
|
|
# 377| getArgument(0): [VariableAccess] x
|
|
# 377| Type = [IntType] int
|
|
# 377| ValueCategory = prvalue(load)
|
|
# 377| getArgument(1): [VariableAccess] y
|
|
# 377| Type = [IntType] int
|
|
# 377| ValueCategory = prvalue(load)
|
|
# 380| [TopLevelFunction] int Comma(int, int)
|
|
# 380| <params>:
|
|
# 380| getParameter(0): [Parameter] x
|
|
# 380| Type = [IntType] int
|
|
# 380| getParameter(1): [Parameter] y
|
|
# 380| Type = [IntType] int
|
|
# 380| getEntryPoint(): [BlockStmt] { ... }
|
|
# 381| getStmt(0): [ReturnStmt] return ...
|
|
# 381| getExpr(): [CommaExpr] ... , ...
|
|
# 381| Type = [IntType] int
|
|
# 381| ValueCategory = prvalue
|
|
# 381| getLeftOperand(): [FunctionCall] call to VoidFunc
|
|
# 381| Type = [VoidType] void
|
|
# 381| ValueCategory = prvalue
|
|
# 381| getRightOperand(): [FunctionCall] call to CallAdd
|
|
# 381| Type = [IntType] int
|
|
# 381| ValueCategory = prvalue
|
|
# 381| getArgument(0): [VariableAccess] x
|
|
# 381| Type = [IntType] int
|
|
# 381| ValueCategory = prvalue(load)
|
|
# 381| getArgument(1): [VariableAccess] y
|
|
# 381| Type = [IntType] int
|
|
# 381| ValueCategory = prvalue(load)
|
|
# 384| [TopLevelFunction] void Switch(int)
|
|
# 384| <params>:
|
|
# 384| getParameter(0): [Parameter] x
|
|
# 384| Type = [IntType] int
|
|
# 384| getEntryPoint(): [BlockStmt] { ... }
|
|
# 385| getStmt(0): [DeclStmt] declaration
|
|
# 385| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 385| Type = [IntType] int
|
|
# 386| getStmt(1): [SwitchStmt] switch (...) ...
|
|
# 386| getExpr(): [VariableAccess] x
|
|
# 386| Type = [IntType] int
|
|
# 386| ValueCategory = prvalue(load)
|
|
# 386| getStmt(): [BlockStmt] { ... }
|
|
# 387| getStmt(0): [ExprStmt] ExprStmt
|
|
# 387| getExpr(): [AssignExpr] ... = ...
|
|
# 387| Type = [IntType] int
|
|
# 387| ValueCategory = lvalue
|
|
# 387| getLValue(): [VariableAccess] y
|
|
# 387| Type = [IntType] int
|
|
# 387| ValueCategory = lvalue
|
|
# 387| getRValue(): [Literal] 1234
|
|
# 387| Type = [IntType] int
|
|
# 387| Value = [Literal] 1234
|
|
# 387| ValueCategory = prvalue
|
|
# 389| getStmt(1): [SwitchCase] case ...:
|
|
# 389| getExpr(): [UnaryMinusExpr] - ...
|
|
# 389| Type = [IntType] int
|
|
# 389| Value = [UnaryMinusExpr] -1
|
|
# 389| ValueCategory = prvalue
|
|
# 389| getOperand(): [Literal] 1
|
|
# 389| Type = [IntType] int
|
|
# 389| Value = [Literal] 1
|
|
# 389| ValueCategory = prvalue
|
|
# 390| getStmt(2): [ExprStmt] ExprStmt
|
|
# 390| getExpr(): [AssignExpr] ... = ...
|
|
# 390| Type = [IntType] int
|
|
# 390| ValueCategory = lvalue
|
|
# 390| getLValue(): [VariableAccess] y
|
|
# 390| Type = [IntType] int
|
|
# 390| ValueCategory = lvalue
|
|
# 390| getRValue(): [UnaryMinusExpr] - ...
|
|
# 390| Type = [IntType] int
|
|
# 390| Value = [UnaryMinusExpr] -1
|
|
# 390| ValueCategory = prvalue
|
|
# 390| getOperand(): [Literal] 1
|
|
# 390| Type = [IntType] int
|
|
# 390| Value = [Literal] 1
|
|
# 390| ValueCategory = prvalue
|
|
# 391| getStmt(3): [BreakStmt] break;
|
|
# 393| getStmt(4): [SwitchCase] case ...:
|
|
# 393| getExpr(): [Literal] 1
|
|
# 393| Type = [IntType] int
|
|
# 393| Value = [Literal] 1
|
|
# 393| ValueCategory = prvalue
|
|
# 394| getStmt(5): [SwitchCase] case ...:
|
|
# 394| getExpr(): [Literal] 2
|
|
# 394| Type = [IntType] int
|
|
# 394| Value = [Literal] 2
|
|
# 394| ValueCategory = prvalue
|
|
# 395| getStmt(6): [ExprStmt] ExprStmt
|
|
# 395| getExpr(): [AssignExpr] ... = ...
|
|
# 395| Type = [IntType] int
|
|
# 395| ValueCategory = lvalue
|
|
# 395| getLValue(): [VariableAccess] y
|
|
# 395| Type = [IntType] int
|
|
# 395| ValueCategory = lvalue
|
|
# 395| getRValue(): [Literal] 1
|
|
# 395| Type = [IntType] int
|
|
# 395| Value = [Literal] 1
|
|
# 395| ValueCategory = prvalue
|
|
# 396| getStmt(7): [BreakStmt] break;
|
|
# 398| getStmt(8): [SwitchCase] case ...:
|
|
# 398| getExpr(): [Literal] 3
|
|
# 398| Type = [IntType] int
|
|
# 398| Value = [Literal] 3
|
|
# 398| ValueCategory = prvalue
|
|
# 399| getStmt(9): [ExprStmt] ExprStmt
|
|
# 399| getExpr(): [AssignExpr] ... = ...
|
|
# 399| Type = [IntType] int
|
|
# 399| ValueCategory = lvalue
|
|
# 399| getLValue(): [VariableAccess] y
|
|
# 399| Type = [IntType] int
|
|
# 399| ValueCategory = lvalue
|
|
# 399| getRValue(): [Literal] 3
|
|
# 399| Type = [IntType] int
|
|
# 399| Value = [Literal] 3
|
|
# 399| ValueCategory = prvalue
|
|
# 400| getStmt(10): [SwitchCase] case ...:
|
|
# 400| getExpr(): [Literal] 4
|
|
# 400| Type = [IntType] int
|
|
# 400| Value = [Literal] 4
|
|
# 400| ValueCategory = prvalue
|
|
# 401| getStmt(11): [ExprStmt] ExprStmt
|
|
# 401| getExpr(): [AssignExpr] ... = ...
|
|
# 401| Type = [IntType] int
|
|
# 401| ValueCategory = lvalue
|
|
# 401| getLValue(): [VariableAccess] y
|
|
# 401| Type = [IntType] int
|
|
# 401| ValueCategory = lvalue
|
|
# 401| getRValue(): [Literal] 4
|
|
# 401| Type = [IntType] int
|
|
# 401| Value = [Literal] 4
|
|
# 401| ValueCategory = prvalue
|
|
# 402| getStmt(12): [BreakStmt] break;
|
|
# 404| getStmt(13): [SwitchCase] default:
|
|
# 405| getStmt(14): [ExprStmt] ExprStmt
|
|
# 405| getExpr(): [AssignExpr] ... = ...
|
|
# 405| Type = [IntType] int
|
|
# 405| ValueCategory = lvalue
|
|
# 405| getLValue(): [VariableAccess] y
|
|
# 405| Type = [IntType] int
|
|
# 405| ValueCategory = lvalue
|
|
# 405| getRValue(): [Literal] 0
|
|
# 405| Type = [IntType] int
|
|
# 405| Value = [Literal] 0
|
|
# 405| ValueCategory = prvalue
|
|
# 406| getStmt(15): [BreakStmt] break;
|
|
# 408| getStmt(16): [ExprStmt] ExprStmt
|
|
# 408| getExpr(): [AssignExpr] ... = ...
|
|
# 408| Type = [IntType] int
|
|
# 408| ValueCategory = lvalue
|
|
# 408| getLValue(): [VariableAccess] y
|
|
# 408| Type = [IntType] int
|
|
# 408| ValueCategory = lvalue
|
|
# 408| getRValue(): [Literal] 5678
|
|
# 408| Type = [IntType] int
|
|
# 408| Value = [Literal] 5678
|
|
# 408| ValueCategory = prvalue
|
|
# 409| getStmt(2): [LabelStmt] label ...:
|
|
# 410| getStmt(3): [ReturnStmt] return ...
|
|
# 412| [CopyAssignmentOperator] Point& Point::operator=(Point const&)
|
|
# 412| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Point &
|
|
# 412| [MoveAssignmentOperator] Point& Point::operator=(Point&&)
|
|
# 412| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Point &&
|
|
# 417| [CopyAssignmentOperator] Rect& Rect::operator=(Rect const&)
|
|
# 417| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Rect &
|
|
# 417| [MoveAssignmentOperator] Rect& Rect::operator=(Rect&&)
|
|
# 417| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Rect &&
|
|
# 422| [TopLevelFunction] Point ReturnStruct(Point)
|
|
# 422| <params>:
|
|
# 422| getParameter(0): [Parameter] pt
|
|
# 422| Type = [Struct] Point
|
|
# 422| getEntryPoint(): [BlockStmt] { ... }
|
|
# 423| getStmt(0): [ReturnStmt] return ...
|
|
# 423| getExpr(): [VariableAccess] pt
|
|
# 423| Type = [Struct] Point
|
|
# 423| ValueCategory = prvalue(load)
|
|
# 426| [TopLevelFunction] void FieldAccess()
|
|
# 426| <params>:
|
|
# 426| getEntryPoint(): [BlockStmt] { ... }
|
|
# 427| getStmt(0): [DeclStmt] declaration
|
|
# 427| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pt
|
|
# 427| Type = [Struct] Point
|
|
# 428| getStmt(1): [ExprStmt] ExprStmt
|
|
# 428| getExpr(): [AssignExpr] ... = ...
|
|
# 428| Type = [IntType] int
|
|
# 428| ValueCategory = lvalue
|
|
# 428| getLValue(): [ValueFieldAccess] x
|
|
# 428| Type = [IntType] int
|
|
# 428| ValueCategory = lvalue
|
|
# 428| getQualifier(): [VariableAccess] pt
|
|
# 428| Type = [Struct] Point
|
|
# 428| ValueCategory = lvalue
|
|
# 428| getRValue(): [Literal] 5
|
|
# 428| Type = [IntType] int
|
|
# 428| Value = [Literal] 5
|
|
# 428| ValueCategory = prvalue
|
|
# 429| getStmt(2): [ExprStmt] ExprStmt
|
|
# 429| getExpr(): [AssignExpr] ... = ...
|
|
# 429| Type = [IntType] int
|
|
# 429| ValueCategory = lvalue
|
|
# 429| getLValue(): [ValueFieldAccess] y
|
|
# 429| Type = [IntType] int
|
|
# 429| ValueCategory = lvalue
|
|
# 429| getQualifier(): [VariableAccess] pt
|
|
# 429| Type = [Struct] Point
|
|
# 429| ValueCategory = lvalue
|
|
# 429| getRValue(): [ValueFieldAccess] x
|
|
# 429| Type = [IntType] int
|
|
# 429| ValueCategory = prvalue(load)
|
|
# 429| getQualifier(): [VariableAccess] pt
|
|
# 429| Type = [Struct] Point
|
|
# 429| ValueCategory = lvalue
|
|
# 430| getStmt(3): [DeclStmt] declaration
|
|
# 430| getDeclarationEntry(0): [VariableDeclarationEntry] definition of p
|
|
# 430| Type = [IntPointerType] int *
|
|
# 430| getVariable().getInitializer(): [Initializer] initializer for p
|
|
# 430| getExpr(): [AddressOfExpr] & ...
|
|
# 430| Type = [IntPointerType] int *
|
|
# 430| ValueCategory = prvalue
|
|
# 430| getOperand(): [ValueFieldAccess] y
|
|
# 430| Type = [IntType] int
|
|
# 430| ValueCategory = lvalue
|
|
# 430| getQualifier(): [VariableAccess] pt
|
|
# 430| Type = [Struct] Point
|
|
# 430| ValueCategory = lvalue
|
|
# 431| getStmt(4): [ReturnStmt] return ...
|
|
# 433| [TopLevelFunction] void LogicalOr(bool, bool)
|
|
# 433| <params>:
|
|
# 433| getParameter(0): [Parameter] a
|
|
# 433| Type = [BoolType] bool
|
|
# 433| getParameter(1): [Parameter] b
|
|
# 433| Type = [BoolType] bool
|
|
# 433| getEntryPoint(): [BlockStmt] { ... }
|
|
# 434| getStmt(0): [DeclStmt] declaration
|
|
# 434| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 434| Type = [IntType] int
|
|
# 435| getStmt(1): [IfStmt] if (...) ...
|
|
# 435| getCondition(): [LogicalOrExpr] ... || ...
|
|
# 435| Type = [BoolType] bool
|
|
# 435| ValueCategory = prvalue
|
|
# 435| getLeftOperand(): [VariableAccess] a
|
|
# 435| Type = [BoolType] bool
|
|
# 435| ValueCategory = prvalue(load)
|
|
# 435| getRightOperand(): [VariableAccess] b
|
|
# 435| Type = [BoolType] bool
|
|
# 435| ValueCategory = prvalue(load)
|
|
# 435| getThen(): [BlockStmt] { ... }
|
|
# 436| getStmt(0): [ExprStmt] ExprStmt
|
|
# 436| getExpr(): [AssignExpr] ... = ...
|
|
# 436| Type = [IntType] int
|
|
# 436| ValueCategory = lvalue
|
|
# 436| getLValue(): [VariableAccess] x
|
|
# 436| Type = [IntType] int
|
|
# 436| ValueCategory = lvalue
|
|
# 436| getRValue(): [Literal] 7
|
|
# 436| Type = [IntType] int
|
|
# 436| Value = [Literal] 7
|
|
# 436| ValueCategory = prvalue
|
|
# 439| getStmt(2): [IfStmt] if (...) ...
|
|
# 439| getCondition(): [LogicalOrExpr] ... || ...
|
|
# 439| Type = [BoolType] bool
|
|
# 439| ValueCategory = prvalue
|
|
# 439| getLeftOperand(): [VariableAccess] a
|
|
# 439| Type = [BoolType] bool
|
|
# 439| ValueCategory = prvalue(load)
|
|
# 439| getRightOperand(): [VariableAccess] b
|
|
# 439| Type = [BoolType] bool
|
|
# 439| ValueCategory = prvalue(load)
|
|
# 439| getThen(): [BlockStmt] { ... }
|
|
# 440| getStmt(0): [ExprStmt] ExprStmt
|
|
# 440| getExpr(): [AssignExpr] ... = ...
|
|
# 440| Type = [IntType] int
|
|
# 440| ValueCategory = lvalue
|
|
# 440| getLValue(): [VariableAccess] x
|
|
# 440| Type = [IntType] int
|
|
# 440| ValueCategory = lvalue
|
|
# 440| getRValue(): [Literal] 1
|
|
# 440| Type = [IntType] int
|
|
# 440| Value = [Literal] 1
|
|
# 440| ValueCategory = prvalue
|
|
# 442| getElse(): [BlockStmt] { ... }
|
|
# 443| getStmt(0): [ExprStmt] ExprStmt
|
|
# 443| getExpr(): [AssignExpr] ... = ...
|
|
# 443| Type = [IntType] int
|
|
# 443| ValueCategory = lvalue
|
|
# 443| getLValue(): [VariableAccess] x
|
|
# 443| Type = [IntType] int
|
|
# 443| ValueCategory = lvalue
|
|
# 443| getRValue(): [Literal] 5
|
|
# 443| Type = [IntType] int
|
|
# 443| Value = [Literal] 5
|
|
# 443| ValueCategory = prvalue
|
|
# 445| getStmt(3): [ReturnStmt] return ...
|
|
# 447| [TopLevelFunction] void LogicalAnd(bool, bool)
|
|
# 447| <params>:
|
|
# 447| getParameter(0): [Parameter] a
|
|
# 447| Type = [BoolType] bool
|
|
# 447| getParameter(1): [Parameter] b
|
|
# 447| Type = [BoolType] bool
|
|
# 447| getEntryPoint(): [BlockStmt] { ... }
|
|
# 448| getStmt(0): [DeclStmt] declaration
|
|
# 448| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 448| Type = [IntType] int
|
|
# 449| getStmt(1): [IfStmt] if (...) ...
|
|
# 449| getCondition(): [LogicalAndExpr] ... && ...
|
|
# 449| Type = [BoolType] bool
|
|
# 449| ValueCategory = prvalue
|
|
# 449| getLeftOperand(): [VariableAccess] a
|
|
# 449| Type = [BoolType] bool
|
|
# 449| ValueCategory = prvalue(load)
|
|
# 449| getRightOperand(): [VariableAccess] b
|
|
# 449| Type = [BoolType] bool
|
|
# 449| ValueCategory = prvalue(load)
|
|
# 449| getThen(): [BlockStmt] { ... }
|
|
# 450| getStmt(0): [ExprStmt] ExprStmt
|
|
# 450| getExpr(): [AssignExpr] ... = ...
|
|
# 450| Type = [IntType] int
|
|
# 450| ValueCategory = lvalue
|
|
# 450| getLValue(): [VariableAccess] x
|
|
# 450| Type = [IntType] int
|
|
# 450| ValueCategory = lvalue
|
|
# 450| getRValue(): [Literal] 7
|
|
# 450| Type = [IntType] int
|
|
# 450| Value = [Literal] 7
|
|
# 450| ValueCategory = prvalue
|
|
# 453| getStmt(2): [IfStmt] if (...) ...
|
|
# 453| getCondition(): [LogicalAndExpr] ... && ...
|
|
# 453| Type = [BoolType] bool
|
|
# 453| ValueCategory = prvalue
|
|
# 453| getLeftOperand(): [VariableAccess] a
|
|
# 453| Type = [BoolType] bool
|
|
# 453| ValueCategory = prvalue(load)
|
|
# 453| getRightOperand(): [VariableAccess] b
|
|
# 453| Type = [BoolType] bool
|
|
# 453| ValueCategory = prvalue(load)
|
|
# 453| getThen(): [BlockStmt] { ... }
|
|
# 454| getStmt(0): [ExprStmt] ExprStmt
|
|
# 454| getExpr(): [AssignExpr] ... = ...
|
|
# 454| Type = [IntType] int
|
|
# 454| ValueCategory = lvalue
|
|
# 454| getLValue(): [VariableAccess] x
|
|
# 454| Type = [IntType] int
|
|
# 454| ValueCategory = lvalue
|
|
# 454| getRValue(): [Literal] 1
|
|
# 454| Type = [IntType] int
|
|
# 454| Value = [Literal] 1
|
|
# 454| ValueCategory = prvalue
|
|
# 456| getElse(): [BlockStmt] { ... }
|
|
# 457| getStmt(0): [ExprStmt] ExprStmt
|
|
# 457| getExpr(): [AssignExpr] ... = ...
|
|
# 457| Type = [IntType] int
|
|
# 457| ValueCategory = lvalue
|
|
# 457| getLValue(): [VariableAccess] x
|
|
# 457| Type = [IntType] int
|
|
# 457| ValueCategory = lvalue
|
|
# 457| getRValue(): [Literal] 5
|
|
# 457| Type = [IntType] int
|
|
# 457| Value = [Literal] 5
|
|
# 457| ValueCategory = prvalue
|
|
# 459| getStmt(3): [ReturnStmt] return ...
|
|
# 461| [TopLevelFunction] void LogicalNot(bool, bool)
|
|
# 461| <params>:
|
|
# 461| getParameter(0): [Parameter] a
|
|
# 461| Type = [BoolType] bool
|
|
# 461| getParameter(1): [Parameter] b
|
|
# 461| Type = [BoolType] bool
|
|
# 461| getEntryPoint(): [BlockStmt] { ... }
|
|
# 462| getStmt(0): [DeclStmt] declaration
|
|
# 462| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 462| Type = [IntType] int
|
|
# 463| getStmt(1): [IfStmt] if (...) ...
|
|
# 463| getCondition(): [NotExpr] ! ...
|
|
# 463| Type = [BoolType] bool
|
|
# 463| ValueCategory = prvalue
|
|
# 463| getOperand(): [VariableAccess] a
|
|
# 463| Type = [BoolType] bool
|
|
# 463| ValueCategory = prvalue(load)
|
|
# 463| getThen(): [BlockStmt] { ... }
|
|
# 464| getStmt(0): [ExprStmt] ExprStmt
|
|
# 464| getExpr(): [AssignExpr] ... = ...
|
|
# 464| Type = [IntType] int
|
|
# 464| ValueCategory = lvalue
|
|
# 464| getLValue(): [VariableAccess] x
|
|
# 464| Type = [IntType] int
|
|
# 464| ValueCategory = lvalue
|
|
# 464| getRValue(): [Literal] 1
|
|
# 464| Type = [IntType] int
|
|
# 464| Value = [Literal] 1
|
|
# 464| ValueCategory = prvalue
|
|
# 467| getStmt(2): [IfStmt] if (...) ...
|
|
# 467| getCondition(): [NotExpr] ! ...
|
|
# 467| Type = [BoolType] bool
|
|
# 467| ValueCategory = prvalue
|
|
# 467| getOperand(): [LogicalAndExpr] ... && ...
|
|
# 467| Type = [BoolType] bool
|
|
# 467| ValueCategory = prvalue
|
|
# 467| getLeftOperand(): [VariableAccess] a
|
|
# 467| Type = [BoolType] bool
|
|
# 467| ValueCategory = prvalue(load)
|
|
# 467| getRightOperand(): [VariableAccess] b
|
|
# 467| Type = [BoolType] bool
|
|
# 467| ValueCategory = prvalue(load)
|
|
# 467| getOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 467| Type = [BoolType] bool
|
|
# 467| ValueCategory = prvalue
|
|
# 467| getThen(): [BlockStmt] { ... }
|
|
# 468| getStmt(0): [ExprStmt] ExprStmt
|
|
# 468| getExpr(): [AssignExpr] ... = ...
|
|
# 468| Type = [IntType] int
|
|
# 468| ValueCategory = lvalue
|
|
# 468| getLValue(): [VariableAccess] x
|
|
# 468| Type = [IntType] int
|
|
# 468| ValueCategory = lvalue
|
|
# 468| getRValue(): [Literal] 2
|
|
# 468| Type = [IntType] int
|
|
# 468| Value = [Literal] 2
|
|
# 468| ValueCategory = prvalue
|
|
# 470| getElse(): [BlockStmt] { ... }
|
|
# 471| getStmt(0): [ExprStmt] ExprStmt
|
|
# 471| getExpr(): [AssignExpr] ... = ...
|
|
# 471| Type = [IntType] int
|
|
# 471| ValueCategory = lvalue
|
|
# 471| getLValue(): [VariableAccess] x
|
|
# 471| Type = [IntType] int
|
|
# 471| ValueCategory = lvalue
|
|
# 471| getRValue(): [Literal] 3
|
|
# 471| Type = [IntType] int
|
|
# 471| Value = [Literal] 3
|
|
# 471| ValueCategory = prvalue
|
|
# 473| getStmt(3): [ReturnStmt] return ...
|
|
# 475| [TopLevelFunction] void ConditionValues(bool, bool)
|
|
# 475| <params>:
|
|
# 475| getParameter(0): [Parameter] a
|
|
# 475| Type = [BoolType] bool
|
|
# 475| getParameter(1): [Parameter] b
|
|
# 475| Type = [BoolType] bool
|
|
# 475| getEntryPoint(): [BlockStmt] { ... }
|
|
# 476| getStmt(0): [DeclStmt] declaration
|
|
# 476| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 476| Type = [BoolType] bool
|
|
# 477| getStmt(1): [ExprStmt] ExprStmt
|
|
# 477| getExpr(): [AssignExpr] ... = ...
|
|
# 477| Type = [BoolType] bool
|
|
# 477| ValueCategory = lvalue
|
|
# 477| getLValue(): [VariableAccess] x
|
|
# 477| Type = [BoolType] bool
|
|
# 477| ValueCategory = lvalue
|
|
# 477| getRValue(): [LogicalAndExpr] ... && ...
|
|
# 477| Type = [BoolType] bool
|
|
# 477| ValueCategory = prvalue
|
|
# 477| getLeftOperand(): [VariableAccess] a
|
|
# 477| Type = [BoolType] bool
|
|
# 477| ValueCategory = prvalue(load)
|
|
# 477| getRightOperand(): [VariableAccess] b
|
|
# 477| Type = [BoolType] bool
|
|
# 477| ValueCategory = prvalue(load)
|
|
# 478| getStmt(2): [ExprStmt] ExprStmt
|
|
# 478| getExpr(): [AssignExpr] ... = ...
|
|
# 478| Type = [BoolType] bool
|
|
# 478| ValueCategory = lvalue
|
|
# 478| getLValue(): [VariableAccess] x
|
|
# 478| Type = [BoolType] bool
|
|
# 478| ValueCategory = lvalue
|
|
# 478| getRValue(): [LogicalOrExpr] ... || ...
|
|
# 478| Type = [BoolType] bool
|
|
# 478| ValueCategory = prvalue
|
|
# 478| getLeftOperand(): [VariableAccess] a
|
|
# 478| Type = [BoolType] bool
|
|
# 478| ValueCategory = prvalue(load)
|
|
# 478| getRightOperand(): [VariableAccess] b
|
|
# 478| Type = [BoolType] bool
|
|
# 478| ValueCategory = prvalue(load)
|
|
# 479| getStmt(3): [ExprStmt] ExprStmt
|
|
# 479| getExpr(): [AssignExpr] ... = ...
|
|
# 479| Type = [BoolType] bool
|
|
# 479| ValueCategory = lvalue
|
|
# 479| getLValue(): [VariableAccess] x
|
|
# 479| Type = [BoolType] bool
|
|
# 479| ValueCategory = lvalue
|
|
# 479| getRValue(): [NotExpr] ! ...
|
|
# 479| Type = [BoolType] bool
|
|
# 479| ValueCategory = prvalue
|
|
# 479| getOperand(): [LogicalOrExpr] ... || ...
|
|
# 479| Type = [BoolType] bool
|
|
# 479| ValueCategory = prvalue
|
|
# 479| getLeftOperand(): [VariableAccess] a
|
|
# 479| Type = [BoolType] bool
|
|
# 479| ValueCategory = prvalue(load)
|
|
# 479| getRightOperand(): [VariableAccess] b
|
|
# 479| Type = [BoolType] bool
|
|
# 479| ValueCategory = prvalue(load)
|
|
# 479| getOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 479| Type = [BoolType] bool
|
|
# 479| ValueCategory = prvalue
|
|
# 480| getStmt(4): [ReturnStmt] return ...
|
|
# 482| [TopLevelFunction] void Conditional(bool, int, int)
|
|
# 482| <params>:
|
|
# 482| getParameter(0): [Parameter] a
|
|
# 482| Type = [BoolType] bool
|
|
# 482| getParameter(1): [Parameter] x
|
|
# 482| Type = [IntType] int
|
|
# 482| getParameter(2): [Parameter] y
|
|
# 482| Type = [IntType] int
|
|
# 482| getEntryPoint(): [BlockStmt] { ... }
|
|
# 483| getStmt(0): [DeclStmt] declaration
|
|
# 483| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 483| Type = [IntType] int
|
|
# 483| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 483| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 483| Type = [IntType] int
|
|
# 483| ValueCategory = prvalue(load)
|
|
# 483| getCondition(): [VariableAccess] a
|
|
# 483| Type = [BoolType] bool
|
|
# 483| ValueCategory = prvalue(load)
|
|
# 483| getThen(): [VariableAccess] x
|
|
# 483| Type = [IntType] int
|
|
# 483| ValueCategory = prvalue(load)
|
|
# 483| getElse(): [VariableAccess] y
|
|
# 483| Type = [IntType] int
|
|
# 483| ValueCategory = prvalue(load)
|
|
# 484| getStmt(1): [ReturnStmt] return ...
|
|
# 486| [TopLevelFunction] void Conditional_LValue(bool)
|
|
# 486| <params>:
|
|
# 486| getParameter(0): [Parameter] a
|
|
# 486| Type = [BoolType] bool
|
|
# 486| getEntryPoint(): [BlockStmt] { ... }
|
|
# 487| getStmt(0): [DeclStmt] declaration
|
|
# 487| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 487| Type = [IntType] int
|
|
# 488| getStmt(1): [DeclStmt] declaration
|
|
# 488| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 488| Type = [IntType] int
|
|
# 489| getStmt(2): [ExprStmt] ExprStmt
|
|
# 489| getExpr(): [AssignExpr] ... = ...
|
|
# 489| Type = [IntType] int
|
|
# 489| ValueCategory = lvalue
|
|
# 489| getLValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 489| Type = [IntType] int
|
|
# 489| ValueCategory = lvalue
|
|
# 489| getCondition(): [VariableAccess] a
|
|
# 489| Type = [BoolType] bool
|
|
# 489| ValueCategory = prvalue(load)
|
|
# 489| getThen(): [VariableAccess] x
|
|
# 489| Type = [IntType] int
|
|
# 489| ValueCategory = lvalue
|
|
# 489| getElse(): [VariableAccess] y
|
|
# 489| Type = [IntType] int
|
|
# 489| ValueCategory = lvalue
|
|
# 489| getRValue(): [Literal] 5
|
|
# 489| Type = [IntType] int
|
|
# 489| Value = [Literal] 5
|
|
# 489| ValueCategory = prvalue
|
|
# 489| getLValue().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 489| Type = [IntType] int
|
|
# 489| ValueCategory = lvalue
|
|
# 490| getStmt(3): [ReturnStmt] return ...
|
|
# 492| [TopLevelFunction] void Conditional_Void(bool)
|
|
# 492| <params>:
|
|
# 492| getParameter(0): [Parameter] a
|
|
# 492| Type = [BoolType] bool
|
|
# 492| getEntryPoint(): [BlockStmt] { ... }
|
|
# 493| getStmt(0): [ExprStmt] ExprStmt
|
|
# 493| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 493| Type = [VoidType] void
|
|
# 493| ValueCategory = prvalue
|
|
# 493| getCondition(): [VariableAccess] a
|
|
# 493| Type = [BoolType] bool
|
|
# 493| ValueCategory = prvalue(load)
|
|
# 493| getThen(): [FunctionCall] call to VoidFunc
|
|
# 493| Type = [VoidType] void
|
|
# 493| ValueCategory = prvalue
|
|
# 493| getElse(): [FunctionCall] call to VoidFunc
|
|
# 493| Type = [VoidType] void
|
|
# 493| ValueCategory = prvalue
|
|
# 494| getStmt(1): [ReturnStmt] return ...
|
|
# 496| [TopLevelFunction] void Nullptr()
|
|
# 496| <params>:
|
|
# 496| getEntryPoint(): [BlockStmt] { ... }
|
|
# 497| getStmt(0): [DeclStmt] declaration
|
|
# 497| getDeclarationEntry(0): [VariableDeclarationEntry] definition of p
|
|
# 497| Type = [IntPointerType] int *
|
|
# 497| getVariable().getInitializer(): [Initializer] initializer for p
|
|
# 497| getExpr(): [Literal] 0
|
|
# 497| Type = [NullPointerType] decltype(nullptr)
|
|
# 497| Value = [Literal] 0
|
|
# 497| ValueCategory = prvalue
|
|
# 497| getExpr().getFullyConverted(): [CStyleCast] (int *)...
|
|
# 497| Conversion = [PointerConversion] pointer conversion
|
|
# 497| Type = [IntPointerType] int *
|
|
# 497| Value = [CStyleCast] 0
|
|
# 497| ValueCategory = prvalue
|
|
# 498| getStmt(1): [DeclStmt] declaration
|
|
# 498| getDeclarationEntry(0): [VariableDeclarationEntry] definition of q
|
|
# 498| Type = [IntPointerType] int *
|
|
# 498| getVariable().getInitializer(): [Initializer] initializer for q
|
|
# 498| getExpr(): [Literal] 0
|
|
# 498| Type = [IntType] int
|
|
# 498| Value = [Literal] 0
|
|
# 498| ValueCategory = prvalue
|
|
# 498| getExpr().getFullyConverted(): [CStyleCast] (int *)...
|
|
# 498| Conversion = [IntegralToPointerConversion] integral to pointer conversion
|
|
# 498| Type = [IntPointerType] int *
|
|
# 498| Value = [CStyleCast] 0
|
|
# 498| ValueCategory = prvalue
|
|
# 499| getStmt(2): [ExprStmt] ExprStmt
|
|
# 499| getExpr(): [AssignExpr] ... = ...
|
|
# 499| Type = [IntPointerType] int *
|
|
# 499| ValueCategory = lvalue
|
|
# 499| getLValue(): [VariableAccess] p
|
|
# 499| Type = [IntPointerType] int *
|
|
# 499| ValueCategory = lvalue
|
|
# 499| getRValue(): [Literal] 0
|
|
# 499| Type = [NullPointerType] decltype(nullptr)
|
|
# 499| Value = [Literal] 0
|
|
# 499| ValueCategory = prvalue
|
|
# 499| getRValue().getFullyConverted(): [CStyleCast] (int *)...
|
|
# 499| Conversion = [PointerConversion] pointer conversion
|
|
# 499| Type = [IntPointerType] int *
|
|
# 499| Value = [CStyleCast] 0
|
|
# 499| ValueCategory = prvalue
|
|
# 500| getStmt(3): [ExprStmt] ExprStmt
|
|
# 500| getExpr(): [AssignExpr] ... = ...
|
|
# 500| Type = [IntPointerType] int *
|
|
# 500| ValueCategory = lvalue
|
|
# 500| getLValue(): [VariableAccess] q
|
|
# 500| Type = [IntPointerType] int *
|
|
# 500| ValueCategory = lvalue
|
|
# 500| getRValue(): [Literal] 0
|
|
# 500| Type = [IntType] int
|
|
# 500| Value = [Literal] 0
|
|
# 500| ValueCategory = prvalue
|
|
# 500| getRValue().getFullyConverted(): [CStyleCast] (int *)...
|
|
# 500| Conversion = [IntegralToPointerConversion] integral to pointer conversion
|
|
# 500| Type = [IntPointerType] int *
|
|
# 500| Value = [CStyleCast] 0
|
|
# 500| ValueCategory = prvalue
|
|
# 501| getStmt(4): [ReturnStmt] return ...
|
|
# 503| [TopLevelFunction] void InitList(int, float)
|
|
# 503| <params>:
|
|
# 503| getParameter(0): [Parameter] x
|
|
# 503| Type = [IntType] int
|
|
# 503| getParameter(1): [Parameter] f
|
|
# 503| Type = [FloatType] float
|
|
# 503| getEntryPoint(): [BlockStmt] { ... }
|
|
# 504| getStmt(0): [DeclStmt] declaration
|
|
# 504| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pt1
|
|
# 504| Type = [Struct] Point
|
|
# 504| getVariable().getInitializer(): [Initializer] initializer for pt1
|
|
# 504| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 504| Type = [Struct] Point
|
|
# 504| ValueCategory = prvalue
|
|
# 504| getAFieldExpr(x): [VariableAccess] x
|
|
# 504| Type = [IntType] int
|
|
# 504| ValueCategory = prvalue(load)
|
|
# 504| getAFieldExpr(y): [VariableAccess] f
|
|
# 504| Type = [FloatType] float
|
|
# 504| ValueCategory = prvalue(load)
|
|
# 504| getAFieldExpr(y).getFullyConverted(): [CStyleCast] (int)...
|
|
# 504| Conversion = [FloatingPointToIntegralConversion] floating point to integral conversion
|
|
# 504| Type = [IntType] int
|
|
# 504| ValueCategory = prvalue
|
|
# 505| getStmt(1): [DeclStmt] declaration
|
|
# 505| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pt2
|
|
# 505| Type = [Struct] Point
|
|
# 505| getVariable().getInitializer(): [Initializer] initializer for pt2
|
|
# 505| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 505| Type = [Struct] Point
|
|
# 505| ValueCategory = prvalue
|
|
# 505| getAFieldExpr(x): [VariableAccess] x
|
|
# 505| Type = [IntType] int
|
|
# 505| ValueCategory = prvalue(load)
|
|
# 506| getStmt(2): [DeclStmt] declaration
|
|
# 506| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pt3
|
|
# 506| Type = [Struct] Point
|
|
# 506| getVariable().getInitializer(): [Initializer] initializer for pt3
|
|
# 506| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 506| Type = [Struct] Point
|
|
# 506| ValueCategory = prvalue
|
|
# 508| getStmt(3): [DeclStmt] declaration
|
|
# 508| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x1
|
|
# 508| Type = [IntType] int
|
|
# 508| getVariable().getInitializer(): [Initializer] initializer for x1
|
|
# 508| getExpr(): [Literal] 1
|
|
# 508| Type = [IntType] int
|
|
# 508| Value = [Literal] 1
|
|
# 508| ValueCategory = prvalue
|
|
# 509| getStmt(4): [DeclStmt] declaration
|
|
# 509| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x2
|
|
# 509| Type = [IntType] int
|
|
# 509| getVariable().getInitializer(): [Initializer] initializer for x2
|
|
# 509| getExpr(): [Literal] 0
|
|
# 509| Type = [IntType] int
|
|
# 509| Value = [Literal] 0
|
|
# 509| ValueCategory = prvalue
|
|
# 510| getStmt(5): [ReturnStmt] return ...
|
|
# 512| [TopLevelFunction] void NestedInitList(int, float)
|
|
# 512| <params>:
|
|
# 512| getParameter(0): [Parameter] x
|
|
# 512| Type = [IntType] int
|
|
# 512| getParameter(1): [Parameter] f
|
|
# 512| Type = [FloatType] float
|
|
# 512| getEntryPoint(): [BlockStmt] { ... }
|
|
# 513| getStmt(0): [DeclStmt] declaration
|
|
# 513| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r1
|
|
# 513| Type = [Struct] Rect
|
|
# 513| getVariable().getInitializer(): [Initializer] initializer for r1
|
|
# 513| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 513| Type = [Struct] Rect
|
|
# 513| ValueCategory = prvalue
|
|
# 514| getStmt(1): [DeclStmt] declaration
|
|
# 514| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r2
|
|
# 514| Type = [Struct] Rect
|
|
# 514| getVariable().getInitializer(): [Initializer] initializer for r2
|
|
# 514| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 514| Type = [Struct] Rect
|
|
# 514| ValueCategory = prvalue
|
|
# 514| getAFieldExpr(topLeft): [ClassAggregateLiteral] {...}
|
|
# 514| Type = [Struct] Point
|
|
# 514| ValueCategory = prvalue
|
|
# 514| getAFieldExpr(x): [VariableAccess] x
|
|
# 514| Type = [IntType] int
|
|
# 514| ValueCategory = prvalue(load)
|
|
# 514| getAFieldExpr(y): [VariableAccess] f
|
|
# 514| Type = [FloatType] float
|
|
# 514| ValueCategory = prvalue(load)
|
|
# 514| getAFieldExpr(y).getFullyConverted(): [CStyleCast] (int)...
|
|
# 514| Conversion = [FloatingPointToIntegralConversion] floating point to integral conversion
|
|
# 514| Type = [IntType] int
|
|
# 514| ValueCategory = prvalue
|
|
# 515| getStmt(2): [DeclStmt] declaration
|
|
# 515| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r3
|
|
# 515| Type = [Struct] Rect
|
|
# 515| getVariable().getInitializer(): [Initializer] initializer for r3
|
|
# 515| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 515| Type = [Struct] Rect
|
|
# 515| ValueCategory = prvalue
|
|
# 515| getAFieldExpr(topLeft): [ClassAggregateLiteral] {...}
|
|
# 515| Type = [Struct] Point
|
|
# 515| ValueCategory = prvalue
|
|
# 515| getAFieldExpr(x): [VariableAccess] x
|
|
# 515| Type = [IntType] int
|
|
# 515| ValueCategory = prvalue(load)
|
|
# 515| getAFieldExpr(y): [VariableAccess] f
|
|
# 515| Type = [FloatType] float
|
|
# 515| ValueCategory = prvalue(load)
|
|
# 515| getAFieldExpr(y).getFullyConverted(): [CStyleCast] (int)...
|
|
# 515| Conversion = [FloatingPointToIntegralConversion] floating point to integral conversion
|
|
# 515| Type = [IntType] int
|
|
# 515| ValueCategory = prvalue
|
|
# 515| getAFieldExpr(bottomRight): [ClassAggregateLiteral] {...}
|
|
# 515| Type = [Struct] Point
|
|
# 515| ValueCategory = prvalue
|
|
# 515| getAFieldExpr(x): [VariableAccess] x
|
|
# 515| Type = [IntType] int
|
|
# 515| ValueCategory = prvalue(load)
|
|
# 515| getAFieldExpr(y): [VariableAccess] f
|
|
# 515| Type = [FloatType] float
|
|
# 515| ValueCategory = prvalue(load)
|
|
# 515| getAFieldExpr(y).getFullyConverted(): [CStyleCast] (int)...
|
|
# 515| Conversion = [FloatingPointToIntegralConversion] floating point to integral conversion
|
|
# 515| Type = [IntType] int
|
|
# 515| ValueCategory = prvalue
|
|
# 516| getStmt(3): [DeclStmt] declaration
|
|
# 516| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r4
|
|
# 516| Type = [Struct] Rect
|
|
# 516| getVariable().getInitializer(): [Initializer] initializer for r4
|
|
# 516| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 516| Type = [Struct] Rect
|
|
# 516| ValueCategory = prvalue
|
|
# 516| getAFieldExpr(topLeft): [ClassAggregateLiteral] {...}
|
|
# 516| Type = [Struct] Point
|
|
# 516| ValueCategory = prvalue
|
|
# 516| getAFieldExpr(x): [VariableAccess] x
|
|
# 516| Type = [IntType] int
|
|
# 516| ValueCategory = prvalue(load)
|
|
# 516| getAFieldExpr(bottomRight): [ClassAggregateLiteral] {...}
|
|
# 516| Type = [Struct] Point
|
|
# 516| ValueCategory = prvalue
|
|
# 516| getAFieldExpr(x): [VariableAccess] x
|
|
# 516| Type = [IntType] int
|
|
# 516| ValueCategory = prvalue(load)
|
|
# 517| getStmt(4): [ReturnStmt] return ...
|
|
# 519| [TopLevelFunction] void ArrayInit(int, float)
|
|
# 519| <params>:
|
|
# 519| getParameter(0): [Parameter] x
|
|
# 519| Type = [IntType] int
|
|
# 519| getParameter(1): [Parameter] f
|
|
# 519| Type = [FloatType] float
|
|
# 519| getEntryPoint(): [BlockStmt] { ... }
|
|
# 520| getStmt(0): [DeclStmt] declaration
|
|
# 520| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a1
|
|
# 520| Type = [ArrayType] int[3]
|
|
# 520| getVariable().getInitializer(): [Initializer] initializer for a1
|
|
# 520| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 520| Type = [ArrayType] int[3]
|
|
# 520| ValueCategory = prvalue
|
|
# 521| getStmt(1): [DeclStmt] declaration
|
|
# 521| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a2
|
|
# 521| Type = [ArrayType] int[3]
|
|
# 521| getVariable().getInitializer(): [Initializer] initializer for a2
|
|
# 521| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 521| Type = [ArrayType] int[3]
|
|
# 521| ValueCategory = prvalue
|
|
# 521| getAnElementExpr(0): [VariableAccess] x
|
|
# 521| Type = [IntType] int
|
|
# 521| ValueCategory = prvalue(load)
|
|
# 521| getAnElementExpr(1): [VariableAccess] f
|
|
# 521| Type = [FloatType] float
|
|
# 521| ValueCategory = prvalue(load)
|
|
# 521| getAnElementExpr(2): [Literal] 0
|
|
# 521| Type = [IntType] int
|
|
# 521| Value = [Literal] 0
|
|
# 521| ValueCategory = prvalue
|
|
# 521| getAnElementExpr(1).getFullyConverted(): [CStyleCast] (int)...
|
|
# 521| Conversion = [FloatingPointToIntegralConversion] floating point to integral conversion
|
|
# 521| Type = [IntType] int
|
|
# 521| ValueCategory = prvalue
|
|
# 522| getStmt(2): [DeclStmt] declaration
|
|
# 522| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a3
|
|
# 522| Type = [ArrayType] int[3]
|
|
# 522| getVariable().getInitializer(): [Initializer] initializer for a3
|
|
# 522| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 522| Type = [ArrayType] int[3]
|
|
# 522| ValueCategory = prvalue
|
|
# 522| getAnElementExpr(0): [VariableAccess] x
|
|
# 522| Type = [IntType] int
|
|
# 522| ValueCategory = prvalue(load)
|
|
# 523| getStmt(3): [ReturnStmt] return ...
|
|
# 525| [CopyAssignmentOperator] U& U::operator=(U const&)
|
|
# 525| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const U &
|
|
# 525| [MoveAssignmentOperator] U& U::operator=(U&&)
|
|
# 525| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] U &&
|
|
# 530| [TopLevelFunction] void UnionInit(int, float)
|
|
# 530| <params>:
|
|
# 530| getParameter(0): [Parameter] x
|
|
# 530| Type = [IntType] int
|
|
# 530| getParameter(1): [Parameter] f
|
|
# 530| Type = [FloatType] float
|
|
# 530| getEntryPoint(): [BlockStmt] { ... }
|
|
# 531| getStmt(0): [DeclStmt] declaration
|
|
# 531| getDeclarationEntry(0): [VariableDeclarationEntry] definition of u1
|
|
# 531| Type = [Union] U
|
|
# 531| getVariable().getInitializer(): [Initializer] initializer for u1
|
|
# 531| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 531| Type = [Union] U
|
|
# 531| ValueCategory = prvalue
|
|
# 531| getAFieldExpr(d): [VariableAccess] f
|
|
# 531| Type = [FloatType] float
|
|
# 531| ValueCategory = prvalue(load)
|
|
# 531| getAFieldExpr(d).getFullyConverted(): [CStyleCast] (double)...
|
|
# 531| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 531| Type = [DoubleType] double
|
|
# 531| ValueCategory = prvalue
|
|
# 533| getStmt(1): [ReturnStmt] return ...
|
|
# 535| [TopLevelFunction] void EarlyReturn(int, int)
|
|
# 535| <params>:
|
|
# 535| getParameter(0): [Parameter] x
|
|
# 535| Type = [IntType] int
|
|
# 535| getParameter(1): [Parameter] y
|
|
# 535| Type = [IntType] int
|
|
# 535| getEntryPoint(): [BlockStmt] { ... }
|
|
# 536| getStmt(0): [IfStmt] if (...) ...
|
|
# 536| getCondition(): [LTExpr] ... < ...
|
|
# 536| Type = [BoolType] bool
|
|
# 536| ValueCategory = prvalue
|
|
# 536| getLesserOperand(): [VariableAccess] x
|
|
# 536| Type = [IntType] int
|
|
# 536| ValueCategory = prvalue(load)
|
|
# 536| getGreaterOperand(): [VariableAccess] y
|
|
# 536| Type = [IntType] int
|
|
# 536| ValueCategory = prvalue(load)
|
|
# 536| getThen(): [BlockStmt] { ... }
|
|
# 537| getStmt(0): [ReturnStmt] return ...
|
|
# 540| getStmt(1): [ExprStmt] ExprStmt
|
|
# 540| getExpr(): [AssignExpr] ... = ...
|
|
# 540| Type = [IntType] int
|
|
# 540| ValueCategory = lvalue
|
|
# 540| getLValue(): [VariableAccess] y
|
|
# 540| Type = [IntType] int
|
|
# 540| ValueCategory = lvalue
|
|
# 540| getRValue(): [VariableAccess] x
|
|
# 540| Type = [IntType] int
|
|
# 540| ValueCategory = prvalue(load)
|
|
# 541| getStmt(2): [ReturnStmt] return ...
|
|
# 543| [TopLevelFunction] int EarlyReturnValue(int, int)
|
|
# 543| <params>:
|
|
# 543| getParameter(0): [Parameter] x
|
|
# 543| Type = [IntType] int
|
|
# 543| getParameter(1): [Parameter] y
|
|
# 543| Type = [IntType] int
|
|
# 543| getEntryPoint(): [BlockStmt] { ... }
|
|
# 544| getStmt(0): [IfStmt] if (...) ...
|
|
# 544| getCondition(): [LTExpr] ... < ...
|
|
# 544| Type = [BoolType] bool
|
|
# 544| ValueCategory = prvalue
|
|
# 544| getLesserOperand(): [VariableAccess] x
|
|
# 544| Type = [IntType] int
|
|
# 544| ValueCategory = prvalue(load)
|
|
# 544| getGreaterOperand(): [VariableAccess] y
|
|
# 544| Type = [IntType] int
|
|
# 544| ValueCategory = prvalue(load)
|
|
# 544| getThen(): [BlockStmt] { ... }
|
|
# 545| getStmt(0): [ReturnStmt] return ...
|
|
# 545| getExpr(): [VariableAccess] x
|
|
# 545| Type = [IntType] int
|
|
# 545| ValueCategory = prvalue(load)
|
|
# 548| getStmt(1): [ReturnStmt] return ...
|
|
# 548| getExpr(): [AddExpr] ... + ...
|
|
# 548| Type = [IntType] int
|
|
# 548| ValueCategory = prvalue
|
|
# 548| getLeftOperand(): [VariableAccess] x
|
|
# 548| Type = [IntType] int
|
|
# 548| ValueCategory = prvalue(load)
|
|
# 548| getRightOperand(): [VariableAccess] y
|
|
# 548| Type = [IntType] int
|
|
# 548| ValueCategory = prvalue(load)
|
|
# 551| [TopLevelFunction] int CallViaFuncPtr(int(*)(int))
|
|
# 551| <params>:
|
|
# 551| getParameter(0): [Parameter] pfn
|
|
# 551| Type = [FunctionPointerType] ..(*)(..)
|
|
# 551| getEntryPoint(): [BlockStmt] { ... }
|
|
# 552| getStmt(0): [ReturnStmt] return ...
|
|
# 552| getExpr(): [VariableCall] call to expression
|
|
# 552| Type = [IntType] int
|
|
# 552| ValueCategory = prvalue
|
|
# 552| getExpr(): [VariableAccess] pfn
|
|
# 552| Type = [FunctionPointerType] ..(*)(..)
|
|
# 552| ValueCategory = prvalue(load)
|
|
# 552| getArgument(0): [Literal] 5
|
|
# 552| Type = [IntType] int
|
|
# 552| Value = [Literal] 5
|
|
# 552| ValueCategory = prvalue
|
|
# 560| [TopLevelFunction] int EnumSwitch(E)
|
|
# 560| <params>:
|
|
# 560| getParameter(0): [Parameter] e
|
|
# 560| Type = [CTypedefType] E
|
|
# 560| getEntryPoint(): [BlockStmt] { ... }
|
|
# 561| getStmt(0): [SwitchStmt] switch (...) ...
|
|
# 561| getExpr(): [VariableAccess] e
|
|
# 561| Type = [CTypedefType] E
|
|
# 561| ValueCategory = prvalue(load)
|
|
# 561| getStmt(): [BlockStmt] { ... }
|
|
# 562| getStmt(0): [SwitchCase] case ...:
|
|
# 562| getExpr(): [EnumConstantAccess] E_0
|
|
# 562| Type = [Enum] E
|
|
# 562| Value = [EnumConstantAccess] 0
|
|
# 562| ValueCategory = prvalue
|
|
# 562| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 562| Conversion = [IntegralConversion] integral conversion
|
|
# 562| Type = [IntType] int
|
|
# 562| Value = [CStyleCast] 0
|
|
# 562| ValueCategory = prvalue
|
|
# 563| getStmt(1): [ReturnStmt] return ...
|
|
# 563| getExpr(): [Literal] 0
|
|
# 563| Type = [IntType] int
|
|
# 563| Value = [Literal] 0
|
|
# 563| ValueCategory = prvalue
|
|
# 564| getStmt(2): [SwitchCase] case ...:
|
|
# 564| getExpr(): [EnumConstantAccess] E_1
|
|
# 564| Type = [Enum] E
|
|
# 564| Value = [EnumConstantAccess] 1
|
|
# 564| ValueCategory = prvalue
|
|
# 564| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 564| Conversion = [IntegralConversion] integral conversion
|
|
# 564| Type = [IntType] int
|
|
# 564| Value = [CStyleCast] 1
|
|
# 564| ValueCategory = prvalue
|
|
# 565| getStmt(3): [ReturnStmt] return ...
|
|
# 565| getExpr(): [Literal] 1
|
|
# 565| Type = [IntType] int
|
|
# 565| Value = [Literal] 1
|
|
# 565| ValueCategory = prvalue
|
|
# 566| getStmt(4): [SwitchCase] default:
|
|
# 567| getStmt(5): [ReturnStmt] return ...
|
|
# 567| getExpr(): [UnaryMinusExpr] - ...
|
|
# 567| Type = [IntType] int
|
|
# 567| Value = [UnaryMinusExpr] -1
|
|
# 567| ValueCategory = prvalue
|
|
# 567| getOperand(): [Literal] 1
|
|
# 567| Type = [IntType] int
|
|
# 567| Value = [Literal] 1
|
|
# 567| ValueCategory = prvalue
|
|
# 561| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 561| Conversion = [IntegralConversion] integral conversion
|
|
# 561| Type = [IntType] int
|
|
# 561| ValueCategory = prvalue
|
|
# 571| [TopLevelFunction] void InitArray()
|
|
# 571| <params>:
|
|
# 571| getEntryPoint(): [BlockStmt] { ... }
|
|
# 572| getStmt(0): [DeclStmt] declaration
|
|
# 572| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a_pad
|
|
# 572| Type = [ArrayType] char[32]
|
|
# 572| getVariable().getInitializer(): [Initializer] initializer for a_pad
|
|
# 572| getExpr():
|
|
# 572| Type = [ArrayType] const char[32]
|
|
# 572| Value = [StringLiteral] ""
|
|
# 572| ValueCategory = lvalue
|
|
# 573| getStmt(1): [DeclStmt] declaration
|
|
# 573| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a_nopad
|
|
# 573| Type = [ArrayType] char[4]
|
|
# 573| getVariable().getInitializer(): [Initializer] initializer for a_nopad
|
|
# 573| getExpr(): foo
|
|
# 573| Type = [ArrayType] const char[4]
|
|
# 573| Value = [StringLiteral] "foo"
|
|
# 573| ValueCategory = lvalue
|
|
# 574| getStmt(2): [DeclStmt] declaration
|
|
# 574| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a_infer
|
|
# 574| Type = [ArrayType] char[]
|
|
# 574| getVariable().getInitializer(): [Initializer] initializer for a_infer
|
|
# 574| getExpr(): blah
|
|
# 574| Type = [ArrayType] const char[5]
|
|
# 574| Value = [StringLiteral] "blah"
|
|
# 574| ValueCategory = lvalue
|
|
# 575| getStmt(3): [DeclStmt] declaration
|
|
# 575| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 575| Type = [ArrayType] char[2]
|
|
# 576| getStmt(4): [DeclStmt] declaration
|
|
# 576| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 576| Type = [ArrayType] char[2]
|
|
# 576| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 576| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 576| Type = [ArrayType] char[2]
|
|
# 576| ValueCategory = prvalue
|
|
# 577| getStmt(5): [DeclStmt] declaration
|
|
# 577| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 577| Type = [ArrayType] char[2]
|
|
# 577| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 577| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 577| Type = [ArrayType] char[2]
|
|
# 577| ValueCategory = prvalue
|
|
# 577| getAnElementExpr(0): [Literal] 0
|
|
# 577| Type = [IntType] int
|
|
# 577| Value = [Literal] 0
|
|
# 577| ValueCategory = prvalue
|
|
# 577| getAnElementExpr(0).getFullyConverted(): [CStyleCast] (char)...
|
|
# 577| Conversion = [IntegralConversion] integral conversion
|
|
# 577| Type = [PlainCharType] char
|
|
# 577| Value = [CStyleCast] 0
|
|
# 577| ValueCategory = prvalue
|
|
# 578| getStmt(6): [DeclStmt] declaration
|
|
# 578| getDeclarationEntry(0): [VariableDeclarationEntry] definition of e
|
|
# 578| Type = [ArrayType] char[2]
|
|
# 578| getVariable().getInitializer(): [Initializer] initializer for e
|
|
# 578| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 578| Type = [ArrayType] char[2]
|
|
# 578| ValueCategory = prvalue
|
|
# 578| getAnElementExpr(0): [Literal] 0
|
|
# 578| Type = [IntType] int
|
|
# 578| Value = [Literal] 0
|
|
# 578| ValueCategory = prvalue
|
|
# 578| getAnElementExpr(1): [Literal] 1
|
|
# 578| Type = [IntType] int
|
|
# 578| Value = [Literal] 1
|
|
# 578| ValueCategory = prvalue
|
|
# 578| getAnElementExpr(0).getFullyConverted(): [CStyleCast] (char)...
|
|
# 578| Conversion = [IntegralConversion] integral conversion
|
|
# 578| Type = [PlainCharType] char
|
|
# 578| Value = [CStyleCast] 0
|
|
# 578| ValueCategory = prvalue
|
|
# 578| getAnElementExpr(1).getFullyConverted(): [CStyleCast] (char)...
|
|
# 578| Conversion = [IntegralConversion] integral conversion
|
|
# 578| Type = [PlainCharType] char
|
|
# 578| Value = [CStyleCast] 1
|
|
# 578| ValueCategory = prvalue
|
|
# 579| getStmt(7): [DeclStmt] declaration
|
|
# 579| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f
|
|
# 579| Type = [ArrayType] char[3]
|
|
# 579| getVariable().getInitializer(): [Initializer] initializer for f
|
|
# 579| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 579| Type = [ArrayType] char[3]
|
|
# 579| ValueCategory = prvalue
|
|
# 579| getAnElementExpr(0): [Literal] 0
|
|
# 579| Type = [IntType] int
|
|
# 579| Value = [Literal] 0
|
|
# 579| ValueCategory = prvalue
|
|
# 579| getAnElementExpr(0).getFullyConverted(): [CStyleCast] (char)...
|
|
# 579| Conversion = [IntegralConversion] integral conversion
|
|
# 579| Type = [PlainCharType] char
|
|
# 579| Value = [CStyleCast] 0
|
|
# 579| ValueCategory = prvalue
|
|
# 580| getStmt(8): [ReturnStmt] return ...
|
|
# 582| [TopLevelFunction] void VarArgFunction(char const*)
|
|
# 582| <params>:
|
|
# 582| getParameter(0): [Parameter] s
|
|
# 582| Type = [PointerType] const char *
|
|
# 584| [TopLevelFunction] void VarArgs()
|
|
# 584| <params>:
|
|
# 584| getEntryPoint(): [BlockStmt] { ... }
|
|
# 585| getStmt(0): [ExprStmt] ExprStmt
|
|
# 585| getExpr(): [FunctionCall] call to VarArgFunction
|
|
# 585| Type = [VoidType] void
|
|
# 585| ValueCategory = prvalue
|
|
# 585| getArgument(0): %d %s
|
|
# 585| Type = [ArrayType] const char[6]
|
|
# 585| Value = [StringLiteral] "%d %s"
|
|
# 585| ValueCategory = lvalue
|
|
# 585| getArgument(1): [Literal] 1
|
|
# 585| Type = [IntType] int
|
|
# 585| Value = [Literal] 1
|
|
# 585| ValueCategory = prvalue
|
|
# 585| getArgument(2): string
|
|
# 585| Type = [ArrayType] const char[7]
|
|
# 585| Value = [StringLiteral] "string"
|
|
# 585| ValueCategory = lvalue
|
|
# 585| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 585| Type = [PointerType] const char *
|
|
# 585| ValueCategory = prvalue
|
|
# 585| getArgument(2).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 585| Type = [PointerType] const char *
|
|
# 585| ValueCategory = prvalue
|
|
# 586| getStmt(1): [ReturnStmt] return ...
|
|
# 588| [TopLevelFunction] int FuncPtrTarget(int)
|
|
# 588| <params>:
|
|
# 588| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 588| Type = [IntType] int
|
|
# 590| [TopLevelFunction] void SetFuncPtr()
|
|
# 590| <params>:
|
|
# 590| getEntryPoint(): [BlockStmt] { ... }
|
|
# 591| getStmt(0): [DeclStmt] declaration
|
|
# 591| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pfn
|
|
# 591| Type = [FunctionPointerType] ..(*)(..)
|
|
# 591| getVariable().getInitializer(): [Initializer] initializer for pfn
|
|
# 591| getExpr(): [FunctionAccess] FuncPtrTarget
|
|
# 591| Type = [FunctionPointerType] ..(*)(..)
|
|
# 591| ValueCategory = prvalue(load)
|
|
# 592| getStmt(1): [ExprStmt] ExprStmt
|
|
# 592| getExpr(): [AssignExpr] ... = ...
|
|
# 592| Type = [FunctionPointerType] ..(*)(..)
|
|
# 592| ValueCategory = lvalue
|
|
# 592| getLValue(): [VariableAccess] pfn
|
|
# 592| Type = [FunctionPointerType] ..(*)(..)
|
|
# 592| ValueCategory = lvalue
|
|
# 592| getRValue(): [AddressOfExpr] & ...
|
|
# 592| Type = [FunctionPointerType] ..(*)(..)
|
|
# 592| ValueCategory = prvalue
|
|
# 592| getOperand(): [FunctionAccess] FuncPtrTarget
|
|
# 592| Type = [RoutineType] ..()(..)
|
|
# 592| ValueCategory = lvalue
|
|
# 593| getStmt(2): [ExprStmt] ExprStmt
|
|
# 593| getExpr(): [AssignExpr] ... = ...
|
|
# 593| Type = [FunctionPointerType] ..(*)(..)
|
|
# 593| ValueCategory = lvalue
|
|
# 593| getLValue(): [VariableAccess] pfn
|
|
# 593| Type = [FunctionPointerType] ..(*)(..)
|
|
# 593| ValueCategory = lvalue
|
|
# 593| getRValue(): [PointerDereferenceExpr] * ...
|
|
# 593| Type = [FunctionPointerType] ..(*)(..)
|
|
# 593| ValueCategory = prvalue(load)
|
|
# 593| getOperand(): [FunctionAccess] FuncPtrTarget
|
|
# 593| Type = [FunctionPointerType] ..(*)(..)
|
|
# 593| ValueCategory = prvalue(load)
|
|
# 594| getStmt(3): [ExprStmt] ExprStmt
|
|
# 594| getExpr(): [AssignExpr] ... = ...
|
|
# 594| Type = [FunctionPointerType] ..(*)(..)
|
|
# 594| ValueCategory = lvalue
|
|
# 594| getLValue(): [VariableAccess] pfn
|
|
# 594| Type = [FunctionPointerType] ..(*)(..)
|
|
# 594| ValueCategory = lvalue
|
|
# 594| getRValue(): [PointerDereferenceExpr] * ...
|
|
# 594| Type = [FunctionPointerType] ..(*)(..)
|
|
# 594| ValueCategory = prvalue(load)
|
|
# 594| getOperand(): [PointerDereferenceExpr] * ...
|
|
# 594| Type = [FunctionPointerType] ..(*)(..)
|
|
# 594| ValueCategory = prvalue(load)
|
|
# 594| getOperand(): [PointerDereferenceExpr] * ...
|
|
# 594| Type = [FunctionPointerType] ..(*)(..)
|
|
# 594| ValueCategory = prvalue(load)
|
|
# 594| getOperand(): [AddressOfExpr] & ...
|
|
# 594| Type = [FunctionPointerType] ..(*)(..)
|
|
# 594| ValueCategory = prvalue
|
|
# 594| getOperand(): [FunctionAccess] FuncPtrTarget
|
|
# 594| Type = [RoutineType] ..()(..)
|
|
# 594| ValueCategory = lvalue
|
|
# 595| getStmt(4): [ReturnStmt] return ...
|
|
# 599| [CopyConstructor] void String::String(String const&)
|
|
# 599| <params>:
|
|
# 599| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 599| Type = [LValueReferenceType] const String &
|
|
# 600| [MoveConstructor] void String::String(String&&)
|
|
# 600| <params>:
|
|
# 600| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 600| Type = [RValueReferenceType] String &&
|
|
# 601| [Constructor] void String::String(char const*)
|
|
# 601| <params>:
|
|
# 601| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 601| Type = [PointerType] const char *
|
|
# 602| [Destructor] void String::~String()
|
|
# 602| <params>:
|
|
# 604| [CopyAssignmentOperator] String& String::operator=(String const&)
|
|
# 604| <params>:
|
|
# 604| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 604| Type = [LValueReferenceType] const String &
|
|
# 605| [MoveAssignmentOperator] String& String::operator=(String&&)
|
|
# 605| <params>:
|
|
# 605| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 605| Type = [RValueReferenceType] String &&
|
|
# 607| [ConstMemberFunction] char const* String::c_str() const
|
|
# 607| <params>:
|
|
# 608| [MemberFunction] char String::pop_back()
|
|
# 608| <params>:
|
|
# 613| [TopLevelFunction] String ReturnObject()
|
|
# 613| <params>:
|
|
# 615| [TopLevelFunction] void DeclareObject()
|
|
# 615| <params>:
|
|
# 615| getEntryPoint(): [BlockStmt] { ... }
|
|
# 616| getStmt(0): [DeclStmt] declaration
|
|
# 616| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s1
|
|
# 616| Type = [Struct] String
|
|
# 616| getVariable().getInitializer(): [Initializer] initializer for s1
|
|
# 616| getExpr(): [ConstructorCall] call to String
|
|
# 616| Type = [VoidType] void
|
|
# 616| ValueCategory = prvalue
|
|
# 617| getStmt(1): [DeclStmt] declaration
|
|
# 617| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s2
|
|
# 617| Type = [Struct] String
|
|
# 617| getVariable().getInitializer(): [Initializer] initializer for s2
|
|
# 617| getExpr(): [ConstructorCall] call to String
|
|
# 617| Type = [VoidType] void
|
|
# 617| ValueCategory = prvalue
|
|
# 617| getArgument(0): hello
|
|
# 617| Type = [ArrayType] const char[6]
|
|
# 617| Value = [StringLiteral] "hello"
|
|
# 617| ValueCategory = lvalue
|
|
# 617| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 617| Type = [PointerType] const char *
|
|
# 617| ValueCategory = prvalue
|
|
# 618| getStmt(2): [DeclStmt] declaration
|
|
# 618| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s3
|
|
# 618| Type = [Struct] String
|
|
# 618| getVariable().getInitializer(): [Initializer] initializer for s3
|
|
# 618| getExpr(): [FunctionCall] call to ReturnObject
|
|
# 618| Type = [Struct] String
|
|
# 618| ValueCategory = prvalue
|
|
# 619| getStmt(3): [DeclStmt] declaration
|
|
# 619| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s4
|
|
# 619| Type = [Struct] String
|
|
# 619| getVariable().getInitializer(): [Initializer] initializer for s4
|
|
# 619| getExpr(): [ConstructorCall] call to String
|
|
# 619| Type = [VoidType] void
|
|
# 619| ValueCategory = prvalue
|
|
# 619| getArgument(0): test
|
|
# 619| Type = [ArrayType] const char[5]
|
|
# 619| Value = [StringLiteral] "test"
|
|
# 619| ValueCategory = lvalue
|
|
# 619| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 619| Type = [PointerType] const char *
|
|
# 619| ValueCategory = prvalue
|
|
# 620| getStmt(4): [ReturnStmt] return ...
|
|
# 620| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 620| Type = [VoidType] void
|
|
# 620| ValueCategory = prvalue
|
|
# 620| getQualifier(): [VariableAccess] s4
|
|
# 620| Type = [Struct] String
|
|
# 620| ValueCategory = lvalue
|
|
# 620| getImplicitDestructorCall(1): [DestructorCall] call to ~String
|
|
# 620| Type = [VoidType] void
|
|
# 620| ValueCategory = prvalue
|
|
# 620| getQualifier(): [VariableAccess] s3
|
|
# 620| Type = [Struct] String
|
|
# 620| ValueCategory = lvalue
|
|
# 620| getImplicitDestructorCall(2): [DestructorCall] call to ~String
|
|
# 620| Type = [VoidType] void
|
|
# 620| ValueCategory = prvalue
|
|
# 620| getQualifier(): [VariableAccess] s2
|
|
# 620| Type = [Struct] String
|
|
# 620| ValueCategory = lvalue
|
|
# 620| getImplicitDestructorCall(3): [DestructorCall] call to ~String
|
|
# 620| Type = [VoidType] void
|
|
# 620| ValueCategory = prvalue
|
|
# 620| getQualifier(): [VariableAccess] s1
|
|
# 620| Type = [Struct] String
|
|
# 620| ValueCategory = lvalue
|
|
# 622| [TopLevelFunction] void CallMethods(String&, String*, String)
|
|
# 622| <params>:
|
|
# 622| getParameter(0): [Parameter] r
|
|
# 622| Type = [LValueReferenceType] String &
|
|
# 622| getParameter(1): [Parameter] p
|
|
# 622| Type = [PointerType] String *
|
|
# 622| getParameter(2): [Parameter] s
|
|
# 622| Type = [Struct] String
|
|
# 622| getEntryPoint(): [BlockStmt] { ... }
|
|
# 623| getStmt(0): [ExprStmt] ExprStmt
|
|
# 623| getExpr(): [FunctionCall] call to c_str
|
|
# 623| Type = [PointerType] const char *
|
|
# 623| ValueCategory = prvalue
|
|
# 623| getQualifier(): [VariableAccess] r
|
|
# 623| Type = [LValueReferenceType] String &
|
|
# 623| ValueCategory = prvalue(load)
|
|
# 623| getQualifier().getFullyConverted(): [CStyleCast] (const String)...
|
|
# 623| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 623| Type = [SpecifiedType] const String
|
|
# 623| ValueCategory = lvalue
|
|
# 623| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 623| Type = [Struct] String
|
|
# 623| ValueCategory = lvalue
|
|
# 624| getStmt(1): [ExprStmt] ExprStmt
|
|
# 624| getExpr(): [FunctionCall] call to c_str
|
|
# 624| Type = [PointerType] const char *
|
|
# 624| ValueCategory = prvalue
|
|
# 624| getQualifier(): [VariableAccess] p
|
|
# 624| Type = [PointerType] String *
|
|
# 624| ValueCategory = prvalue(load)
|
|
# 624| getQualifier().getFullyConverted(): [CStyleCast] (const String *)...
|
|
# 624| Conversion = [PointerConversion] pointer conversion
|
|
# 624| Type = [PointerType] const String *
|
|
# 624| ValueCategory = prvalue
|
|
# 625| getStmt(2): [ExprStmt] ExprStmt
|
|
# 625| getExpr(): [FunctionCall] call to c_str
|
|
# 625| Type = [PointerType] const char *
|
|
# 625| ValueCategory = prvalue
|
|
# 625| getQualifier(): [VariableAccess] s
|
|
# 625| Type = [Struct] String
|
|
# 625| ValueCategory = lvalue
|
|
# 625| getQualifier().getFullyConverted(): [CStyleCast] (const String)...
|
|
# 625| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 625| Type = [SpecifiedType] const String
|
|
# 625| ValueCategory = lvalue
|
|
# 626| getStmt(3): [ReturnStmt] return ...
|
|
# 628| [CopyAssignmentOperator] C& C::operator=(C const&)
|
|
# 628| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const C &
|
|
# 628| [MoveAssignmentOperator] C& C::operator=(C&&)
|
|
# 628| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] C &&
|
|
# 628| [CopyConstructor] void C::C(C const&)
|
|
# 628| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const C &
|
|
# 628| [MoveConstructor] void C::C(C&&)
|
|
# 628| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] C &&
|
|
# 628| [Destructor] void C::~C()
|
|
# 628| <params>:
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ReturnStmt] return ...
|
|
# 628| <destructions>:
|
|
# 628| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of m_f
|
|
# 628| Type = [Struct] String
|
|
# 628| ValueCategory = prvalue
|
|
# 628| getExpr(): [DestructorCall] call to ~String
|
|
# 628| Type = [VoidType] void
|
|
# 628| ValueCategory = prvalue
|
|
# 628| getQualifier(): [ImplicitThisFieldAccess] m_f
|
|
# 628| Type = [Struct] String
|
|
# 628| ValueCategory = lvalue
|
|
# 628| getDestruction(1): [DestructorFieldDestruction] destructor field destruction of m_b
|
|
# 628| Type = [Struct] String
|
|
# 628| ValueCategory = prvalue
|
|
# 628| getExpr(): [DestructorCall] call to ~String
|
|
# 628| Type = [VoidType] void
|
|
# 628| ValueCategory = prvalue
|
|
# 628| getQualifier(): [ImplicitThisFieldAccess] m_b
|
|
# 628| Type = [Struct] String
|
|
# 628| ValueCategory = lvalue
|
|
# 630| [MemberFunction] int C::StaticMemberFunction(int)
|
|
# 630| <params>:
|
|
# 630| getParameter(0): [Parameter] x
|
|
# 630| Type = [IntType] int
|
|
# 630| getEntryPoint(): [BlockStmt] { ... }
|
|
# 631| getStmt(0): [ReturnStmt] return ...
|
|
# 631| getExpr(): [VariableAccess] x
|
|
# 631| Type = [IntType] int
|
|
# 631| ValueCategory = prvalue(load)
|
|
# 634| [MemberFunction] int C::InstanceMemberFunction(int)
|
|
# 634| <params>:
|
|
# 634| getParameter(0): [Parameter] x
|
|
# 634| Type = [IntType] int
|
|
# 634| getEntryPoint(): [BlockStmt] { ... }
|
|
# 635| getStmt(0): [ReturnStmt] return ...
|
|
# 635| getExpr(): [VariableAccess] x
|
|
# 635| Type = [IntType] int
|
|
# 635| ValueCategory = prvalue(load)
|
|
# 638| [VirtualFunction] int C::VirtualMemberFunction(int)
|
|
# 638| <params>:
|
|
# 638| getParameter(0): [Parameter] x
|
|
# 638| Type = [IntType] int
|
|
# 638| getEntryPoint(): [BlockStmt] { ... }
|
|
# 639| getStmt(0): [ReturnStmt] return ...
|
|
# 639| getExpr(): [VariableAccess] x
|
|
# 639| Type = [IntType] int
|
|
# 639| ValueCategory = prvalue(load)
|
|
# 642| [MemberFunction] void C::FieldAccess()
|
|
# 642| <params>:
|
|
# 642| getEntryPoint(): [BlockStmt] { ... }
|
|
# 643| getStmt(0): [ExprStmt] ExprStmt
|
|
# 643| getExpr(): [AssignExpr] ... = ...
|
|
# 643| Type = [IntType] int
|
|
# 643| ValueCategory = lvalue
|
|
# 643| getLValue(): [PointerFieldAccess] m_a
|
|
# 643| Type = [IntType] int
|
|
# 643| ValueCategory = lvalue
|
|
# 643| getQualifier(): [ThisExpr] this
|
|
# 643| Type = [PointerType] C *
|
|
# 643| ValueCategory = prvalue(load)
|
|
# 643| getRValue(): [Literal] 0
|
|
# 643| Type = [IntType] int
|
|
# 643| Value = [Literal] 0
|
|
# 643| ValueCategory = prvalue
|
|
# 644| getStmt(1): [ExprStmt] ExprStmt
|
|
# 644| getExpr(): [AssignExpr] ... = ...
|
|
# 644| Type = [IntType] int
|
|
# 644| ValueCategory = lvalue
|
|
# 644| getLValue(): [ValueFieldAccess] m_a
|
|
# 644| Type = [IntType] int
|
|
# 644| ValueCategory = lvalue
|
|
# 644| getQualifier(): [PointerDereferenceExpr] * ...
|
|
# 644| Type = [Class] C
|
|
# 644| ValueCategory = lvalue
|
|
# 644| getOperand(): [ThisExpr] this
|
|
# 644| Type = [PointerType] C *
|
|
# 644| ValueCategory = prvalue(load)
|
|
# 644| getQualifier().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 644| Type = [Class] C
|
|
# 644| ValueCategory = lvalue
|
|
# 644| getRValue(): [Literal] 1
|
|
# 644| Type = [IntType] int
|
|
# 644| Value = [Literal] 1
|
|
# 644| ValueCategory = prvalue
|
|
# 645| getStmt(2): [ExprStmt] ExprStmt
|
|
# 645| getExpr(): [AssignExpr] ... = ...
|
|
# 645| Type = [IntType] int
|
|
# 645| ValueCategory = lvalue
|
|
# 645| getLValue(): [ImplicitThisFieldAccess,PointerFieldAccess] m_a
|
|
# 645| Type = [IntType] int
|
|
# 645| ValueCategory = lvalue
|
|
# 645| getQualifier(): [ThisExpr] this
|
|
# 645| Type = [PointerType] C *
|
|
# 645| ValueCategory = prvalue(load)
|
|
# 645| getRValue(): [Literal] 2
|
|
# 645| Type = [IntType] int
|
|
# 645| Value = [Literal] 2
|
|
# 645| ValueCategory = prvalue
|
|
# 646| getStmt(3): [DeclStmt] declaration
|
|
# 646| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 646| Type = [IntType] int
|
|
# 647| getStmt(4): [ExprStmt] ExprStmt
|
|
# 647| getExpr(): [AssignExpr] ... = ...
|
|
# 647| Type = [IntType] int
|
|
# 647| ValueCategory = lvalue
|
|
# 647| getLValue(): [VariableAccess] x
|
|
# 647| Type = [IntType] int
|
|
# 647| ValueCategory = lvalue
|
|
# 647| getRValue(): [PointerFieldAccess] m_a
|
|
# 647| Type = [IntType] int
|
|
# 647| ValueCategory = prvalue(load)
|
|
# 647| getQualifier(): [ThisExpr] this
|
|
# 647| Type = [PointerType] C *
|
|
# 647| ValueCategory = prvalue(load)
|
|
# 648| getStmt(5): [ExprStmt] ExprStmt
|
|
# 648| getExpr(): [AssignExpr] ... = ...
|
|
# 648| Type = [IntType] int
|
|
# 648| ValueCategory = lvalue
|
|
# 648| getLValue(): [VariableAccess] x
|
|
# 648| Type = [IntType] int
|
|
# 648| ValueCategory = lvalue
|
|
# 648| getRValue(): [ValueFieldAccess] m_a
|
|
# 648| Type = [IntType] int
|
|
# 648| ValueCategory = prvalue(load)
|
|
# 648| getQualifier(): [PointerDereferenceExpr] * ...
|
|
# 648| Type = [Class] C
|
|
# 648| ValueCategory = lvalue
|
|
# 648| getOperand(): [ThisExpr] this
|
|
# 648| Type = [PointerType] C *
|
|
# 648| ValueCategory = prvalue(load)
|
|
# 648| getQualifier().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 648| Type = [Class] C
|
|
# 648| ValueCategory = lvalue
|
|
# 649| getStmt(6): [ExprStmt] ExprStmt
|
|
# 649| getExpr(): [AssignExpr] ... = ...
|
|
# 649| Type = [IntType] int
|
|
# 649| ValueCategory = lvalue
|
|
# 649| getLValue(): [VariableAccess] x
|
|
# 649| Type = [IntType] int
|
|
# 649| ValueCategory = lvalue
|
|
# 649| getRValue(): [ImplicitThisFieldAccess,PointerFieldAccess] m_a
|
|
# 649| Type = [IntType] int
|
|
# 649| ValueCategory = prvalue(load)
|
|
# 649| getQualifier(): [ThisExpr] this
|
|
# 649| Type = [PointerType] C *
|
|
# 649| ValueCategory = prvalue(load)
|
|
# 650| getStmt(7): [ReturnStmt] return ...
|
|
# 652| [MemberFunction] void C::MethodCalls()
|
|
# 652| <params>:
|
|
# 652| getEntryPoint(): [BlockStmt] { ... }
|
|
# 653| getStmt(0): [ExprStmt] ExprStmt
|
|
# 653| getExpr(): [FunctionCall] call to InstanceMemberFunction
|
|
# 653| Type = [IntType] int
|
|
# 653| ValueCategory = prvalue
|
|
# 653| getQualifier(): [ThisExpr] this
|
|
# 653| Type = [PointerType] C *
|
|
# 653| ValueCategory = prvalue(load)
|
|
# 653| getArgument(0): [Literal] 0
|
|
# 653| Type = [IntType] int
|
|
# 653| Value = [Literal] 0
|
|
# 653| ValueCategory = prvalue
|
|
# 654| getStmt(1): [ExprStmt] ExprStmt
|
|
# 654| getExpr(): [FunctionCall] call to InstanceMemberFunction
|
|
# 654| Type = [IntType] int
|
|
# 654| ValueCategory = prvalue
|
|
# 654| getQualifier(): [PointerDereferenceExpr] * ...
|
|
# 654| Type = [Class] C
|
|
# 654| ValueCategory = lvalue
|
|
# 654| getOperand(): [ThisExpr] this
|
|
# 654| Type = [PointerType] C *
|
|
# 654| ValueCategory = prvalue(load)
|
|
# 654| getArgument(0): [Literal] 1
|
|
# 654| Type = [IntType] int
|
|
# 654| Value = [Literal] 1
|
|
# 654| ValueCategory = prvalue
|
|
# 654| getQualifier().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 654| Type = [Class] C
|
|
# 654| ValueCategory = lvalue
|
|
# 655| getStmt(2): [ExprStmt] ExprStmt
|
|
# 655| getExpr(): [FunctionCall] call to InstanceMemberFunction
|
|
# 655| Type = [IntType] int
|
|
# 655| ValueCategory = prvalue
|
|
# 655| getQualifier(): [ThisExpr] this
|
|
# 655| Type = [PointerType] C *
|
|
# 655| ValueCategory = prvalue(load)
|
|
# 655| getArgument(0): [Literal] 2
|
|
# 655| Type = [IntType] int
|
|
# 655| Value = [Literal] 2
|
|
# 655| ValueCategory = prvalue
|
|
# 656| getStmt(3): [ReturnStmt] return ...
|
|
# 658| [Constructor] void C::C()
|
|
# 658| <params>:
|
|
# 658| <initializations>:
|
|
# 659| getInitializer(0): [ConstructorFieldInit] constructor init of field m_a
|
|
# 659| Type = [IntType] int
|
|
# 659| ValueCategory = prvalue
|
|
# 659| getExpr(): [Literal] 1
|
|
# 659| Type = [IntType] int
|
|
# 659| Value = [Literal] 1
|
|
# 659| ValueCategory = prvalue
|
|
# 663| getInitializer(1): [ConstructorFieldInit] constructor init of field m_b
|
|
# 663| Type = [Struct] String
|
|
# 663| ValueCategory = prvalue
|
|
# 663| getExpr(): [ConstructorCall] call to String
|
|
# 663| Type = [VoidType] void
|
|
# 663| ValueCategory = prvalue
|
|
# 660| getInitializer(2): [ConstructorFieldInit] constructor init of field m_c
|
|
# 660| Type = [PlainCharType] char
|
|
# 660| ValueCategory = prvalue
|
|
# 660| getExpr(): [Literal] 3
|
|
# 660| Type = [IntType] int
|
|
# 660| Value = [Literal] 3
|
|
# 660| ValueCategory = prvalue
|
|
# 660| getExpr().getFullyConverted(): [CStyleCast] (char)...
|
|
# 660| Conversion = [IntegralConversion] integral conversion
|
|
# 660| Type = [PlainCharType] char
|
|
# 660| Value = [CStyleCast] 3
|
|
# 660| ValueCategory = prvalue
|
|
# 661| getInitializer(3): [ConstructorFieldInit] constructor init of field m_e
|
|
# 661| Type = [VoidPointerType] void *
|
|
# 661| ValueCategory = prvalue
|
|
# 661| getExpr(): [Literal] 0
|
|
# 661| Type = [VoidPointerType] void *
|
|
# 661| Value = [Literal] 0
|
|
# 661| ValueCategory = prvalue
|
|
# 662| getInitializer(4): [ConstructorFieldInit] constructor init of field m_f
|
|
# 662| Type = [Struct] String
|
|
# 662| ValueCategory = prvalue
|
|
# 662| getExpr(): [ConstructorCall] call to String
|
|
# 662| Type = [VoidType] void
|
|
# 662| ValueCategory = prvalue
|
|
# 662| getArgument(0): test
|
|
# 662| Type = [ArrayType] const char[5]
|
|
# 662| Value = [StringLiteral] "test"
|
|
# 662| ValueCategory = lvalue
|
|
# 662| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 662| Type = [PointerType] const char *
|
|
# 662| ValueCategory = prvalue
|
|
# 663| getEntryPoint(): [BlockStmt] { ... }
|
|
# 664| getStmt(0): [ReturnStmt] return ...
|
|
# 675| [TopLevelFunction] int DerefReference(int&)
|
|
# 675| <params>:
|
|
# 675| getParameter(0): [Parameter] r
|
|
# 675| Type = [LValueReferenceType] int &
|
|
# 675| getEntryPoint(): [BlockStmt] { ... }
|
|
# 676| getStmt(0): [ReturnStmt] return ...
|
|
# 676| getExpr(): [VariableAccess] r
|
|
# 676| Type = [LValueReferenceType] int &
|
|
# 676| ValueCategory = prvalue(load)
|
|
# 676| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 676| Type = [IntType] int
|
|
# 676| ValueCategory = prvalue(load)
|
|
# 679| [TopLevelFunction] int& TakeReference()
|
|
# 679| <params>:
|
|
# 679| getEntryPoint(): [BlockStmt] { ... }
|
|
# 680| getStmt(0): [ReturnStmt] return ...
|
|
# 680| getExpr(): [VariableAccess] g
|
|
# 680| Type = [IntType] int
|
|
# 680| ValueCategory = lvalue
|
|
# 680| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 680| Type = [LValueReferenceType] int &
|
|
# 680| ValueCategory = prvalue
|
|
# 683| [TopLevelFunction] String& ReturnReference()
|
|
# 683| <params>:
|
|
# 685| [TopLevelFunction] void InitReference(int)
|
|
# 685| <params>:
|
|
# 685| getParameter(0): [Parameter] x
|
|
# 685| Type = [IntType] int
|
|
# 685| getEntryPoint(): [BlockStmt] { ... }
|
|
# 686| getStmt(0): [DeclStmt] declaration
|
|
# 686| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r
|
|
# 686| Type = [LValueReferenceType] int &
|
|
# 686| getVariable().getInitializer(): [Initializer] initializer for r
|
|
# 686| getExpr(): [VariableAccess] x
|
|
# 686| Type = [IntType] int
|
|
# 686| ValueCategory = lvalue
|
|
# 686| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 686| Type = [LValueReferenceType] int &
|
|
# 686| ValueCategory = prvalue
|
|
# 687| getStmt(1): [DeclStmt] declaration
|
|
# 687| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r2
|
|
# 687| Type = [LValueReferenceType] int &
|
|
# 687| getVariable().getInitializer(): [Initializer] initializer for r2
|
|
# 687| getExpr(): [VariableAccess] r
|
|
# 687| Type = [LValueReferenceType] int &
|
|
# 687| ValueCategory = prvalue(load)
|
|
# 687| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 687| Type = [LValueReferenceType] int &
|
|
# 687| ValueCategory = prvalue
|
|
# 687| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 687| Type = [IntType] int
|
|
# 687| ValueCategory = lvalue
|
|
# 688| getStmt(2): [DeclStmt] declaration
|
|
# 688| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r3
|
|
# 688| Type = [LValueReferenceType] const String &
|
|
# 688| getVariable().getInitializer(): [Initializer] initializer for r3
|
|
# 688| getExpr(): [FunctionCall] call to ReturnReference
|
|
# 688| Type = [LValueReferenceType] String &
|
|
# 688| ValueCategory = prvalue
|
|
# 688| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 688| Type = [LValueReferenceType] const String &
|
|
# 688| ValueCategory = prvalue
|
|
# 688| getExpr(): [CStyleCast] (const String)...
|
|
# 688| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 688| Type = [SpecifiedType] const String
|
|
# 688| ValueCategory = lvalue
|
|
# 688| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 688| Type = [Struct] String
|
|
# 688| ValueCategory = lvalue
|
|
# 689| getStmt(3): [ReturnStmt] return ...
|
|
# 691| [TopLevelFunction] void ArrayReferences()
|
|
# 691| <params>:
|
|
# 691| getEntryPoint(): [BlockStmt] { ... }
|
|
# 692| getStmt(0): [DeclStmt] declaration
|
|
# 692| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 692| Type = [ArrayType] int[10]
|
|
# 693| getStmt(1): [DeclStmt] declaration
|
|
# 693| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ra
|
|
# 693| Type = [LValueReferenceType] int(&)[10]
|
|
# 693| getVariable().getInitializer(): [Initializer] initializer for ra
|
|
# 693| getExpr(): [VariableAccess] a
|
|
# 693| Type = [ArrayType] int[10]
|
|
# 693| ValueCategory = lvalue
|
|
# 693| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 693| Type = [LValueReferenceType] int(&)[10]
|
|
# 693| ValueCategory = prvalue
|
|
# 694| getStmt(2): [DeclStmt] declaration
|
|
# 694| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 694| Type = [IntType] int
|
|
# 694| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 694| getExpr(): [ArrayExpr] access to array
|
|
# 694| Type = [IntType] int
|
|
# 694| ValueCategory = prvalue(load)
|
|
# 694| getArrayBase(): [VariableAccess] ra
|
|
# 694| Type = [LValueReferenceType] int(&)[10]
|
|
# 694| ValueCategory = prvalue(load)
|
|
# 694| getArrayOffset(): [Literal] 5
|
|
# 694| Type = [IntType] int
|
|
# 694| Value = [Literal] 5
|
|
# 694| ValueCategory = prvalue
|
|
# 694| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 694| Type = [IntPointerType] int *
|
|
# 694| ValueCategory = prvalue
|
|
# 694| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 694| Type = [ArrayType] int[10]
|
|
# 694| ValueCategory = lvalue
|
|
# 695| getStmt(3): [ReturnStmt] return ...
|
|
# 697| [TopLevelFunction] void FunctionReferences()
|
|
# 697| <params>:
|
|
# 697| getEntryPoint(): [BlockStmt] { ... }
|
|
# 698| getStmt(0): [DeclStmt] declaration
|
|
# 698| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rfn
|
|
# 698| Type = [FunctionReferenceType] ..(&)(..)
|
|
# 698| getVariable().getInitializer(): [Initializer] initializer for rfn
|
|
# 698| getExpr(): [FunctionAccess] FuncPtrTarget
|
|
# 698| Type = [RoutineType] ..()(..)
|
|
# 698| ValueCategory = lvalue
|
|
# 698| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 698| Type = [FunctionReferenceType] ..(&)(..)
|
|
# 698| ValueCategory = prvalue
|
|
# 699| getStmt(1): [DeclStmt] declaration
|
|
# 699| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pfn
|
|
# 699| Type = [FunctionPointerType] ..(*)(..)
|
|
# 699| getVariable().getInitializer(): [Initializer] initializer for pfn
|
|
# 699| getExpr(): [VariableAccess] rfn
|
|
# 699| Type = [FunctionReferenceType] ..(&)(..)
|
|
# 699| ValueCategory = prvalue(load)
|
|
# 699| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 699| Type = [FunctionPointerType] ..(*)(..)
|
|
# 699| ValueCategory = prvalue(load)
|
|
# 700| getStmt(2): [ExprStmt] ExprStmt
|
|
# 700| getExpr(): [VariableCall] call to expression
|
|
# 700| Type = [IntType] int
|
|
# 700| ValueCategory = prvalue
|
|
# 700| getExpr(): [VariableAccess] rfn
|
|
# 700| Type = [FunctionReferenceType] ..(&)(..)
|
|
# 700| ValueCategory = prvalue(load)
|
|
# 700| getArgument(0): [Literal] 5
|
|
# 700| Type = [IntType] int
|
|
# 700| Value = [Literal] 5
|
|
# 700| ValueCategory = prvalue
|
|
# 700| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 700| Type = [FunctionPointerType] ..(*)(..)
|
|
# 700| ValueCategory = prvalue(load)
|
|
# 701| getStmt(3): [ReturnStmt] return ...
|
|
# 704| [TemplateFunction,TopLevelFunction] T min<T>(T, T)
|
|
# 704| <params>:
|
|
# 704| getParameter(0): [Parameter] x
|
|
# 704| Type = [TemplateParameter] T
|
|
# 704| getParameter(1): [Parameter] y
|
|
# 704| Type = [TemplateParameter] T
|
|
# 704| getEntryPoint(): [BlockStmt] { ... }
|
|
# 705| getStmt(0): [ReturnStmt] return ...
|
|
# 705| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 705| Type = [UnknownType] unknown
|
|
# 705| ValueCategory = prvalue
|
|
# 705| getCondition(): [LTExpr] ... < ...
|
|
# 705| Type = [UnknownType] unknown
|
|
# 705| ValueCategory = prvalue
|
|
# 705| getLesserOperand(): [VariableAccess] x
|
|
# 705| Type = [TemplateParameter] T
|
|
# 705| ValueCategory = lvalue
|
|
# 705| getGreaterOperand(): [VariableAccess] y
|
|
# 705| Type = [TemplateParameter] T
|
|
# 705| ValueCategory = lvalue
|
|
# 705| getThen(): [VariableAccess] x
|
|
# 705| Type = [TemplateParameter] T
|
|
# 705| ValueCategory = lvalue
|
|
# 705| getElse(): [VariableAccess] y
|
|
# 705| Type = [TemplateParameter] T
|
|
# 705| ValueCategory = lvalue
|
|
# 705| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 705| Conversion = [BoolConversion] conversion to bool
|
|
# 705| Type = [BoolType] bool
|
|
# 705| ValueCategory = prvalue
|
|
# 705| getExpr(): [ParenthesisExpr] (...)
|
|
# 705| Type = [UnknownType] unknown
|
|
# 705| ValueCategory = prvalue
|
|
# 704| [FunctionTemplateInstantiation,TopLevelFunction] int min<int>(int, int)
|
|
# 704| <params>:
|
|
# 704| getParameter(0): [Parameter] x
|
|
# 704| Type = [IntType] int
|
|
# 704| getParameter(1): [Parameter] y
|
|
# 704| Type = [IntType] int
|
|
# 704| getEntryPoint(): [BlockStmt] { ... }
|
|
# 705| getStmt(0): [ReturnStmt] return ...
|
|
# 705| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 705| Type = [IntType] int
|
|
# 705| ValueCategory = prvalue(load)
|
|
# 705| getCondition(): [LTExpr] ... < ...
|
|
# 705| Type = [BoolType] bool
|
|
# 705| ValueCategory = prvalue
|
|
# 705| getLesserOperand(): [VariableAccess] x
|
|
# 705| Type = [IntType] int
|
|
# 705| ValueCategory = prvalue(load)
|
|
# 705| getGreaterOperand(): [VariableAccess] y
|
|
# 705| Type = [IntType] int
|
|
# 705| ValueCategory = prvalue(load)
|
|
# 705| getThen(): [VariableAccess] x
|
|
# 705| Type = [IntType] int
|
|
# 705| ValueCategory = prvalue(load)
|
|
# 705| getElse(): [VariableAccess] y
|
|
# 705| Type = [IntType] int
|
|
# 705| ValueCategory = prvalue(load)
|
|
# 705| getCondition().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 705| Type = [BoolType] bool
|
|
# 705| ValueCategory = prvalue
|
|
# 708| [TopLevelFunction] int CallMin(int, int)
|
|
# 708| <params>:
|
|
# 708| getParameter(0): [Parameter] x
|
|
# 708| Type = [IntType] int
|
|
# 708| getParameter(1): [Parameter] y
|
|
# 708| Type = [IntType] int
|
|
# 708| getEntryPoint(): [BlockStmt] { ... }
|
|
# 709| getStmt(0): [ReturnStmt] return ...
|
|
# 709| getExpr(): [FunctionCall] call to min
|
|
# 709| Type = [IntType] int
|
|
# 709| ValueCategory = prvalue
|
|
# 709| getArgument(0): [VariableAccess] x
|
|
# 709| Type = [IntType] int
|
|
# 709| ValueCategory = prvalue(load)
|
|
# 709| getArgument(1): [VariableAccess] y
|
|
# 709| Type = [IntType] int
|
|
# 709| ValueCategory = prvalue(load)
|
|
# 713| [CopyAssignmentOperator] Outer<long>& Outer<long>::operator=(Outer<long> const&)
|
|
# 713| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Outer<long> &
|
|
# 713| [MoveAssignmentOperator] Outer<long>& Outer<long>::operator=(Outer<long>&&)
|
|
# 713| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Outer<long> &&
|
|
# 715| [MemberFunction,TemplateFunction] T Outer<T>::Func<U, V>(U, V)
|
|
# 715| <params>:
|
|
# 715| getParameter(0): [Parameter] x
|
|
# 715| Type = [TemplateParameter] U
|
|
# 715| getParameter(1): [Parameter] y
|
|
# 715| Type = [TemplateParameter] V
|
|
# 715| getEntryPoint(): [BlockStmt] { ... }
|
|
# 716| getStmt(0): [ReturnStmt] return ...
|
|
# 716| getExpr(): [Literal] 0
|
|
# 716| Type = [TemplateParameter] T
|
|
# 716| Value = [Literal] 0
|
|
# 716| ValueCategory = prvalue
|
|
# 716| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 716| Type = [TemplateParameter] T
|
|
# 716| ValueCategory = prvalue(load)
|
|
# 715| [MemberFunction,TemplateFunction] long Outer<long>::Func<U, V>(U, V)
|
|
# 715| <params>:
|
|
# 715| getParameter(0): [Parameter] x
|
|
# 715| Type = [TemplateParameter] U
|
|
# 715| getParameter(1): [Parameter] y
|
|
# 715| Type = [TemplateParameter] V
|
|
# 715| [FunctionTemplateInstantiation,MemberFunction] long Outer<long>::Func<void*, char>(void*, char)
|
|
# 715| <params>:
|
|
# 715| getParameter(0): [Parameter] x
|
|
# 715| Type = [VoidPointerType] void *
|
|
# 715| getParameter(1): [Parameter] y
|
|
# 715| Type = [PlainCharType] char
|
|
# 715| getEntryPoint(): [BlockStmt] { ... }
|
|
# 716| getStmt(0): [ReturnStmt] return ...
|
|
# 716| getExpr(): [Literal] 0
|
|
# 716| Type = [LongType] long
|
|
# 716| Value = [Literal] 0
|
|
# 716| ValueCategory = prvalue
|
|
# 716| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 716| Type = [LongType] long
|
|
# 716| ValueCategory = prvalue(load)
|
|
# 720| [TopLevelFunction] double CallNestedTemplateFunc()
|
|
# 720| <params>:
|
|
# 720| getEntryPoint(): [BlockStmt] { ... }
|
|
# 721| getStmt(0): [ReturnStmt] return ...
|
|
# 721| getExpr(): [FunctionCall] call to Func
|
|
# 721| Type = [LongType] long
|
|
# 721| ValueCategory = prvalue
|
|
# 721| getArgument(0): [Literal] 0
|
|
# 721| Type = [NullPointerType] decltype(nullptr)
|
|
# 721| Value = [Literal] 0
|
|
# 721| ValueCategory = prvalue
|
|
# 721| getArgument(1): [CharLiteral] 111
|
|
# 721| Type = [PlainCharType] char
|
|
# 721| Value = [CharLiteral] 111
|
|
# 721| ValueCategory = prvalue
|
|
# 721| getArgument(0).getFullyConverted(): [CStyleCast] (void *)...
|
|
# 721| Conversion = [PointerConversion] pointer conversion
|
|
# 721| Type = [VoidPointerType] void *
|
|
# 721| Value = [CStyleCast] 0
|
|
# 721| ValueCategory = prvalue
|
|
# 721| getExpr().getFullyConverted(): [CStyleCast] (double)...
|
|
# 721| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 721| Type = [DoubleType] double
|
|
# 721| ValueCategory = prvalue
|
|
# 724| [TopLevelFunction] void TryCatch(bool)
|
|
# 724| <params>:
|
|
# 724| getParameter(0): [Parameter] b
|
|
# 724| Type = [BoolType] bool
|
|
# 724| getEntryPoint(): [BlockStmt] { ... }
|
|
# 725| getStmt(0): [TryStmt] try { ... }
|
|
# 725| getStmt(): [BlockStmt] { ... }
|
|
# 726| getStmt(0): [DeclStmt] declaration
|
|
# 726| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 726| Type = [IntType] int
|
|
# 726| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 726| getExpr(): [Literal] 5
|
|
# 726| Type = [IntType] int
|
|
# 726| Value = [Literal] 5
|
|
# 726| ValueCategory = prvalue
|
|
# 727| getStmt(1): [IfStmt] if (...) ...
|
|
# 727| getCondition(): [VariableAccess] b
|
|
# 727| Type = [BoolType] bool
|
|
# 727| ValueCategory = prvalue(load)
|
|
# 727| getThen(): [BlockStmt] { ... }
|
|
# 728| getStmt(0): [ExprStmt] ExprStmt
|
|
# 728| getExpr(): [ThrowExpr] throw ...
|
|
# 728| Type = [PointerType] const char *
|
|
# 728| ValueCategory = prvalue
|
|
# 728| getExpr(): string literal
|
|
# 728| Type = [ArrayType] const char[15]
|
|
# 728| Value = [StringLiteral] "string literal"
|
|
# 728| ValueCategory = lvalue
|
|
# 728| getExpr().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 728| Type = [PointerType] const char *
|
|
# 728| ValueCategory = prvalue
|
|
# 730| getElse(): [IfStmt] if (...) ...
|
|
# 730| getCondition(): [LTExpr] ... < ...
|
|
# 730| Type = [BoolType] bool
|
|
# 730| ValueCategory = prvalue
|
|
# 730| getLesserOperand(): [VariableAccess] x
|
|
# 730| Type = [IntType] int
|
|
# 730| ValueCategory = prvalue(load)
|
|
# 730| getGreaterOperand(): [Literal] 2
|
|
# 730| Type = [IntType] int
|
|
# 730| Value = [Literal] 2
|
|
# 730| ValueCategory = prvalue
|
|
# 730| getThen(): [BlockStmt] { ... }
|
|
# 731| getStmt(0): [ExprStmt] ExprStmt
|
|
# 731| getExpr(): [AssignExpr] ... = ...
|
|
# 731| Type = [IntType] int
|
|
# 731| ValueCategory = lvalue
|
|
# 731| getLValue(): [VariableAccess] x
|
|
# 731| Type = [IntType] int
|
|
# 731| ValueCategory = lvalue
|
|
# 731| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 731| Type = [IntType] int
|
|
# 731| ValueCategory = prvalue
|
|
# 731| getCondition(): [VariableAccess] b
|
|
# 731| Type = [BoolType] bool
|
|
# 731| ValueCategory = prvalue(load)
|
|
# 731| getThen(): [Literal] 7
|
|
# 731| Type = [IntType] int
|
|
# 731| Value = [Literal] 7
|
|
# 731| ValueCategory = prvalue
|
|
# 731| getElse(): [ThrowExpr] throw ...
|
|
# 731| Type = [Struct] String
|
|
# 731| ValueCategory = prvalue
|
|
# 731| getExpr(): [ConstructorCall] call to String
|
|
# 731| Type = [VoidType] void
|
|
# 731| ValueCategory = prvalue
|
|
# 731| getArgument(0): String object
|
|
# 731| Type = [ArrayType] const char[14]
|
|
# 731| Value = [StringLiteral] "String object"
|
|
# 731| ValueCategory = lvalue
|
|
# 731| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 731| Type = [PointerType] const char *
|
|
# 731| ValueCategory = prvalue
|
|
# 733| getStmt(2): [ExprStmt] ExprStmt
|
|
# 733| getExpr(): [AssignExpr] ... = ...
|
|
# 733| Type = [IntType] int
|
|
# 733| ValueCategory = lvalue
|
|
# 733| getLValue(): [VariableAccess] x
|
|
# 733| Type = [IntType] int
|
|
# 733| ValueCategory = lvalue
|
|
# 733| getRValue(): [Literal] 7
|
|
# 733| Type = [IntType] int
|
|
# 733| Value = [Literal] 7
|
|
# 733| ValueCategory = prvalue
|
|
# 735| getChild(1): [Handler] <handler>
|
|
# 735| getBlock(): [CatchBlock] { ... }
|
|
# 736| getStmt(0): [ExprStmt] ExprStmt
|
|
# 736| getExpr(): [ThrowExpr] throw ...
|
|
# 736| Type = [Struct] String
|
|
# 736| ValueCategory = prvalue
|
|
# 736| getExpr(): [ConstructorCall] call to String
|
|
# 736| Type = [VoidType] void
|
|
# 736| ValueCategory = prvalue
|
|
# 736| getArgument(0): [VariableAccess] s
|
|
# 736| Type = [PointerType] const char *
|
|
# 736| ValueCategory = prvalue(load)
|
|
# 738| getChild(2): [Handler] <handler>
|
|
# 738| getBlock(): [CatchBlock] { ... }
|
|
# 740| getChild(3): [Handler] <handler>
|
|
# 740| getBlock(): [CatchAnyBlock] { ... }
|
|
# 741| getStmt(0): [ExprStmt] ExprStmt
|
|
# 741| getExpr(): [ReThrowExpr] re-throw exception
|
|
# 741| Type = [VoidType] void
|
|
# 741| ValueCategory = prvalue
|
|
# 743| getStmt(1): [ReturnStmt] return ...
|
|
# 745| [CopyAssignmentOperator] Base& Base::operator=(Base const&)
|
|
# 745| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Base &
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ExprStmt] ExprStmt
|
|
# 745| getExpr(): [FunctionCall] call to operator=
|
|
# 745| Type = [LValueReferenceType] String &
|
|
# 745| ValueCategory = prvalue
|
|
# 745| getQualifier(): [AddressOfExpr] & ...
|
|
# 745| Type = [PointerType] String *
|
|
# 745| ValueCategory = prvalue
|
|
# 745| getOperand(): [PointerFieldAccess] base_s
|
|
# 745| Type = [Struct] String
|
|
# 745| ValueCategory = lvalue
|
|
# 745| getQualifier(): [ThisExpr] this
|
|
# 745| Type = [PointerType] Base *
|
|
# 745| ValueCategory = prvalue(load)
|
|
# 745| getArgument(0): [ReferenceFieldAccess] base_s
|
|
# 745| Type = [Struct] String
|
|
# 745| ValueCategory = lvalue
|
|
# 745| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 745| Type = [LValueReferenceType] const Base &
|
|
# 745| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const Base
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const String &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Struct] String
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getStmt(1): [ReturnStmt] return ...
|
|
#-----| getExpr(): [PointerDereferenceExpr] * ...
|
|
#-----| Type = [Struct,VirtualBaseClass] Base
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand(): [ThisExpr] this
|
|
#-----| Type = [PointerType] Base *
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] Base &
|
|
#-----| ValueCategory = prvalue
|
|
# 745| [CopyConstructor] void Base::Base(Base const&)
|
|
# 745| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Base &
|
|
# 745| <initializations>:
|
|
# 745| getInitializer(0): [ConstructorFieldInit] constructor init of field base_s
|
|
# 745| Type = [Struct] String
|
|
# 745| ValueCategory = prvalue
|
|
# 745| getExpr(): [ConstructorCall] call to String
|
|
# 745| Type = [VoidType] void
|
|
# 745| ValueCategory = prvalue
|
|
# 745| getEntryPoint(): [BlockStmt] { ... }
|
|
# 745| getStmt(0): [ReturnStmt] return ...
|
|
# 748| [Constructor] void Base::Base()
|
|
# 748| <params>:
|
|
# 748| <initializations>:
|
|
# 748| getInitializer(0): [ConstructorFieldInit] constructor init of field base_s
|
|
# 748| Type = [Struct] String
|
|
# 748| ValueCategory = prvalue
|
|
# 748| getExpr(): [ConstructorCall] call to String
|
|
# 748| Type = [VoidType] void
|
|
# 748| ValueCategory = prvalue
|
|
# 748| getEntryPoint(): [BlockStmt] { ... }
|
|
# 749| getStmt(0): [ReturnStmt] return ...
|
|
# 750| [Destructor] void Base::~Base()
|
|
# 750| <params>:
|
|
# 750| getEntryPoint(): [BlockStmt] { ... }
|
|
# 751| getStmt(0): [ReturnStmt] return ...
|
|
# 750| <destructions>:
|
|
# 751| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of base_s
|
|
# 751| Type = [Struct] String
|
|
# 751| ValueCategory = prvalue
|
|
# 751| getExpr(): [DestructorCall] call to ~String
|
|
# 751| Type = [VoidType] void
|
|
# 751| ValueCategory = prvalue
|
|
# 751| getQualifier(): [ImplicitThisFieldAccess] base_s
|
|
# 751| Type = [Struct] String
|
|
# 751| ValueCategory = lvalue
|
|
# 754| [CopyAssignmentOperator] Middle& Middle::operator=(Middle const&)
|
|
# 754| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Middle &
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ExprStmt] ExprStmt
|
|
# 754| getExpr(): [FunctionCall] call to operator=
|
|
# 754| Type = [LValueReferenceType] Base &
|
|
# 754| ValueCategory = prvalue
|
|
# 754| getQualifier(): [ThisExpr] this
|
|
# 754| Type = [PointerType] Middle *
|
|
# 754| ValueCategory = prvalue(load)
|
|
# 754| getArgument(0): [PointerDereferenceExpr] * ...
|
|
# 754| Type = [SpecifiedType] const Base
|
|
# 754| ValueCategory = lvalue
|
|
# 754| getOperand(): [AddressOfExpr] & ...
|
|
# 754| Type = [PointerType] const Middle *
|
|
# 754| ValueCategory = prvalue
|
|
# 754| getOperand(): [VariableAccess] (unnamed parameter 0)
|
|
# 754| Type = [LValueReferenceType] const Middle &
|
|
# 754| ValueCategory = prvalue(load)
|
|
#-----| getOperand().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const Middle
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand().getFullyConverted(): [CStyleCast] (const Base *)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [PointerType] const Base *
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (Base *)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [PointerType] Base *
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const Base &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Struct,VirtualBaseClass] Base
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getStmt(1): [ExprStmt] ExprStmt
|
|
# 754| getExpr(): [FunctionCall] call to operator=
|
|
# 754| Type = [LValueReferenceType] String &
|
|
# 754| ValueCategory = prvalue
|
|
# 754| getQualifier(): [AddressOfExpr] & ...
|
|
# 754| Type = [PointerType] String *
|
|
# 754| ValueCategory = prvalue
|
|
# 754| getOperand(): [PointerFieldAccess] middle_s
|
|
# 754| Type = [Struct] String
|
|
# 754| ValueCategory = lvalue
|
|
# 754| getQualifier(): [ThisExpr] this
|
|
# 754| Type = [PointerType] Middle *
|
|
# 754| ValueCategory = prvalue(load)
|
|
# 754| getArgument(0): [ReferenceFieldAccess] middle_s
|
|
# 754| Type = [Struct] String
|
|
# 754| ValueCategory = lvalue
|
|
# 754| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 754| Type = [LValueReferenceType] const Middle &
|
|
# 754| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const Middle
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const String &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Struct] String
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getStmt(2): [ReturnStmt] return ...
|
|
#-----| getExpr(): [PointerDereferenceExpr] * ...
|
|
#-----| Type = [Struct] Middle
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand(): [ThisExpr] this
|
|
#-----| Type = [PointerType] Middle *
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] Middle &
|
|
#-----| ValueCategory = prvalue
|
|
# 754| [CopyConstructor] void Middle::Middle(Middle const&)
|
|
# 754| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Middle &
|
|
# 757| [Constructor] void Middle::Middle()
|
|
# 757| <params>:
|
|
# 757| <initializations>:
|
|
# 757| getInitializer(0): [ConstructorDirectInit] call to Base
|
|
# 757| Type = [VoidType] void
|
|
# 757| ValueCategory = prvalue
|
|
# 757| getInitializer(1): [ConstructorFieldInit] constructor init of field middle_s
|
|
# 757| Type = [Struct] String
|
|
# 757| ValueCategory = prvalue
|
|
# 757| getExpr(): [ConstructorCall] call to String
|
|
# 757| Type = [VoidType] void
|
|
# 757| ValueCategory = prvalue
|
|
# 757| getEntryPoint(): [BlockStmt] { ... }
|
|
# 758| getStmt(0): [ReturnStmt] return ...
|
|
# 759| [Destructor] void Middle::~Middle()
|
|
# 759| <params>:
|
|
# 759| getEntryPoint(): [BlockStmt] { ... }
|
|
# 760| getStmt(0): [ReturnStmt] return ...
|
|
# 759| <destructions>:
|
|
# 760| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of middle_s
|
|
# 760| Type = [Struct] String
|
|
# 760| ValueCategory = prvalue
|
|
# 760| getExpr(): [DestructorCall] call to ~String
|
|
# 760| Type = [VoidType] void
|
|
# 760| ValueCategory = prvalue
|
|
# 760| getQualifier(): [ImplicitThisFieldAccess] middle_s
|
|
# 760| Type = [Struct] String
|
|
# 760| ValueCategory = lvalue
|
|
# 760| getDestruction(1): [DestructorDirectDestruction] call to ~Base
|
|
# 760| Type = [VoidType] void
|
|
# 760| ValueCategory = prvalue
|
|
# 763| [CopyAssignmentOperator] Derived& Derived::operator=(Derived const&)
|
|
# 763| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Derived &
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ExprStmt] ExprStmt
|
|
# 763| getExpr(): [FunctionCall] call to operator=
|
|
# 763| Type = [LValueReferenceType] Middle &
|
|
# 763| ValueCategory = prvalue
|
|
# 763| getQualifier(): [ThisExpr] this
|
|
# 763| Type = [PointerType] Derived *
|
|
# 763| ValueCategory = prvalue(load)
|
|
# 763| getArgument(0): [PointerDereferenceExpr] * ...
|
|
# 763| Type = [SpecifiedType] const Middle
|
|
# 763| ValueCategory = lvalue
|
|
# 763| getOperand(): [AddressOfExpr] & ...
|
|
# 763| Type = [PointerType] const Derived *
|
|
# 763| ValueCategory = prvalue
|
|
# 763| getOperand(): [VariableAccess] (unnamed parameter 0)
|
|
# 763| Type = [LValueReferenceType] const Derived &
|
|
# 763| ValueCategory = prvalue(load)
|
|
#-----| getOperand().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const Derived
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand().getFullyConverted(): [CStyleCast] (const Middle *)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [PointerType] const Middle *
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (Middle *)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [PointerType] Middle *
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const Middle &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Struct] Middle
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getStmt(1): [ExprStmt] ExprStmt
|
|
# 763| getExpr(): [FunctionCall] call to operator=
|
|
# 763| Type = [LValueReferenceType] String &
|
|
# 763| ValueCategory = prvalue
|
|
# 763| getQualifier(): [AddressOfExpr] & ...
|
|
# 763| Type = [PointerType] String *
|
|
# 763| ValueCategory = prvalue
|
|
# 763| getOperand(): [PointerFieldAccess] derived_s
|
|
# 763| Type = [Struct] String
|
|
# 763| ValueCategory = lvalue
|
|
# 763| getQualifier(): [ThisExpr] this
|
|
# 763| Type = [PointerType] Derived *
|
|
# 763| ValueCategory = prvalue(load)
|
|
# 763| getArgument(0): [ReferenceFieldAccess] derived_s
|
|
# 763| Type = [Struct] String
|
|
# 763| ValueCategory = lvalue
|
|
# 763| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 763| Type = [LValueReferenceType] const Derived &
|
|
# 763| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const Derived
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const String &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Struct] String
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getStmt(2): [ReturnStmt] return ...
|
|
#-----| getExpr(): [PointerDereferenceExpr] * ...
|
|
#-----| Type = [Struct] Derived
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand(): [ThisExpr] this
|
|
#-----| Type = [PointerType] Derived *
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] Derived &
|
|
#-----| ValueCategory = prvalue
|
|
# 763| [CopyConstructor] void Derived::Derived(Derived const&)
|
|
# 763| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Derived &
|
|
# 766| [Constructor] void Derived::Derived()
|
|
# 766| <params>:
|
|
# 766| <initializations>:
|
|
# 766| getInitializer(0): [ConstructorDirectInit] call to Middle
|
|
# 766| Type = [VoidType] void
|
|
# 766| ValueCategory = prvalue
|
|
# 766| getInitializer(1): [ConstructorFieldInit] constructor init of field derived_s
|
|
# 766| Type = [Struct] String
|
|
# 766| ValueCategory = prvalue
|
|
# 766| getExpr(): [ConstructorCall] call to String
|
|
# 766| Type = [VoidType] void
|
|
# 766| ValueCategory = prvalue
|
|
# 766| getEntryPoint(): [BlockStmt] { ... }
|
|
# 767| getStmt(0): [ReturnStmt] return ...
|
|
# 768| [Destructor] void Derived::~Derived()
|
|
# 768| <params>:
|
|
# 768| getEntryPoint(): [BlockStmt] { ... }
|
|
# 769| getStmt(0): [ReturnStmt] return ...
|
|
# 768| <destructions>:
|
|
# 769| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of derived_s
|
|
# 769| Type = [Struct] String
|
|
# 769| ValueCategory = prvalue
|
|
# 769| getExpr(): [DestructorCall] call to ~String
|
|
# 769| Type = [VoidType] void
|
|
# 769| ValueCategory = prvalue
|
|
# 769| getQualifier(): [ImplicitThisFieldAccess] derived_s
|
|
# 769| Type = [Struct] String
|
|
# 769| ValueCategory = lvalue
|
|
# 769| getDestruction(1): [DestructorDirectDestruction] call to ~Middle
|
|
# 769| Type = [VoidType] void
|
|
# 769| ValueCategory = prvalue
|
|
# 772| [CopyAssignmentOperator] MiddleVB1& MiddleVB1::operator=(MiddleVB1 const&)
|
|
# 772| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const MiddleVB1 &
|
|
# 772| [CopyConstructor] void MiddleVB1::MiddleVB1(MiddleVB1 const&)
|
|
# 772| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const MiddleVB1 &
|
|
# 775| [Constructor] void MiddleVB1::MiddleVB1()
|
|
# 775| <params>:
|
|
# 775| <initializations>:
|
|
# 775| getInitializer(0): [ConstructorVirtualInit] call to Base
|
|
# 775| Type = [VoidType] void
|
|
# 775| ValueCategory = prvalue
|
|
# 775| getInitializer(1): [ConstructorFieldInit] constructor init of field middlevb1_s
|
|
# 775| Type = [Struct] String
|
|
# 775| ValueCategory = prvalue
|
|
# 775| getExpr(): [ConstructorCall] call to String
|
|
# 775| Type = [VoidType] void
|
|
# 775| ValueCategory = prvalue
|
|
# 775| getEntryPoint(): [BlockStmt] { ... }
|
|
# 776| getStmt(0): [ReturnStmt] return ...
|
|
# 777| [Destructor] void MiddleVB1::~MiddleVB1()
|
|
# 777| <params>:
|
|
# 777| getEntryPoint(): [BlockStmt] { ... }
|
|
# 778| getStmt(0): [ReturnStmt] return ...
|
|
# 777| <destructions>:
|
|
# 778| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of middlevb1_s
|
|
# 778| Type = [Struct] String
|
|
# 778| ValueCategory = prvalue
|
|
# 778| getExpr(): [DestructorCall] call to ~String
|
|
# 778| Type = [VoidType] void
|
|
# 778| ValueCategory = prvalue
|
|
# 778| getQualifier(): [ImplicitThisFieldAccess] middlevb1_s
|
|
# 778| Type = [Struct] String
|
|
# 778| ValueCategory = lvalue
|
|
# 778| getDestruction(1): [DestructorVirtualDestruction] call to ~Base
|
|
# 778| Type = [VoidType] void
|
|
# 778| ValueCategory = prvalue
|
|
# 781| [CopyAssignmentOperator] MiddleVB2& MiddleVB2::operator=(MiddleVB2 const&)
|
|
# 781| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const MiddleVB2 &
|
|
# 781| [CopyConstructor] void MiddleVB2::MiddleVB2(MiddleVB2 const&)
|
|
# 781| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const MiddleVB2 &
|
|
# 784| [Constructor] void MiddleVB2::MiddleVB2()
|
|
# 784| <params>:
|
|
# 784| <initializations>:
|
|
# 784| getInitializer(0): [ConstructorVirtualInit] call to Base
|
|
# 784| Type = [VoidType] void
|
|
# 784| ValueCategory = prvalue
|
|
# 784| getInitializer(1): [ConstructorFieldInit] constructor init of field middlevb2_s
|
|
# 784| Type = [Struct] String
|
|
# 784| ValueCategory = prvalue
|
|
# 784| getExpr(): [ConstructorCall] call to String
|
|
# 784| Type = [VoidType] void
|
|
# 784| ValueCategory = prvalue
|
|
# 784| getEntryPoint(): [BlockStmt] { ... }
|
|
# 785| getStmt(0): [ReturnStmt] return ...
|
|
# 786| [Destructor] void MiddleVB2::~MiddleVB2()
|
|
# 786| <params>:
|
|
# 786| getEntryPoint(): [BlockStmt] { ... }
|
|
# 787| getStmt(0): [ReturnStmt] return ...
|
|
# 786| <destructions>:
|
|
# 787| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of middlevb2_s
|
|
# 787| Type = [Struct] String
|
|
# 787| ValueCategory = prvalue
|
|
# 787| getExpr(): [DestructorCall] call to ~String
|
|
# 787| Type = [VoidType] void
|
|
# 787| ValueCategory = prvalue
|
|
# 787| getQualifier(): [ImplicitThisFieldAccess] middlevb2_s
|
|
# 787| Type = [Struct] String
|
|
# 787| ValueCategory = lvalue
|
|
# 787| getDestruction(1): [DestructorVirtualDestruction] call to ~Base
|
|
# 787| Type = [VoidType] void
|
|
# 787| ValueCategory = prvalue
|
|
# 790| [CopyAssignmentOperator] DerivedVB& DerivedVB::operator=(DerivedVB const&)
|
|
# 790| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const DerivedVB &
|
|
# 790| [CopyConstructor] void DerivedVB::DerivedVB(DerivedVB const&)
|
|
# 790| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const DerivedVB &
|
|
# 793| [Constructor] void DerivedVB::DerivedVB()
|
|
# 793| <params>:
|
|
# 793| <initializations>:
|
|
# 793| getInitializer(0): [ConstructorVirtualInit] call to Base
|
|
# 793| Type = [VoidType] void
|
|
# 793| ValueCategory = prvalue
|
|
# 793| getInitializer(1): [ConstructorDirectInit] call to MiddleVB1
|
|
# 793| Type = [VoidType] void
|
|
# 793| ValueCategory = prvalue
|
|
# 793| getInitializer(2): [ConstructorDirectInit] call to MiddleVB2
|
|
# 793| Type = [VoidType] void
|
|
# 793| ValueCategory = prvalue
|
|
# 793| getInitializer(3): [ConstructorFieldInit] constructor init of field derivedvb_s
|
|
# 793| Type = [Struct] String
|
|
# 793| ValueCategory = prvalue
|
|
# 793| getExpr(): [ConstructorCall] call to String
|
|
# 793| Type = [VoidType] void
|
|
# 793| ValueCategory = prvalue
|
|
# 793| getEntryPoint(): [BlockStmt] { ... }
|
|
# 794| getStmt(0): [ReturnStmt] return ...
|
|
# 795| [Destructor] void DerivedVB::~DerivedVB()
|
|
# 795| <params>:
|
|
# 795| getEntryPoint(): [BlockStmt] { ... }
|
|
# 796| getStmt(0): [ReturnStmt] return ...
|
|
# 795| <destructions>:
|
|
# 796| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of derivedvb_s
|
|
# 796| Type = [Struct] String
|
|
# 796| ValueCategory = prvalue
|
|
# 796| getExpr(): [DestructorCall] call to ~String
|
|
# 796| Type = [VoidType] void
|
|
# 796| ValueCategory = prvalue
|
|
# 796| getQualifier(): [ImplicitThisFieldAccess] derivedvb_s
|
|
# 796| Type = [Struct] String
|
|
# 796| ValueCategory = lvalue
|
|
# 796| getDestruction(1): [DestructorDirectDestruction] call to ~MiddleVB2
|
|
# 796| Type = [VoidType] void
|
|
# 796| ValueCategory = prvalue
|
|
# 796| getDestruction(2): [DestructorDirectDestruction] call to ~MiddleVB1
|
|
# 796| Type = [VoidType] void
|
|
# 796| ValueCategory = prvalue
|
|
# 796| getDestruction(3): [DestructorVirtualDestruction] call to ~Base
|
|
# 796| Type = [VoidType] void
|
|
# 796| ValueCategory = prvalue
|
|
# 799| [TopLevelFunction] void HierarchyConversions()
|
|
# 799| <params>:
|
|
# 799| getEntryPoint(): [BlockStmt] { ... }
|
|
# 800| getStmt(0): [DeclStmt] declaration
|
|
# 800| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 800| Type = [Struct,VirtualBaseClass] Base
|
|
# 800| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 800| getExpr(): [ConstructorCall] call to Base
|
|
# 800| Type = [VoidType] void
|
|
# 800| ValueCategory = prvalue
|
|
# 801| getStmt(1): [DeclStmt] declaration
|
|
# 801| getDeclarationEntry(0): [VariableDeclarationEntry] definition of m
|
|
# 801| Type = [Struct] Middle
|
|
# 801| getVariable().getInitializer(): [Initializer] initializer for m
|
|
# 801| getExpr(): [ConstructorCall] call to Middle
|
|
# 801| Type = [VoidType] void
|
|
# 801| ValueCategory = prvalue
|
|
# 802| getStmt(2): [DeclStmt] declaration
|
|
# 802| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 802| Type = [Struct] Derived
|
|
# 802| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 802| getExpr(): [ConstructorCall] call to Derived
|
|
# 802| Type = [VoidType] void
|
|
# 802| ValueCategory = prvalue
|
|
# 804| getStmt(3): [DeclStmt] declaration
|
|
# 804| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pb
|
|
# 804| Type = [PointerType] Base *
|
|
# 804| getVariable().getInitializer(): [Initializer] initializer for pb
|
|
# 804| getExpr(): [AddressOfExpr] & ...
|
|
# 804| Type = [PointerType] Base *
|
|
# 804| ValueCategory = prvalue
|
|
# 804| getOperand(): [VariableAccess] b
|
|
# 804| Type = [Struct,VirtualBaseClass] Base
|
|
# 804| ValueCategory = lvalue
|
|
# 805| getStmt(4): [DeclStmt] declaration
|
|
# 805| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pm
|
|
# 805| Type = [PointerType] Middle *
|
|
# 805| getVariable().getInitializer(): [Initializer] initializer for pm
|
|
# 805| getExpr(): [AddressOfExpr] & ...
|
|
# 805| Type = [PointerType] Middle *
|
|
# 805| ValueCategory = prvalue
|
|
# 805| getOperand(): [VariableAccess] m
|
|
# 805| Type = [Struct] Middle
|
|
# 805| ValueCategory = lvalue
|
|
# 806| getStmt(5): [DeclStmt] declaration
|
|
# 806| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pd
|
|
# 806| Type = [PointerType] Derived *
|
|
# 806| getVariable().getInitializer(): [Initializer] initializer for pd
|
|
# 806| getExpr(): [AddressOfExpr] & ...
|
|
# 806| Type = [PointerType] Derived *
|
|
# 806| ValueCategory = prvalue
|
|
# 806| getOperand(): [VariableAccess] d
|
|
# 806| Type = [Struct] Derived
|
|
# 806| ValueCategory = lvalue
|
|
# 808| getStmt(6): [ExprStmt] ExprStmt
|
|
# 808| getExpr(): [FunctionCall] call to operator=
|
|
# 808| Type = [LValueReferenceType] Base &
|
|
# 808| ValueCategory = prvalue
|
|
# 808| getQualifier(): [VariableAccess] b
|
|
# 808| Type = [Struct,VirtualBaseClass] Base
|
|
# 808| ValueCategory = lvalue
|
|
# 808| getArgument(0): [VariableAccess] m
|
|
# 808| Type = [Struct] Middle
|
|
# 808| ValueCategory = lvalue
|
|
# 808| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 808| Type = [LValueReferenceType] const Base &
|
|
# 808| ValueCategory = prvalue
|
|
# 808| getExpr(): [CStyleCast] (const Base)...
|
|
# 808| Conversion = [BaseClassConversion] base class conversion
|
|
# 808| Type = [SpecifiedType] const Base
|
|
# 808| ValueCategory = lvalue
|
|
# 808| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 808| Type = [Struct,VirtualBaseClass] Base
|
|
# 808| ValueCategory = lvalue
|
|
# 809| getStmt(7): [ExprStmt] ExprStmt
|
|
# 809| getExpr(): [FunctionCall] call to operator=
|
|
# 809| Type = [LValueReferenceType] Base &
|
|
# 809| ValueCategory = prvalue
|
|
# 809| getQualifier(): [VariableAccess] b
|
|
# 809| Type = [Struct,VirtualBaseClass] Base
|
|
# 809| ValueCategory = lvalue
|
|
# 809| getArgument(0): [ConstructorCall] call to Base
|
|
# 809| Type = [VoidType] void
|
|
# 809| ValueCategory = prvalue
|
|
# 809| getArgument(0): [VariableAccess] m
|
|
# 809| Type = [Struct] Middle
|
|
# 809| ValueCategory = lvalue
|
|
# 809| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 809| Type = [LValueReferenceType] const Base &
|
|
# 809| ValueCategory = prvalue
|
|
# 809| getExpr(): [CStyleCast] (const Base)...
|
|
# 809| Conversion = [BaseClassConversion] base class conversion
|
|
# 809| Type = [SpecifiedType] const Base
|
|
# 809| ValueCategory = lvalue
|
|
# 809| getImplicitDestructorCall(0): [DestructorCall] call to ~Base
|
|
# 809| Type = [VoidType] void
|
|
# 809| ValueCategory = prvalue
|
|
# 809| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 809| Type = [Struct,VirtualBaseClass] Base
|
|
# 809| ValueCategory = xvalue
|
|
# 809| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 809| Type = [LValueReferenceType] const Base &
|
|
# 809| ValueCategory = prvalue
|
|
# 809| getExpr(): [CStyleCast] (const Base)...
|
|
# 809| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 809| Type = [SpecifiedType] const Base
|
|
# 809| ValueCategory = lvalue
|
|
# 809| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 809| Type = [Struct,VirtualBaseClass] Base
|
|
# 809| ValueCategory = lvalue
|
|
# 809| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 809| Type = [Struct,VirtualBaseClass] Base
|
|
# 809| ValueCategory = lvalue
|
|
# 810| getStmt(8): [ExprStmt] ExprStmt
|
|
# 810| getExpr(): [FunctionCall] call to operator=
|
|
# 810| Type = [LValueReferenceType] Base &
|
|
# 810| ValueCategory = prvalue
|
|
# 810| getQualifier(): [VariableAccess] b
|
|
# 810| Type = [Struct,VirtualBaseClass] Base
|
|
# 810| ValueCategory = lvalue
|
|
# 810| getArgument(0): [ConstructorCall] call to Base
|
|
# 810| Type = [VoidType] void
|
|
# 810| ValueCategory = prvalue
|
|
# 810| getArgument(0): [VariableAccess] m
|
|
# 810| Type = [Struct] Middle
|
|
# 810| ValueCategory = lvalue
|
|
# 810| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 810| Type = [LValueReferenceType] const Base &
|
|
# 810| ValueCategory = prvalue
|
|
# 810| getExpr(): [CStyleCast] (const Base)...
|
|
# 810| Conversion = [BaseClassConversion] base class conversion
|
|
# 810| Type = [SpecifiedType] const Base
|
|
# 810| ValueCategory = lvalue
|
|
# 810| getImplicitDestructorCall(0): [DestructorCall] call to ~Base
|
|
# 810| Type = [VoidType] void
|
|
# 810| ValueCategory = prvalue
|
|
# 810| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 810| Type = [Struct,VirtualBaseClass] Base
|
|
# 810| ValueCategory = xvalue
|
|
# 810| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 810| Type = [LValueReferenceType] const Base &
|
|
# 810| ValueCategory = prvalue
|
|
# 810| getExpr(): [CStyleCast] (const Base)...
|
|
# 810| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 810| Type = [SpecifiedType] const Base
|
|
# 810| ValueCategory = lvalue
|
|
# 810| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 810| Type = [Struct,VirtualBaseClass] Base
|
|
# 810| ValueCategory = lvalue
|
|
# 810| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 810| Type = [Struct,VirtualBaseClass] Base
|
|
# 810| ValueCategory = lvalue
|
|
# 811| getStmt(9): [ExprStmt] ExprStmt
|
|
# 811| getExpr(): [AssignExpr] ... = ...
|
|
# 811| Type = [PointerType] Base *
|
|
# 811| ValueCategory = lvalue
|
|
# 811| getLValue(): [VariableAccess] pb
|
|
# 811| Type = [PointerType] Base *
|
|
# 811| ValueCategory = lvalue
|
|
# 811| getRValue(): [VariableAccess] pm
|
|
# 811| Type = [PointerType] Middle *
|
|
# 811| ValueCategory = prvalue(load)
|
|
# 811| getRValue().getFullyConverted(): [CStyleCast] (Base *)...
|
|
# 811| Conversion = [BaseClassConversion] base class conversion
|
|
# 811| Type = [PointerType] Base *
|
|
# 811| ValueCategory = prvalue
|
|
# 812| getStmt(10): [ExprStmt] ExprStmt
|
|
# 812| getExpr(): [AssignExpr] ... = ...
|
|
# 812| Type = [PointerType] Base *
|
|
# 812| ValueCategory = lvalue
|
|
# 812| getLValue(): [VariableAccess] pb
|
|
# 812| Type = [PointerType] Base *
|
|
# 812| ValueCategory = lvalue
|
|
# 812| getRValue(): [VariableAccess] pm
|
|
# 812| Type = [PointerType] Middle *
|
|
# 812| ValueCategory = prvalue(load)
|
|
# 812| getRValue().getFullyConverted(): [CStyleCast] (Base *)...
|
|
# 812| Conversion = [BaseClassConversion] base class conversion
|
|
# 812| Type = [PointerType] Base *
|
|
# 812| ValueCategory = prvalue
|
|
# 813| getStmt(11): [ExprStmt] ExprStmt
|
|
# 813| getExpr(): [AssignExpr] ... = ...
|
|
# 813| Type = [PointerType] Base *
|
|
# 813| ValueCategory = lvalue
|
|
# 813| getLValue(): [VariableAccess] pb
|
|
# 813| Type = [PointerType] Base *
|
|
# 813| ValueCategory = lvalue
|
|
# 813| getRValue(): [VariableAccess] pm
|
|
# 813| Type = [PointerType] Middle *
|
|
# 813| ValueCategory = prvalue(load)
|
|
# 813| getRValue().getFullyConverted(): [StaticCast] static_cast<Base *>...
|
|
# 813| Conversion = [BaseClassConversion] base class conversion
|
|
# 813| Type = [PointerType] Base *
|
|
# 813| ValueCategory = prvalue
|
|
# 814| getStmt(12): [ExprStmt] ExprStmt
|
|
# 814| getExpr(): [AssignExpr] ... = ...
|
|
# 814| Type = [PointerType] Base *
|
|
# 814| ValueCategory = lvalue
|
|
# 814| getLValue(): [VariableAccess] pb
|
|
# 814| Type = [PointerType] Base *
|
|
# 814| ValueCategory = lvalue
|
|
# 814| getRValue(): [VariableAccess] pm
|
|
# 814| Type = [PointerType] Middle *
|
|
# 814| ValueCategory = prvalue(load)
|
|
# 814| getRValue().getFullyConverted(): [ReinterpretCast] reinterpret_cast<Base *>...
|
|
# 814| Conversion = [PointerConversion] pointer conversion
|
|
# 814| Type = [PointerType] Base *
|
|
# 814| ValueCategory = prvalue
|
|
# 816| getStmt(13): [ExprStmt] ExprStmt
|
|
# 816| getExpr(): [FunctionCall] call to operator=
|
|
# 816| Type = [LValueReferenceType] Middle &
|
|
# 816| ValueCategory = prvalue
|
|
# 816| getQualifier(): [VariableAccess] m
|
|
# 816| Type = [Struct] Middle
|
|
# 816| ValueCategory = lvalue
|
|
# 816| getArgument(0): [VariableAccess] b
|
|
# 816| Type = [Struct,VirtualBaseClass] Base
|
|
# 816| ValueCategory = lvalue
|
|
# 816| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 816| Type = [LValueReferenceType] const Middle &
|
|
# 816| ValueCategory = prvalue
|
|
# 816| getExpr(): [CStyleCast] (const Middle)...
|
|
# 816| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 816| Type = [SpecifiedType] const Middle
|
|
# 816| ValueCategory = lvalue
|
|
# 816| getExpr(): [CStyleCast] (Middle)...
|
|
# 816| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 816| Type = [Struct] Middle
|
|
# 816| ValueCategory = lvalue
|
|
# 816| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 816| Type = [Struct] Middle
|
|
# 816| ValueCategory = lvalue
|
|
# 817| getStmt(14): [ExprStmt] ExprStmt
|
|
# 817| getExpr(): [FunctionCall] call to operator=
|
|
# 817| Type = [LValueReferenceType] Middle &
|
|
# 817| ValueCategory = prvalue
|
|
# 817| getQualifier(): [VariableAccess] m
|
|
# 817| Type = [Struct] Middle
|
|
# 817| ValueCategory = lvalue
|
|
# 817| getArgument(0): [VariableAccess] b
|
|
# 817| Type = [Struct,VirtualBaseClass] Base
|
|
# 817| ValueCategory = lvalue
|
|
# 817| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 817| Type = [LValueReferenceType] const Middle &
|
|
# 817| ValueCategory = prvalue
|
|
# 817| getExpr(): [CStyleCast] (const Middle)...
|
|
# 817| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 817| Type = [SpecifiedType] const Middle
|
|
# 817| ValueCategory = lvalue
|
|
# 817| getExpr(): [StaticCast] static_cast<Middle>...
|
|
# 817| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 817| Type = [Struct] Middle
|
|
# 817| ValueCategory = lvalue
|
|
# 817| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 817| Type = [Struct] Middle
|
|
# 817| ValueCategory = lvalue
|
|
# 818| getStmt(15): [ExprStmt] ExprStmt
|
|
# 818| getExpr(): [AssignExpr] ... = ...
|
|
# 818| Type = [PointerType] Middle *
|
|
# 818| ValueCategory = lvalue
|
|
# 818| getLValue(): [VariableAccess] pm
|
|
# 818| Type = [PointerType] Middle *
|
|
# 818| ValueCategory = lvalue
|
|
# 818| getRValue(): [VariableAccess] pb
|
|
# 818| Type = [PointerType] Base *
|
|
# 818| ValueCategory = prvalue(load)
|
|
# 818| getRValue().getFullyConverted(): [CStyleCast] (Middle *)...
|
|
# 818| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 818| Type = [PointerType] Middle *
|
|
# 818| ValueCategory = prvalue
|
|
# 819| getStmt(16): [ExprStmt] ExprStmt
|
|
# 819| getExpr(): [AssignExpr] ... = ...
|
|
# 819| Type = [PointerType] Middle *
|
|
# 819| ValueCategory = lvalue
|
|
# 819| getLValue(): [VariableAccess] pm
|
|
# 819| Type = [PointerType] Middle *
|
|
# 819| ValueCategory = lvalue
|
|
# 819| getRValue(): [VariableAccess] pb
|
|
# 819| Type = [PointerType] Base *
|
|
# 819| ValueCategory = prvalue(load)
|
|
# 819| getRValue().getFullyConverted(): [StaticCast] static_cast<Middle *>...
|
|
# 819| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 819| Type = [PointerType] Middle *
|
|
# 819| ValueCategory = prvalue
|
|
# 820| getStmt(17): [ExprStmt] ExprStmt
|
|
# 820| getExpr(): [AssignExpr] ... = ...
|
|
# 820| Type = [PointerType] Middle *
|
|
# 820| ValueCategory = lvalue
|
|
# 820| getLValue(): [VariableAccess] pm
|
|
# 820| Type = [PointerType] Middle *
|
|
# 820| ValueCategory = lvalue
|
|
# 820| getRValue(): [VariableAccess] pb
|
|
# 820| Type = [PointerType] Base *
|
|
# 820| ValueCategory = prvalue(load)
|
|
# 820| getRValue().getFullyConverted(): [ReinterpretCast] reinterpret_cast<Middle *>...
|
|
# 820| Conversion = [PointerConversion] pointer conversion
|
|
# 820| Type = [PointerType] Middle *
|
|
# 820| ValueCategory = prvalue
|
|
# 822| getStmt(18): [ExprStmt] ExprStmt
|
|
# 822| getExpr(): [FunctionCall] call to operator=
|
|
# 822| Type = [LValueReferenceType] Base &
|
|
# 822| ValueCategory = prvalue
|
|
# 822| getQualifier(): [VariableAccess] b
|
|
# 822| Type = [Struct,VirtualBaseClass] Base
|
|
# 822| ValueCategory = lvalue
|
|
# 822| getArgument(0): [VariableAccess] d
|
|
# 822| Type = [Struct] Derived
|
|
# 822| ValueCategory = lvalue
|
|
# 822| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 822| Type = [LValueReferenceType] const Base &
|
|
# 822| ValueCategory = prvalue
|
|
# 822| getExpr(): [CStyleCast] (const Base)...
|
|
# 822| Conversion = [BaseClassConversion] base class conversion
|
|
# 822| Type = [SpecifiedType] const Base
|
|
# 822| ValueCategory = lvalue
|
|
# 822| getExpr(): [CStyleCast] (const Middle)...
|
|
# 822| Conversion = [BaseClassConversion] base class conversion
|
|
# 822| Type = [SpecifiedType] const Middle
|
|
# 822| ValueCategory = lvalue
|
|
# 822| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 822| Type = [Struct,VirtualBaseClass] Base
|
|
# 822| ValueCategory = lvalue
|
|
# 823| getStmt(19): [ExprStmt] ExprStmt
|
|
# 823| getExpr(): [FunctionCall] call to operator=
|
|
# 823| Type = [LValueReferenceType] Base &
|
|
# 823| ValueCategory = prvalue
|
|
# 823| getQualifier(): [VariableAccess] b
|
|
# 823| Type = [Struct,VirtualBaseClass] Base
|
|
# 823| ValueCategory = lvalue
|
|
# 823| getArgument(0): [ConstructorCall] call to Base
|
|
# 823| Type = [VoidType] void
|
|
# 823| ValueCategory = prvalue
|
|
# 823| getArgument(0): [VariableAccess] d
|
|
# 823| Type = [Struct] Derived
|
|
# 823| ValueCategory = lvalue
|
|
# 823| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 823| Type = [LValueReferenceType] const Base &
|
|
# 823| ValueCategory = prvalue
|
|
# 823| getExpr(): [CStyleCast] (const Base)...
|
|
# 823| Conversion = [BaseClassConversion] base class conversion
|
|
# 823| Type = [SpecifiedType] const Base
|
|
# 823| ValueCategory = lvalue
|
|
# 823| getExpr(): [CStyleCast] (const Middle)...
|
|
# 823| Conversion = [BaseClassConversion] base class conversion
|
|
# 823| Type = [SpecifiedType] const Middle
|
|
# 823| ValueCategory = lvalue
|
|
# 823| getImplicitDestructorCall(0): [DestructorCall] call to ~Base
|
|
# 823| Type = [VoidType] void
|
|
# 823| ValueCategory = prvalue
|
|
# 823| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 823| Type = [Struct,VirtualBaseClass] Base
|
|
# 823| ValueCategory = xvalue
|
|
# 823| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 823| Type = [LValueReferenceType] const Base &
|
|
# 823| ValueCategory = prvalue
|
|
# 823| getExpr(): [CStyleCast] (const Base)...
|
|
# 823| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 823| Type = [SpecifiedType] const Base
|
|
# 823| ValueCategory = lvalue
|
|
# 823| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 823| Type = [Struct,VirtualBaseClass] Base
|
|
# 823| ValueCategory = lvalue
|
|
# 823| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 823| Type = [Struct,VirtualBaseClass] Base
|
|
# 823| ValueCategory = lvalue
|
|
# 824| getStmt(20): [ExprStmt] ExprStmt
|
|
# 824| getExpr(): [FunctionCall] call to operator=
|
|
# 824| Type = [LValueReferenceType] Base &
|
|
# 824| ValueCategory = prvalue
|
|
# 824| getQualifier(): [VariableAccess] b
|
|
# 824| Type = [Struct,VirtualBaseClass] Base
|
|
# 824| ValueCategory = lvalue
|
|
# 824| getArgument(0): [ConstructorCall] call to Base
|
|
# 824| Type = [VoidType] void
|
|
# 824| ValueCategory = prvalue
|
|
# 824| getArgument(0): [VariableAccess] d
|
|
# 824| Type = [Struct] Derived
|
|
# 824| ValueCategory = lvalue
|
|
# 824| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 824| Type = [LValueReferenceType] const Base &
|
|
# 824| ValueCategory = prvalue
|
|
# 824| getExpr(): [CStyleCast] (const Base)...
|
|
# 824| Conversion = [BaseClassConversion] base class conversion
|
|
# 824| Type = [SpecifiedType] const Base
|
|
# 824| ValueCategory = lvalue
|
|
# 824| getExpr(): [CStyleCast] (const Middle)...
|
|
# 824| Conversion = [BaseClassConversion] base class conversion
|
|
# 824| Type = [SpecifiedType] const Middle
|
|
# 824| ValueCategory = lvalue
|
|
# 824| getImplicitDestructorCall(0): [DestructorCall] call to ~Base
|
|
# 824| Type = [VoidType] void
|
|
# 824| ValueCategory = prvalue
|
|
# 824| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 824| Type = [Struct,VirtualBaseClass] Base
|
|
# 824| ValueCategory = xvalue
|
|
# 824| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 824| Type = [LValueReferenceType] const Base &
|
|
# 824| ValueCategory = prvalue
|
|
# 824| getExpr(): [CStyleCast] (const Base)...
|
|
# 824| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 824| Type = [SpecifiedType] const Base
|
|
# 824| ValueCategory = lvalue
|
|
# 824| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 824| Type = [Struct,VirtualBaseClass] Base
|
|
# 824| ValueCategory = lvalue
|
|
# 824| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 824| Type = [Struct,VirtualBaseClass] Base
|
|
# 824| ValueCategory = lvalue
|
|
# 825| getStmt(21): [ExprStmt] ExprStmt
|
|
# 825| getExpr(): [AssignExpr] ... = ...
|
|
# 825| Type = [PointerType] Base *
|
|
# 825| ValueCategory = lvalue
|
|
# 825| getLValue(): [VariableAccess] pb
|
|
# 825| Type = [PointerType] Base *
|
|
# 825| ValueCategory = lvalue
|
|
# 825| getRValue(): [VariableAccess] pd
|
|
# 825| Type = [PointerType] Derived *
|
|
# 825| ValueCategory = prvalue(load)
|
|
# 825| getRValue().getFullyConverted(): [CStyleCast] (Base *)...
|
|
# 825| Conversion = [BaseClassConversion] base class conversion
|
|
# 825| Type = [PointerType] Base *
|
|
# 825| ValueCategory = prvalue
|
|
# 825| getExpr(): [CStyleCast] (Middle *)...
|
|
# 825| Conversion = [BaseClassConversion] base class conversion
|
|
# 825| Type = [PointerType] Middle *
|
|
# 825| ValueCategory = prvalue
|
|
# 826| getStmt(22): [ExprStmt] ExprStmt
|
|
# 826| getExpr(): [AssignExpr] ... = ...
|
|
# 826| Type = [PointerType] Base *
|
|
# 826| ValueCategory = lvalue
|
|
# 826| getLValue(): [VariableAccess] pb
|
|
# 826| Type = [PointerType] Base *
|
|
# 826| ValueCategory = lvalue
|
|
# 826| getRValue(): [VariableAccess] pd
|
|
# 826| Type = [PointerType] Derived *
|
|
# 826| ValueCategory = prvalue(load)
|
|
# 826| getRValue().getFullyConverted(): [CStyleCast] (Base *)...
|
|
# 826| Conversion = [BaseClassConversion] base class conversion
|
|
# 826| Type = [PointerType] Base *
|
|
# 826| ValueCategory = prvalue
|
|
# 826| getExpr(): [CStyleCast] (Middle *)...
|
|
# 826| Conversion = [BaseClassConversion] base class conversion
|
|
# 826| Type = [PointerType] Middle *
|
|
# 826| ValueCategory = prvalue
|
|
# 827| getStmt(23): [ExprStmt] ExprStmt
|
|
# 827| getExpr(): [AssignExpr] ... = ...
|
|
# 827| Type = [PointerType] Base *
|
|
# 827| ValueCategory = lvalue
|
|
# 827| getLValue(): [VariableAccess] pb
|
|
# 827| Type = [PointerType] Base *
|
|
# 827| ValueCategory = lvalue
|
|
# 827| getRValue(): [VariableAccess] pd
|
|
# 827| Type = [PointerType] Derived *
|
|
# 827| ValueCategory = prvalue(load)
|
|
# 827| getRValue().getFullyConverted(): [StaticCast] static_cast<Base *>...
|
|
# 827| Conversion = [BaseClassConversion] base class conversion
|
|
# 827| Type = [PointerType] Base *
|
|
# 827| ValueCategory = prvalue
|
|
# 827| getExpr(): [CStyleCast] (Middle *)...
|
|
# 827| Conversion = [BaseClassConversion] base class conversion
|
|
# 827| Type = [PointerType] Middle *
|
|
# 827| ValueCategory = prvalue
|
|
# 828| getStmt(24): [ExprStmt] ExprStmt
|
|
# 828| getExpr(): [AssignExpr] ... = ...
|
|
# 828| Type = [PointerType] Base *
|
|
# 828| ValueCategory = lvalue
|
|
# 828| getLValue(): [VariableAccess] pb
|
|
# 828| Type = [PointerType] Base *
|
|
# 828| ValueCategory = lvalue
|
|
# 828| getRValue(): [VariableAccess] pd
|
|
# 828| Type = [PointerType] Derived *
|
|
# 828| ValueCategory = prvalue(load)
|
|
# 828| getRValue().getFullyConverted(): [ReinterpretCast] reinterpret_cast<Base *>...
|
|
# 828| Conversion = [PointerConversion] pointer conversion
|
|
# 828| Type = [PointerType] Base *
|
|
# 828| ValueCategory = prvalue
|
|
# 830| getStmt(25): [ExprStmt] ExprStmt
|
|
# 830| getExpr(): [FunctionCall] call to operator=
|
|
# 830| Type = [LValueReferenceType] Derived &
|
|
# 830| ValueCategory = prvalue
|
|
# 830| getQualifier(): [VariableAccess] d
|
|
# 830| Type = [Struct] Derived
|
|
# 830| ValueCategory = lvalue
|
|
# 830| getArgument(0): [VariableAccess] b
|
|
# 830| Type = [Struct,VirtualBaseClass] Base
|
|
# 830| ValueCategory = lvalue
|
|
# 830| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 830| Type = [LValueReferenceType] const Derived &
|
|
# 830| ValueCategory = prvalue
|
|
# 830| getExpr(): [CStyleCast] (const Derived)...
|
|
# 830| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 830| Type = [SpecifiedType] const Derived
|
|
# 830| ValueCategory = lvalue
|
|
# 830| getExpr(): [CStyleCast] (Derived)...
|
|
# 830| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 830| Type = [Struct] Derived
|
|
# 830| ValueCategory = lvalue
|
|
# 830| getExpr(): [CStyleCast] (Middle)...
|
|
# 830| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 830| Type = [Struct] Middle
|
|
# 830| ValueCategory = lvalue
|
|
# 830| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 830| Type = [Struct] Derived
|
|
# 830| ValueCategory = lvalue
|
|
# 831| getStmt(26): [ExprStmt] ExprStmt
|
|
# 831| getExpr(): [FunctionCall] call to operator=
|
|
# 831| Type = [LValueReferenceType] Derived &
|
|
# 831| ValueCategory = prvalue
|
|
# 831| getQualifier(): [VariableAccess] d
|
|
# 831| Type = [Struct] Derived
|
|
# 831| ValueCategory = lvalue
|
|
# 831| getArgument(0): [VariableAccess] b
|
|
# 831| Type = [Struct,VirtualBaseClass] Base
|
|
# 831| ValueCategory = lvalue
|
|
# 831| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 831| Type = [LValueReferenceType] const Derived &
|
|
# 831| ValueCategory = prvalue
|
|
# 831| getExpr(): [CStyleCast] (const Derived)...
|
|
# 831| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 831| Type = [SpecifiedType] const Derived
|
|
# 831| ValueCategory = lvalue
|
|
# 831| getExpr(): [StaticCast] static_cast<Derived>...
|
|
# 831| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 831| Type = [Struct] Derived
|
|
# 831| ValueCategory = lvalue
|
|
# 831| getExpr(): [CStyleCast] (Middle)...
|
|
# 831| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 831| Type = [Struct] Middle
|
|
# 831| ValueCategory = lvalue
|
|
# 831| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 831| Type = [Struct] Derived
|
|
# 831| ValueCategory = lvalue
|
|
# 832| getStmt(27): [ExprStmt] ExprStmt
|
|
# 832| getExpr(): [AssignExpr] ... = ...
|
|
# 832| Type = [PointerType] Derived *
|
|
# 832| ValueCategory = lvalue
|
|
# 832| getLValue(): [VariableAccess] pd
|
|
# 832| Type = [PointerType] Derived *
|
|
# 832| ValueCategory = lvalue
|
|
# 832| getRValue(): [VariableAccess] pb
|
|
# 832| Type = [PointerType] Base *
|
|
# 832| ValueCategory = prvalue(load)
|
|
# 832| getRValue().getFullyConverted(): [CStyleCast] (Derived *)...
|
|
# 832| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 832| Type = [PointerType] Derived *
|
|
# 832| ValueCategory = prvalue
|
|
# 832| getExpr(): [CStyleCast] (Middle *)...
|
|
# 832| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 832| Type = [PointerType] Middle *
|
|
# 832| ValueCategory = prvalue
|
|
# 833| getStmt(28): [ExprStmt] ExprStmt
|
|
# 833| getExpr(): [AssignExpr] ... = ...
|
|
# 833| Type = [PointerType] Derived *
|
|
# 833| ValueCategory = lvalue
|
|
# 833| getLValue(): [VariableAccess] pd
|
|
# 833| Type = [PointerType] Derived *
|
|
# 833| ValueCategory = lvalue
|
|
# 833| getRValue(): [VariableAccess] pb
|
|
# 833| Type = [PointerType] Base *
|
|
# 833| ValueCategory = prvalue(load)
|
|
# 833| getRValue().getFullyConverted(): [StaticCast] static_cast<Derived *>...
|
|
# 833| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 833| Type = [PointerType] Derived *
|
|
# 833| ValueCategory = prvalue
|
|
# 833| getExpr(): [CStyleCast] (Middle *)...
|
|
# 833| Conversion = [DerivedClassConversion] derived class conversion
|
|
# 833| Type = [PointerType] Middle *
|
|
# 833| ValueCategory = prvalue
|
|
# 834| getStmt(29): [ExprStmt] ExprStmt
|
|
# 834| getExpr(): [AssignExpr] ... = ...
|
|
# 834| Type = [PointerType] Derived *
|
|
# 834| ValueCategory = lvalue
|
|
# 834| getLValue(): [VariableAccess] pd
|
|
# 834| Type = [PointerType] Derived *
|
|
# 834| ValueCategory = lvalue
|
|
# 834| getRValue(): [VariableAccess] pb
|
|
# 834| Type = [PointerType] Base *
|
|
# 834| ValueCategory = prvalue(load)
|
|
# 834| getRValue().getFullyConverted(): [ReinterpretCast] reinterpret_cast<Derived *>...
|
|
# 834| Conversion = [PointerConversion] pointer conversion
|
|
# 834| Type = [PointerType] Derived *
|
|
# 834| ValueCategory = prvalue
|
|
# 836| getStmt(30): [DeclStmt] declaration
|
|
# 836| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pmv
|
|
# 836| Type = [PointerType] MiddleVB1 *
|
|
# 836| getVariable().getInitializer(): [Initializer] initializer for pmv
|
|
# 836| getExpr(): [Literal] 0
|
|
# 836| Type = [NullPointerType] decltype(nullptr)
|
|
# 836| Value = [Literal] 0
|
|
# 836| ValueCategory = prvalue
|
|
# 836| getExpr().getFullyConverted(): [CStyleCast] (MiddleVB1 *)...
|
|
# 836| Conversion = [PointerConversion] pointer conversion
|
|
# 836| Type = [PointerType] MiddleVB1 *
|
|
# 836| Value = [CStyleCast] 0
|
|
# 836| ValueCategory = prvalue
|
|
# 837| getStmt(31): [DeclStmt] declaration
|
|
# 837| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pdv
|
|
# 837| Type = [PointerType] DerivedVB *
|
|
# 837| getVariable().getInitializer(): [Initializer] initializer for pdv
|
|
# 837| getExpr(): [Literal] 0
|
|
# 837| Type = [NullPointerType] decltype(nullptr)
|
|
# 837| Value = [Literal] 0
|
|
# 837| ValueCategory = prvalue
|
|
# 837| getExpr().getFullyConverted(): [CStyleCast] (DerivedVB *)...
|
|
# 837| Conversion = [PointerConversion] pointer conversion
|
|
# 837| Type = [PointerType] DerivedVB *
|
|
# 837| Value = [CStyleCast] 0
|
|
# 837| ValueCategory = prvalue
|
|
# 838| getStmt(32): [ExprStmt] ExprStmt
|
|
# 838| getExpr(): [AssignExpr] ... = ...
|
|
# 838| Type = [PointerType] Base *
|
|
# 838| ValueCategory = lvalue
|
|
# 838| getLValue(): [VariableAccess] pb
|
|
# 838| Type = [PointerType] Base *
|
|
# 838| ValueCategory = lvalue
|
|
# 838| getRValue(): [VariableAccess] pmv
|
|
# 838| Type = [PointerType] MiddleVB1 *
|
|
# 838| ValueCategory = prvalue(load)
|
|
# 838| getRValue().getFullyConverted(): [CStyleCast] (Base *)...
|
|
# 838| Conversion = [BaseClassConversion] base class conversion
|
|
# 838| Type = [PointerType] Base *
|
|
# 838| ValueCategory = prvalue
|
|
# 839| getStmt(33): [ExprStmt] ExprStmt
|
|
# 839| getExpr(): [AssignExpr] ... = ...
|
|
# 839| Type = [PointerType] Base *
|
|
# 839| ValueCategory = lvalue
|
|
# 839| getLValue(): [VariableAccess] pb
|
|
# 839| Type = [PointerType] Base *
|
|
# 839| ValueCategory = lvalue
|
|
# 839| getRValue(): [VariableAccess] pdv
|
|
# 839| Type = [PointerType] DerivedVB *
|
|
# 839| ValueCategory = prvalue(load)
|
|
# 839| getRValue().getFullyConverted(): [CStyleCast] (Base *)...
|
|
# 839| Conversion = [BaseClassConversion] base class conversion
|
|
# 839| Type = [PointerType] Base *
|
|
# 839| ValueCategory = prvalue
|
|
# 840| getStmt(34): [ReturnStmt] return ...
|
|
# 840| getImplicitDestructorCall(0): [DestructorCall] call to ~Derived
|
|
# 840| Type = [VoidType] void
|
|
# 840| ValueCategory = prvalue
|
|
# 840| getQualifier(): [VariableAccess] d
|
|
# 840| Type = [Struct] Derived
|
|
# 840| ValueCategory = lvalue
|
|
# 840| getImplicitDestructorCall(1): [DestructorCall] call to ~Middle
|
|
# 840| Type = [VoidType] void
|
|
# 840| ValueCategory = prvalue
|
|
# 840| getQualifier(): [VariableAccess] m
|
|
# 840| Type = [Struct] Middle
|
|
# 840| ValueCategory = lvalue
|
|
# 840| getImplicitDestructorCall(2): [DestructorCall] call to ~Base
|
|
# 840| Type = [VoidType] void
|
|
# 840| ValueCategory = prvalue
|
|
# 840| getQualifier(): [VariableAccess] b
|
|
# 840| Type = [Struct,VirtualBaseClass] Base
|
|
# 840| ValueCategory = lvalue
|
|
# 842| [CopyAssignmentOperator] PolymorphicBase& PolymorphicBase::operator=(PolymorphicBase const&)
|
|
# 842| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const PolymorphicBase &
|
|
# 842| [Constructor] void PolymorphicBase::PolymorphicBase()
|
|
# 842| <params>:
|
|
# 842| <initializations>:
|
|
# 842| getEntryPoint(): [BlockStmt] { ... }
|
|
# 842| getStmt(0): [ReturnStmt] return ...
|
|
# 842| [CopyConstructor] void PolymorphicBase::PolymorphicBase(PolymorphicBase const&)
|
|
# 842| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const PolymorphicBase &
|
|
# 843| [Destructor,VirtualFunction] void PolymorphicBase::~PolymorphicBase()
|
|
# 843| <params>:
|
|
# 846| [CopyAssignmentOperator] PolymorphicDerived& PolymorphicDerived::operator=(PolymorphicDerived const&)
|
|
# 846| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const PolymorphicDerived &
|
|
# 846| [MoveAssignmentOperator] PolymorphicDerived& PolymorphicDerived::operator=(PolymorphicDerived&&)
|
|
# 846| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] PolymorphicDerived &&
|
|
# 846| [Constructor] void PolymorphicDerived::PolymorphicDerived()
|
|
# 846| <params>:
|
|
# 846| <initializations>:
|
|
# 846| getInitializer(0): [ConstructorDirectInit] call to PolymorphicBase
|
|
# 846| Type = [VoidType] void
|
|
# 846| ValueCategory = prvalue
|
|
# 846| getEntryPoint(): [BlockStmt] { ... }
|
|
# 846| getStmt(0): [ReturnStmt] return ...
|
|
# 846| [CopyConstructor] void PolymorphicDerived::PolymorphicDerived(PolymorphicDerived const&)
|
|
# 846| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const PolymorphicDerived &
|
|
# 846| [MoveConstructor] void PolymorphicDerived::PolymorphicDerived(PolymorphicDerived&&)
|
|
# 846| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] PolymorphicDerived &&
|
|
# 846| [Destructor,VirtualFunction] void PolymorphicDerived::~PolymorphicDerived()
|
|
# 846| <params>:
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ReturnStmt] return ...
|
|
# 846| <destructions>:
|
|
# 846| getDestruction(0): [DestructorDirectDestruction] call to ~PolymorphicBase
|
|
# 846| Type = [VoidType] void
|
|
# 846| ValueCategory = prvalue
|
|
# 849| [TopLevelFunction] void DynamicCast()
|
|
# 849| <params>:
|
|
# 849| getEntryPoint(): [BlockStmt] { ... }
|
|
# 850| getStmt(0): [DeclStmt] declaration
|
|
# 850| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 850| Type = [Struct] PolymorphicBase
|
|
# 850| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 850| getExpr(): [ConstructorCall] call to PolymorphicBase
|
|
# 850| Type = [VoidType] void
|
|
# 850| ValueCategory = prvalue
|
|
# 851| getStmt(1): [DeclStmt] declaration
|
|
# 851| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 851| Type = [Struct] PolymorphicDerived
|
|
# 851| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 851| getExpr(): [ConstructorCall] call to PolymorphicDerived
|
|
# 851| Type = [VoidType] void
|
|
# 851| ValueCategory = prvalue
|
|
# 853| getStmt(2): [DeclStmt] declaration
|
|
# 853| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pb
|
|
# 853| Type = [PointerType] PolymorphicBase *
|
|
# 853| getVariable().getInitializer(): [Initializer] initializer for pb
|
|
# 853| getExpr(): [AddressOfExpr] & ...
|
|
# 853| Type = [PointerType] PolymorphicBase *
|
|
# 853| ValueCategory = prvalue
|
|
# 853| getOperand(): [VariableAccess] b
|
|
# 853| Type = [Struct] PolymorphicBase
|
|
# 853| ValueCategory = lvalue
|
|
# 854| getStmt(3): [DeclStmt] declaration
|
|
# 854| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pd
|
|
# 854| Type = [PointerType] PolymorphicDerived *
|
|
# 854| getVariable().getInitializer(): [Initializer] initializer for pd
|
|
# 854| getExpr(): [AddressOfExpr] & ...
|
|
# 854| Type = [PointerType] PolymorphicDerived *
|
|
# 854| ValueCategory = prvalue
|
|
# 854| getOperand(): [VariableAccess] d
|
|
# 854| Type = [Struct] PolymorphicDerived
|
|
# 854| ValueCategory = lvalue
|
|
# 857| getStmt(4): [ExprStmt] ExprStmt
|
|
# 857| getExpr(): [AssignExpr] ... = ...
|
|
# 857| Type = [PointerType] PolymorphicBase *
|
|
# 857| ValueCategory = lvalue
|
|
# 857| getLValue(): [VariableAccess] pb
|
|
# 857| Type = [PointerType] PolymorphicBase *
|
|
# 857| ValueCategory = lvalue
|
|
# 857| getRValue(): [VariableAccess] pd
|
|
# 857| Type = [PointerType] PolymorphicDerived *
|
|
# 857| ValueCategory = prvalue(load)
|
|
# 857| getRValue().getFullyConverted(): [DynamicCast] dynamic_cast<PolymorphicBase *>...
|
|
# 857| Conversion = [DynamicCast] dynamic_cast
|
|
# 857| Type = [PointerType] PolymorphicBase *
|
|
# 857| ValueCategory = prvalue
|
|
# 858| getStmt(5): [DeclStmt] declaration
|
|
# 858| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rb
|
|
# 858| Type = [LValueReferenceType] PolymorphicBase &
|
|
# 858| getVariable().getInitializer(): [Initializer] initializer for rb
|
|
# 858| getExpr(): [VariableAccess] d
|
|
# 858| Type = [Struct] PolymorphicDerived
|
|
# 858| ValueCategory = lvalue
|
|
# 858| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 858| Type = [LValueReferenceType] PolymorphicBase &
|
|
# 858| ValueCategory = prvalue
|
|
# 858| getExpr(): [DynamicCast] dynamic_cast<PolymorphicBase>...
|
|
# 858| Conversion = [DynamicCast] dynamic_cast
|
|
# 858| Type = [Struct] PolymorphicBase
|
|
# 858| ValueCategory = lvalue
|
|
# 860| getStmt(6): [ExprStmt] ExprStmt
|
|
# 860| getExpr(): [AssignExpr] ... = ...
|
|
# 860| Type = [PointerType] PolymorphicDerived *
|
|
# 860| ValueCategory = lvalue
|
|
# 860| getLValue(): [VariableAccess] pd
|
|
# 860| Type = [PointerType] PolymorphicDerived *
|
|
# 860| ValueCategory = lvalue
|
|
# 860| getRValue(): [VariableAccess] pb
|
|
# 860| Type = [PointerType] PolymorphicBase *
|
|
# 860| ValueCategory = prvalue(load)
|
|
# 860| getRValue().getFullyConverted(): [DynamicCast] dynamic_cast<PolymorphicDerived *>...
|
|
# 860| Conversion = [DynamicCast] dynamic_cast
|
|
# 860| Type = [PointerType] PolymorphicDerived *
|
|
# 860| ValueCategory = prvalue
|
|
# 861| getStmt(7): [DeclStmt] declaration
|
|
# 861| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rd
|
|
# 861| Type = [LValueReferenceType] PolymorphicDerived &
|
|
# 861| getVariable().getInitializer(): [Initializer] initializer for rd
|
|
# 861| getExpr(): [VariableAccess] b
|
|
# 861| Type = [Struct] PolymorphicBase
|
|
# 861| ValueCategory = lvalue
|
|
# 861| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 861| Type = [LValueReferenceType] PolymorphicDerived &
|
|
# 861| ValueCategory = prvalue
|
|
# 861| getExpr(): [DynamicCast] dynamic_cast<PolymorphicDerived>...
|
|
# 861| Conversion = [DynamicCast] dynamic_cast
|
|
# 861| Type = [Struct] PolymorphicDerived
|
|
# 861| ValueCategory = lvalue
|
|
# 863| getStmt(8): [DeclStmt] declaration
|
|
# 863| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pv
|
|
# 863| Type = [VoidPointerType] void *
|
|
# 863| getVariable().getInitializer(): [Initializer] initializer for pv
|
|
# 863| getExpr(): [VariableAccess] pb
|
|
# 863| Type = [PointerType] PolymorphicBase *
|
|
# 863| ValueCategory = prvalue(load)
|
|
# 863| getExpr().getFullyConverted(): [DynamicCast] dynamic_cast<void *>...
|
|
# 863| Conversion = [DynamicCast] dynamic_cast
|
|
# 863| Type = [VoidPointerType] void *
|
|
# 863| ValueCategory = prvalue
|
|
# 864| getStmt(9): [DeclStmt] declaration
|
|
# 864| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pcv
|
|
# 864| Type = [PointerType] const void *
|
|
# 864| getVariable().getInitializer(): [Initializer] initializer for pcv
|
|
# 864| getExpr(): [VariableAccess] pd
|
|
# 864| Type = [PointerType] PolymorphicDerived *
|
|
# 864| ValueCategory = prvalue(load)
|
|
# 864| getExpr().getFullyConverted(): [DynamicCast] dynamic_cast<const void *>...
|
|
# 864| Conversion = [DynamicCast] dynamic_cast
|
|
# 864| Type = [PointerType] const void *
|
|
# 864| ValueCategory = prvalue
|
|
# 865| getStmt(10): [ReturnStmt] return ...
|
|
# 865| getImplicitDestructorCall(0): [DestructorCall] call to ~PolymorphicDerived
|
|
# 865| Type = [VoidType] void
|
|
# 865| ValueCategory = prvalue
|
|
# 865| getQualifier(): [VariableAccess] d
|
|
# 865| Type = [Struct] PolymorphicDerived
|
|
# 865| ValueCategory = lvalue
|
|
# 865| getImplicitDestructorCall(1): [DestructorCall] call to ~PolymorphicBase
|
|
# 865| Type = [VoidType] void
|
|
# 865| ValueCategory = prvalue
|
|
# 865| getQualifier(): [VariableAccess] b
|
|
# 865| Type = [Struct] PolymorphicBase
|
|
# 865| ValueCategory = lvalue
|
|
# 867| [Constructor] void String::String()
|
|
# 867| <params>:
|
|
# 867| <initializations>:
|
|
# 868| getInitializer(0): [ConstructorDelegationInit] call to String
|
|
# 868| Type = [VoidType] void
|
|
# 868| ValueCategory = prvalue
|
|
# 868| getArgument(0):
|
|
# 868| Type = [ArrayType] const char[1]
|
|
# 868| Value = [StringLiteral] ""
|
|
# 868| ValueCategory = lvalue
|
|
# 868| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 868| Type = [PointerType] const char *
|
|
# 868| ValueCategory = prvalue
|
|
# 868| getEntryPoint(): [BlockStmt] { ... }
|
|
# 869| getStmt(0): [ReturnStmt] return ...
|
|
# 871| [TopLevelFunction] void ArrayConversions()
|
|
# 871| <params>:
|
|
# 871| getEntryPoint(): [BlockStmt] { ... }
|
|
# 872| getStmt(0): [DeclStmt] declaration
|
|
# 872| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 872| Type = [ArrayType] char[5]
|
|
# 873| getStmt(1): [DeclStmt] declaration
|
|
# 873| getDeclarationEntry(0): [VariableDeclarationEntry] definition of p
|
|
# 873| Type = [PointerType] const char *
|
|
# 873| getVariable().getInitializer(): [Initializer] initializer for p
|
|
# 873| getExpr(): [VariableAccess] a
|
|
# 873| Type = [ArrayType] char[5]
|
|
# 873| ValueCategory = lvalue
|
|
# 873| getExpr().getFullyConverted(): [CStyleCast] (const char *)...
|
|
# 873| Conversion = [PointerConversion] pointer conversion
|
|
# 873| Type = [PointerType] const char *
|
|
# 873| ValueCategory = prvalue
|
|
# 873| getExpr(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 873| Type = [CharPointerType] char *
|
|
# 873| ValueCategory = prvalue
|
|
# 874| getStmt(2): [ExprStmt] ExprStmt
|
|
# 874| getExpr(): [AssignExpr] ... = ...
|
|
# 874| Type = [PointerType] const char *
|
|
# 874| ValueCategory = lvalue
|
|
# 874| getLValue(): [VariableAccess] p
|
|
# 874| Type = [PointerType] const char *
|
|
# 874| ValueCategory = lvalue
|
|
# 874| getRValue(): test
|
|
# 874| Type = [ArrayType] const char[5]
|
|
# 874| Value = [StringLiteral] "test"
|
|
# 874| ValueCategory = lvalue
|
|
# 874| getRValue().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 874| Type = [PointerType] const char *
|
|
# 874| ValueCategory = prvalue
|
|
# 875| getStmt(3): [ExprStmt] ExprStmt
|
|
# 875| getExpr(): [AssignExpr] ... = ...
|
|
# 875| Type = [PointerType] const char *
|
|
# 875| ValueCategory = lvalue
|
|
# 875| getLValue(): [VariableAccess] p
|
|
# 875| Type = [PointerType] const char *
|
|
# 875| ValueCategory = lvalue
|
|
# 875| getRValue(): [AddressOfExpr] & ...
|
|
# 875| Type = [CharPointerType] char *
|
|
# 875| ValueCategory = prvalue
|
|
# 875| getOperand(): [ArrayExpr] access to array
|
|
# 875| Type = [PlainCharType] char
|
|
# 875| ValueCategory = lvalue
|
|
# 875| getArrayBase(): [VariableAccess] a
|
|
# 875| Type = [ArrayType] char[5]
|
|
# 875| ValueCategory = lvalue
|
|
# 875| getArrayOffset(): [Literal] 0
|
|
# 875| Type = [IntType] int
|
|
# 875| Value = [Literal] 0
|
|
# 875| ValueCategory = prvalue
|
|
# 875| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 875| Type = [CharPointerType] char *
|
|
# 875| ValueCategory = prvalue
|
|
# 875| getRValue().getFullyConverted(): [CStyleCast] (const char *)...
|
|
# 875| Conversion = [PointerConversion] pointer conversion
|
|
# 875| Type = [PointerType] const char *
|
|
# 875| ValueCategory = prvalue
|
|
# 876| getStmt(4): [ExprStmt] ExprStmt
|
|
# 876| getExpr(): [AssignExpr] ... = ...
|
|
# 876| Type = [PointerType] const char *
|
|
# 876| ValueCategory = lvalue
|
|
# 876| getLValue(): [VariableAccess] p
|
|
# 876| Type = [PointerType] const char *
|
|
# 876| ValueCategory = lvalue
|
|
# 876| getRValue(): [AddressOfExpr] & ...
|
|
# 876| Type = [PointerType] const char *
|
|
# 876| ValueCategory = prvalue
|
|
# 876| getOperand(): [ArrayExpr] access to array
|
|
# 876| Type = [SpecifiedType] const char
|
|
# 876| ValueCategory = lvalue
|
|
# 876| getArrayBase(): test
|
|
# 876| Type = [ArrayType] const char[5]
|
|
# 876| Value = [StringLiteral] "test"
|
|
# 876| ValueCategory = lvalue
|
|
# 876| getArrayOffset(): [Literal] 0
|
|
# 876| Type = [IntType] int
|
|
# 876| Value = [Literal] 0
|
|
# 876| ValueCategory = prvalue
|
|
# 876| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 876| Type = [PointerType] const char *
|
|
# 876| ValueCategory = prvalue
|
|
# 877| getStmt(5): [DeclStmt] declaration
|
|
# 877| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ra
|
|
# 877| Type = [LValueReferenceType] char(&)[5]
|
|
# 877| getVariable().getInitializer(): [Initializer] initializer for ra
|
|
# 877| getExpr(): [VariableAccess] a
|
|
# 877| Type = [ArrayType] char[5]
|
|
# 877| ValueCategory = lvalue
|
|
# 877| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 877| Type = [LValueReferenceType] char(&)[5]
|
|
# 877| ValueCategory = prvalue
|
|
# 878| getStmt(6): [DeclStmt] declaration
|
|
# 878| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rs
|
|
# 878| Type = [LValueReferenceType] const char(&)[5]
|
|
# 878| getVariable().getInitializer(): [Initializer] initializer for rs
|
|
# 878| getExpr(): test
|
|
# 878| Type = [ArrayType] const char[5]
|
|
# 878| Value = [StringLiteral] "test"
|
|
# 878| ValueCategory = lvalue
|
|
# 878| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 878| Type = [LValueReferenceType] const char(&)[5]
|
|
# 878| ValueCategory = prvalue
|
|
# 879| getStmt(7): [DeclStmt] declaration
|
|
# 879| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pa
|
|
# 879| Type = [PointerType] const char(*)[5]
|
|
# 879| getVariable().getInitializer(): [Initializer] initializer for pa
|
|
# 879| getExpr(): [AddressOfExpr] & ...
|
|
# 879| Type = [PointerType] char(*)[5]
|
|
# 879| ValueCategory = prvalue
|
|
# 879| getOperand(): [VariableAccess] a
|
|
# 879| Type = [ArrayType] char[5]
|
|
# 879| ValueCategory = lvalue
|
|
# 879| getExpr().getFullyConverted(): [CStyleCast] (const char(*)[5])...
|
|
# 879| Conversion = [PointerConversion] pointer conversion
|
|
# 879| Type = [PointerType] const char(*)[5]
|
|
# 879| ValueCategory = prvalue
|
|
# 880| getStmt(8): [ExprStmt] ExprStmt
|
|
# 880| getExpr(): [AssignExpr] ... = ...
|
|
# 880| Type = [PointerType] const char(*)[5]
|
|
# 880| ValueCategory = lvalue
|
|
# 880| getLValue(): [VariableAccess] pa
|
|
# 880| Type = [PointerType] const char(*)[5]
|
|
# 880| ValueCategory = lvalue
|
|
# 880| getRValue(): [AddressOfExpr] & ...
|
|
# 880| Type = [PointerType] const char(*)[5]
|
|
# 880| ValueCategory = prvalue
|
|
# 880| getOperand(): test
|
|
# 880| Type = [ArrayType] const char[5]
|
|
# 880| Value = [StringLiteral] "test"
|
|
# 880| ValueCategory = lvalue
|
|
# 881| getStmt(9): [ReturnStmt] return ...
|
|
# 883| [TopLevelFunction] void FuncPtrConversions(int(*)(int), void*)
|
|
# 883| <params>:
|
|
# 883| getParameter(0): [Parameter] pfn
|
|
# 883| Type = [FunctionPointerType] ..(*)(..)
|
|
# 883| getParameter(1): [Parameter] p
|
|
# 883| Type = [VoidPointerType] void *
|
|
# 883| getEntryPoint(): [BlockStmt] { ... }
|
|
# 884| getStmt(0): [ExprStmt] ExprStmt
|
|
# 884| getExpr(): [AssignExpr] ... = ...
|
|
# 884| Type = [VoidPointerType] void *
|
|
# 884| ValueCategory = lvalue
|
|
# 884| getLValue(): [VariableAccess] p
|
|
# 884| Type = [VoidPointerType] void *
|
|
# 884| ValueCategory = lvalue
|
|
# 884| getRValue(): [VariableAccess] pfn
|
|
# 884| Type = [FunctionPointerType] ..(*)(..)
|
|
# 884| ValueCategory = prvalue(load)
|
|
# 884| getRValue().getFullyConverted(): [CStyleCast] (void *)...
|
|
# 884| Conversion = [PointerConversion] pointer conversion
|
|
# 884| Type = [VoidPointerType] void *
|
|
# 884| ValueCategory = prvalue
|
|
# 885| getStmt(1): [ExprStmt] ExprStmt
|
|
# 885| getExpr(): [AssignExpr] ... = ...
|
|
# 885| Type = [FunctionPointerType] ..(*)(..)
|
|
# 885| ValueCategory = lvalue
|
|
# 885| getLValue(): [VariableAccess] pfn
|
|
# 885| Type = [FunctionPointerType] ..(*)(..)
|
|
# 885| ValueCategory = lvalue
|
|
# 885| getRValue(): [VariableAccess] p
|
|
# 885| Type = [VoidPointerType] void *
|
|
# 885| ValueCategory = prvalue(load)
|
|
# 885| getRValue().getFullyConverted(): [CStyleCast] (..(*)(..))...
|
|
# 885| Conversion = [PointerConversion] pointer conversion
|
|
# 885| Type = [FunctionPointerType] ..(*)(..)
|
|
# 885| ValueCategory = prvalue
|
|
# 886| getStmt(2): [ReturnStmt] return ...
|
|
# 888| [TopLevelFunction] void VAListUsage(int, __va_list_tag[1])
|
|
# 888| <params>:
|
|
# 888| getParameter(0): [Parameter] x
|
|
# 888| Type = [IntType] int
|
|
# 888| getParameter(1): [Parameter] args
|
|
# 888| Type = [ArrayType] __va_list_tag[1]
|
|
# 888| getEntryPoint(): [BlockStmt] { ... }
|
|
# 889| getStmt(0): [DeclStmt] declaration
|
|
# 889| getDeclarationEntry(0): [VariableDeclarationEntry] definition of args2
|
|
# 889| Type = [ArrayType] __va_list_tag[1]
|
|
# 890| getStmt(1): [ExprStmt] ExprStmt
|
|
# 890| getExpr(): [BuiltInVarArgCopy] __builtin_va_copy
|
|
# 890| Type = [VoidType] void
|
|
# 890| ValueCategory = prvalue
|
|
# 890| getDestinationVAList(): [VariableAccess] args2
|
|
# 890| Type = [ArrayType] __va_list_tag[1]
|
|
# 890| ValueCategory = lvalue
|
|
# 890| getSourceVAList(): [VariableAccess] args
|
|
# 890| Type = [PointerType] __va_list_tag *
|
|
# 890| ValueCategory = prvalue(load)
|
|
# 890| getDestinationVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 890| Type = [PointerType] __va_list_tag *
|
|
# 890| ValueCategory = prvalue
|
|
# 891| getStmt(2): [DeclStmt] declaration
|
|
# 891| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 891| Type = [DoubleType] double
|
|
# 891| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 891| getExpr(): [BuiltInVarArg] __builtin_va_arg
|
|
# 891| Type = [DoubleType] double
|
|
# 891| ValueCategory = prvalue(load)
|
|
# 891| getVAList(): [VariableAccess] args
|
|
# 891| Type = [PointerType] __va_list_tag *
|
|
# 891| ValueCategory = prvalue(load)
|
|
# 892| getStmt(3): [DeclStmt] declaration
|
|
# 892| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f
|
|
# 892| Type = [FloatType] float
|
|
# 892| getVariable().getInitializer(): [Initializer] initializer for f
|
|
# 892| getExpr(): [BuiltInVarArg] __builtin_va_arg
|
|
# 892| Type = [IntType] int
|
|
# 892| ValueCategory = prvalue(load)
|
|
# 892| getVAList(): [VariableAccess] args
|
|
# 892| Type = [PointerType] __va_list_tag *
|
|
# 892| ValueCategory = prvalue(load)
|
|
# 892| getExpr().getFullyConverted(): [CStyleCast] (float)...
|
|
# 892| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 892| Type = [FloatType] float
|
|
# 892| ValueCategory = prvalue
|
|
# 893| getStmt(4): [ExprStmt] ExprStmt
|
|
# 893| getExpr(): [BuiltInVarArgsEnd] __builtin_va_end
|
|
# 893| Type = [VoidType] void
|
|
# 893| ValueCategory = prvalue
|
|
# 893| getVAList(): [VariableAccess] args2
|
|
# 893| Type = [ArrayType] __va_list_tag[1]
|
|
# 893| ValueCategory = lvalue
|
|
# 893| getVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 893| Type = [PointerType] __va_list_tag *
|
|
# 893| ValueCategory = prvalue
|
|
# 894| getStmt(5): [ReturnStmt] return ...
|
|
# 896| [TopLevelFunction] void VarArgUsage(int)
|
|
# 896| <params>:
|
|
# 896| getParameter(0): [Parameter] x
|
|
# 896| Type = [IntType] int
|
|
# 896| getEntryPoint(): [BlockStmt] { ... }
|
|
# 897| getStmt(0): [DeclStmt] declaration
|
|
# 897| getDeclarationEntry(0): [VariableDeclarationEntry] definition of args
|
|
# 897| Type = [ArrayType] __va_list_tag[1]
|
|
# 899| getStmt(1): [ExprStmt] ExprStmt
|
|
# 899| getExpr(): [BuiltInVarArgsStart] __builtin_va_start
|
|
# 899| Type = [VoidType] void
|
|
# 899| ValueCategory = prvalue
|
|
# 899| getVAList(): [VariableAccess] args
|
|
# 899| Type = [ArrayType] __va_list_tag[1]
|
|
# 899| ValueCategory = lvalue
|
|
# 899| getLastNamedParameter(): [VariableAccess] x
|
|
# 899| Type = [IntType] int
|
|
# 899| ValueCategory = lvalue
|
|
# 899| getVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 899| Type = [PointerType] __va_list_tag *
|
|
# 899| ValueCategory = prvalue
|
|
# 900| getStmt(2): [DeclStmt] declaration
|
|
# 900| getDeclarationEntry(0): [VariableDeclarationEntry] definition of args2
|
|
# 900| Type = [ArrayType] __va_list_tag[1]
|
|
# 901| getStmt(3): [ExprStmt] ExprStmt
|
|
# 901| getExpr(): [BuiltInVarArgCopy] __builtin_va_copy
|
|
# 901| Type = [VoidType] void
|
|
# 901| ValueCategory = prvalue
|
|
# 901| getDestinationVAList(): [VariableAccess] args2
|
|
# 901| Type = [ArrayType] __va_list_tag[1]
|
|
# 901| ValueCategory = lvalue
|
|
# 901| getSourceVAList(): [VariableAccess] args
|
|
# 901| Type = [ArrayType] __va_list_tag[1]
|
|
# 901| ValueCategory = lvalue
|
|
# 901| getDestinationVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 901| Type = [PointerType] __va_list_tag *
|
|
# 901| ValueCategory = prvalue
|
|
# 901| getSourceVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 901| Type = [PointerType] __va_list_tag *
|
|
# 901| ValueCategory = prvalue
|
|
# 902| getStmt(4): [DeclStmt] declaration
|
|
# 902| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 902| Type = [DoubleType] double
|
|
# 902| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 902| getExpr(): [BuiltInVarArg] __builtin_va_arg
|
|
# 902| Type = [DoubleType] double
|
|
# 902| ValueCategory = prvalue(load)
|
|
# 902| getVAList(): [VariableAccess] args
|
|
# 902| Type = [ArrayType] __va_list_tag[1]
|
|
# 902| ValueCategory = lvalue
|
|
# 902| getVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 902| Type = [PointerType] __va_list_tag *
|
|
# 902| ValueCategory = prvalue
|
|
# 903| getStmt(5): [DeclStmt] declaration
|
|
# 903| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f
|
|
# 903| Type = [FloatType] float
|
|
# 903| getVariable().getInitializer(): [Initializer] initializer for f
|
|
# 903| getExpr(): [BuiltInVarArg] __builtin_va_arg
|
|
# 903| Type = [IntType] int
|
|
# 903| ValueCategory = prvalue(load)
|
|
# 903| getVAList(): [VariableAccess] args
|
|
# 903| Type = [ArrayType] __va_list_tag[1]
|
|
# 903| ValueCategory = lvalue
|
|
# 903| getVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 903| Type = [PointerType] __va_list_tag *
|
|
# 903| ValueCategory = prvalue
|
|
# 903| getExpr().getFullyConverted(): [CStyleCast] (float)...
|
|
# 903| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 903| Type = [FloatType] float
|
|
# 903| ValueCategory = prvalue
|
|
# 904| getStmt(6): [ExprStmt] ExprStmt
|
|
# 904| getExpr(): [BuiltInVarArgsEnd] __builtin_va_end
|
|
# 904| Type = [VoidType] void
|
|
# 904| ValueCategory = prvalue
|
|
# 904| getVAList(): [VariableAccess] args
|
|
# 904| Type = [ArrayType] __va_list_tag[1]
|
|
# 904| ValueCategory = lvalue
|
|
# 904| getVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 904| Type = [PointerType] __va_list_tag *
|
|
# 904| ValueCategory = prvalue
|
|
# 905| getStmt(7): [ExprStmt] ExprStmt
|
|
# 905| getExpr(): [FunctionCall] call to VAListUsage
|
|
# 905| Type = [VoidType] void
|
|
# 905| ValueCategory = prvalue
|
|
# 905| getArgument(0): [VariableAccess] x
|
|
# 905| Type = [IntType] int
|
|
# 905| ValueCategory = prvalue(load)
|
|
# 905| getArgument(1): [VariableAccess] args2
|
|
# 905| Type = [ArrayType] __va_list_tag[1]
|
|
# 905| ValueCategory = lvalue
|
|
# 905| getArgument(1).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 905| Type = [PointerType] __va_list_tag *
|
|
# 905| ValueCategory = prvalue
|
|
# 906| getStmt(8): [ExprStmt] ExprStmt
|
|
# 906| getExpr(): [BuiltInVarArgsEnd] __builtin_va_end
|
|
# 906| Type = [VoidType] void
|
|
# 906| ValueCategory = prvalue
|
|
# 906| getVAList(): [VariableAccess] args2
|
|
# 906| Type = [ArrayType] __va_list_tag[1]
|
|
# 906| ValueCategory = lvalue
|
|
# 906| getVAList().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 906| Type = [PointerType] __va_list_tag *
|
|
# 906| ValueCategory = prvalue
|
|
# 907| getStmt(9): [ReturnStmt] return ...
|
|
# 909| [TopLevelFunction] void CastToVoid(int)
|
|
# 909| <params>:
|
|
# 909| getParameter(0): [Parameter] x
|
|
# 909| Type = [IntType] int
|
|
# 909| getEntryPoint(): [BlockStmt] { ... }
|
|
# 910| getStmt(0): [ExprStmt] ExprStmt
|
|
# 910| getExpr(): [VariableAccess] x
|
|
# 910| Type = [IntType] int
|
|
# 910| ValueCategory = lvalue
|
|
# 910| getExpr().getFullyConverted(): [CStyleCast] (void)...
|
|
# 910| Conversion = [VoidConversion] conversion to void
|
|
# 910| Type = [VoidType] void
|
|
# 910| ValueCategory = prvalue
|
|
# 911| getStmt(1): [ReturnStmt] return ...
|
|
# 913| [TopLevelFunction] void ConstantConditions(int)
|
|
# 913| <params>:
|
|
# 913| getParameter(0): [Parameter] x
|
|
# 913| Type = [IntType] int
|
|
# 913| getEntryPoint(): [BlockStmt] { ... }
|
|
# 914| getStmt(0): [DeclStmt] declaration
|
|
# 914| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 914| Type = [BoolType] bool
|
|
# 914| getVariable().getInitializer(): [Initializer] initializer for a
|
|
# 914| getExpr(): [LogicalAndExpr] ... && ...
|
|
# 914| Type = [BoolType] bool
|
|
# 914| Value = [LogicalAndExpr] 1
|
|
# 914| ValueCategory = prvalue
|
|
# 914| getLeftOperand(): [Literal] 1
|
|
# 914| Type = [BoolType] bool
|
|
# 914| Value = [Literal] 1
|
|
# 914| ValueCategory = prvalue
|
|
# 914| getRightOperand(): [Literal] 1
|
|
# 914| Type = [BoolType] bool
|
|
# 914| Value = [Literal] 1
|
|
# 914| ValueCategory = prvalue
|
|
# 915| getStmt(1): [DeclStmt] declaration
|
|
# 915| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 915| Type = [IntType] int
|
|
# 915| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 915| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 915| Type = [IntType] int
|
|
# 915| ValueCategory = prvalue(load)
|
|
# 915| getCondition(): [Literal] 1
|
|
# 915| Type = [BoolType] bool
|
|
# 915| Value = [Literal] 1
|
|
# 915| ValueCategory = prvalue
|
|
# 915| getThen(): [VariableAccess] x
|
|
# 915| Type = [IntType] int
|
|
# 915| ValueCategory = prvalue(load)
|
|
# 915| getElse(): [VariableAccess] x
|
|
# 915| Type = [IntType] int
|
|
# 915| ValueCategory = prvalue(load)
|
|
# 915| getCondition().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 915| Type = [BoolType] bool
|
|
# 915| Value = [ParenthesisExpr] 1
|
|
# 915| ValueCategory = prvalue
|
|
# 916| getStmt(2): [ReturnStmt] return ...
|
|
# 924| [Operator,TopLevelFunction] void* operator new(size_t, float)
|
|
# 924| <params>:
|
|
# 924| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 924| Type = [CTypedefType,Size_t] size_t
|
|
# 924| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 924| Type = [FloatType] float
|
|
# 925| [Operator,TopLevelFunction] void* operator new[](size_t, float)
|
|
# 925| <params>:
|
|
# 925| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 925| Type = [CTypedefType,Size_t] size_t
|
|
# 925| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 925| Type = [FloatType] float
|
|
# 926| [Operator,TopLevelFunction] void* operator new(size_t, std::align_val_t, float)
|
|
# 926| <params>:
|
|
# 926| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 926| Type = [CTypedefType,Size_t] size_t
|
|
# 926| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 926| Type = [ScopedEnum] align_val_t
|
|
# 926| getParameter(2): [Parameter] (unnamed parameter 2)
|
|
# 926| Type = [FloatType] float
|
|
# 927| [Operator,TopLevelFunction] void* operator new[](size_t, std::align_val_t, float)
|
|
# 927| <params>:
|
|
# 927| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 927| Type = [CTypedefType,Size_t] size_t
|
|
# 927| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 927| Type = [ScopedEnum] align_val_t
|
|
# 927| getParameter(2): [Parameter] (unnamed parameter 2)
|
|
# 927| Type = [FloatType] float
|
|
# 928| [Operator,TopLevelFunction] void operator delete(void*, float)
|
|
# 928| <params>:
|
|
# 928| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 928| Type = [VoidPointerType] void *
|
|
# 928| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 928| Type = [FloatType] float
|
|
# 929| [Operator,TopLevelFunction] void operator delete[](void*, float)
|
|
# 929| <params>:
|
|
# 929| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 929| Type = [VoidPointerType] void *
|
|
# 929| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 929| Type = [FloatType] float
|
|
# 930| [Operator,TopLevelFunction] void operator delete(void*, std::align_val_t, float)
|
|
# 930| <params>:
|
|
# 930| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 930| Type = [VoidPointerType] void *
|
|
# 930| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 930| Type = [ScopedEnum] align_val_t
|
|
# 930| getParameter(2): [Parameter] (unnamed parameter 2)
|
|
# 930| Type = [FloatType] float
|
|
# 931| [Operator,TopLevelFunction] void operator delete[](void*, std::align_val_t, float)
|
|
# 931| <params>:
|
|
# 931| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 931| Type = [VoidPointerType] void *
|
|
# 931| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 931| Type = [ScopedEnum] align_val_t
|
|
# 931| getParameter(2): [Parameter] (unnamed parameter 2)
|
|
# 931| Type = [FloatType] float
|
|
# 933| [CopyAssignmentOperator] SizedDealloc& SizedDealloc::operator=(SizedDealloc const&)
|
|
# 933| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const SizedDealloc &
|
|
# 933| [MoveAssignmentOperator] SizedDealloc& SizedDealloc::operator=(SizedDealloc&&)
|
|
# 933| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] SizedDealloc &&
|
|
# 935| [MemberFunction] void* SizedDealloc::operator new(size_t)
|
|
# 935| <params>:
|
|
# 935| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 935| Type = [CTypedefType,Size_t] size_t
|
|
# 936| [MemberFunction] void* SizedDealloc::operator new[](size_t)
|
|
# 936| <params>:
|
|
# 936| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 936| Type = [CTypedefType,Size_t] size_t
|
|
# 937| [MemberFunction] void SizedDealloc::operator delete(void*, size_t)
|
|
# 937| <params>:
|
|
# 937| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 937| Type = [VoidPointerType] void *
|
|
# 937| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 937| Type = [CTypedefType,Size_t] size_t
|
|
# 938| [MemberFunction] void SizedDealloc::operator delete[](void*, size_t)
|
|
# 938| <params>:
|
|
# 938| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 938| Type = [VoidPointerType] void *
|
|
# 938| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 938| Type = [CTypedefType,Size_t] size_t
|
|
# 941| [CopyAssignmentOperator] Overaligned& Overaligned::operator=(Overaligned const&)
|
|
# 941| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Overaligned &
|
|
# 941| [MoveAssignmentOperator] Overaligned& Overaligned::operator=(Overaligned&&)
|
|
# 941| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Overaligned &&
|
|
# 945| [CopyAssignmentOperator] DefaultCtorWithDefaultParam& DefaultCtorWithDefaultParam::operator=(DefaultCtorWithDefaultParam const&)
|
|
# 945| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const DefaultCtorWithDefaultParam &
|
|
# 945| [MoveAssignmentOperator] DefaultCtorWithDefaultParam& DefaultCtorWithDefaultParam::operator=(DefaultCtorWithDefaultParam&&)
|
|
# 945| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] DefaultCtorWithDefaultParam &&
|
|
# 945| [CopyConstructor] void DefaultCtorWithDefaultParam::DefaultCtorWithDefaultParam(DefaultCtorWithDefaultParam const&)
|
|
# 945| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const DefaultCtorWithDefaultParam &
|
|
# 945| [MoveConstructor] void DefaultCtorWithDefaultParam::DefaultCtorWithDefaultParam(DefaultCtorWithDefaultParam&&)
|
|
# 945| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] DefaultCtorWithDefaultParam &&
|
|
# 946| [Constructor] void DefaultCtorWithDefaultParam::DefaultCtorWithDefaultParam(double)
|
|
# 946| <params>:
|
|
# 946| getParameter(0): [Parameter] d
|
|
# 946| Type = [DoubleType] double
|
|
# 949| [TopLevelFunction] void OperatorNew()
|
|
# 949| <params>:
|
|
# 949| getEntryPoint(): [BlockStmt] { ... }
|
|
# 950| getStmt(0): [ExprStmt] ExprStmt
|
|
# 950| getExpr(): [NewExpr] new
|
|
# 950| Type = [IntPointerType] int *
|
|
# 950| ValueCategory = prvalue
|
|
# 951| getStmt(1): [ExprStmt] ExprStmt
|
|
# 951| getExpr(): [NewExpr] new
|
|
# 951| Type = [IntPointerType] int *
|
|
# 951| ValueCategory = prvalue
|
|
# 951| getAllocatorCall(): [FunctionCall] call to operator new
|
|
# 951| Type = [VoidPointerType] void *
|
|
# 951| ValueCategory = prvalue
|
|
# 951| getArgument(0): [ErrorExpr] <error expr>
|
|
# 951| Type = [LongType] unsigned long
|
|
# 951| ValueCategory = prvalue
|
|
# 951| getArgument(1): [Literal] 1.0
|
|
# 951| Type = [FloatType] float
|
|
# 951| Value = [Literal] 1.0
|
|
# 951| ValueCategory = prvalue
|
|
# 952| getStmt(2): [ExprStmt] ExprStmt
|
|
# 952| getExpr(): [NewExpr] new
|
|
# 952| Type = [IntPointerType] int *
|
|
# 952| ValueCategory = prvalue
|
|
# 952| getInitializer(): [Literal] 0
|
|
# 952| Type = [IntType] int
|
|
# 952| Value = [Literal] 0
|
|
# 952| ValueCategory = prvalue
|
|
# 953| getStmt(3): [ExprStmt] ExprStmt
|
|
# 953| getExpr(): [NewExpr] new
|
|
# 953| Type = [PointerType] String *
|
|
# 953| ValueCategory = prvalue
|
|
# 953| getInitializer(): [ConstructorCall] call to String
|
|
# 953| Type = [VoidType] void
|
|
# 953| ValueCategory = prvalue
|
|
# 954| getStmt(4): [ExprStmt] ExprStmt
|
|
# 954| getExpr(): [NewExpr] new
|
|
# 954| Type = [PointerType] String *
|
|
# 954| ValueCategory = prvalue
|
|
# 954| getAllocatorCall(): [FunctionCall] call to operator new
|
|
# 954| Type = [VoidPointerType] void *
|
|
# 954| ValueCategory = prvalue
|
|
# 954| getArgument(0): [ErrorExpr] <error expr>
|
|
# 954| Type = [LongType] unsigned long
|
|
# 954| ValueCategory = prvalue
|
|
# 954| getArgument(1): [Literal] 1.0
|
|
# 954| Type = [FloatType] float
|
|
# 954| Value = [Literal] 1.0
|
|
# 954| ValueCategory = prvalue
|
|
# 954| getInitializer(): [ConstructorCall] call to String
|
|
# 954| Type = [VoidType] void
|
|
# 954| ValueCategory = prvalue
|
|
# 954| getArgument(0): hello
|
|
# 954| Type = [ArrayType] const char[6]
|
|
# 954| Value = [StringLiteral] "hello"
|
|
# 954| ValueCategory = lvalue
|
|
# 954| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 954| Type = [PointerType] const char *
|
|
# 954| ValueCategory = prvalue
|
|
# 955| getStmt(5): [ExprStmt] ExprStmt
|
|
# 955| getExpr(): [NewExpr] new
|
|
# 955| Type = [PointerType] Overaligned *
|
|
# 955| ValueCategory = prvalue
|
|
# 955| getAlignmentArgument(): [Literal] 128
|
|
# 955| Type = [ScopedEnum] align_val_t
|
|
# 955| Value = [Literal] 128
|
|
# 955| ValueCategory = prvalue
|
|
# 956| getStmt(6): [ExprStmt] ExprStmt
|
|
# 956| getExpr(): [NewExpr] new
|
|
# 956| Type = [PointerType] Overaligned *
|
|
# 956| ValueCategory = prvalue
|
|
# 956| getAllocatorCall(): [FunctionCall] call to operator new
|
|
# 956| Type = [VoidPointerType] void *
|
|
# 956| ValueCategory = prvalue
|
|
# 956| getArgument(0): [ErrorExpr] <error expr>
|
|
# 956| Type = [LongType] unsigned long
|
|
# 956| ValueCategory = prvalue
|
|
# 956| getArgument(1): [Literal] 128
|
|
# 956| Type = [ScopedEnum] align_val_t
|
|
# 956| Value = [Literal] 128
|
|
# 956| ValueCategory = prvalue
|
|
# 956| getArgument(2): [Literal] 1.0
|
|
# 956| Type = [FloatType] float
|
|
# 956| Value = [Literal] 1.0
|
|
# 956| ValueCategory = prvalue
|
|
# 956| getInitializer(): [Literal] 0
|
|
# 956| Type = [Struct] Overaligned
|
|
# 956| Value = [Literal] 0
|
|
# 956| ValueCategory = prvalue
|
|
# 957| getStmt(7): [ReturnStmt] return ...
|
|
# 959| [TopLevelFunction] void OperatorNewArray(int)
|
|
# 959| <params>:
|
|
# 959| getParameter(0): [Parameter] n
|
|
# 959| Type = [IntType] int
|
|
# 959| getEntryPoint(): [BlockStmt] { ... }
|
|
# 960| getStmt(0): [ExprStmt] ExprStmt
|
|
# 960| getExpr(): [NewArrayExpr] new[]
|
|
# 960| Type = [IntPointerType] int *
|
|
# 960| ValueCategory = prvalue
|
|
# 961| getStmt(1): [ExprStmt] ExprStmt
|
|
# 961| getExpr(): [NewArrayExpr] new[]
|
|
# 961| Type = [IntPointerType] int *
|
|
# 961| ValueCategory = prvalue
|
|
# 961| getExtent(): [VariableAccess] n
|
|
# 961| Type = [IntType] int
|
|
# 961| ValueCategory = prvalue(load)
|
|
# 962| getStmt(2): [ExprStmt] ExprStmt
|
|
# 962| getExpr(): [NewArrayExpr] new[]
|
|
# 962| Type = [IntPointerType] int *
|
|
# 962| ValueCategory = prvalue
|
|
# 962| getAllocatorCall(): [FunctionCall] call to operator new[]
|
|
# 962| Type = [VoidPointerType] void *
|
|
# 962| ValueCategory = prvalue
|
|
# 962| getArgument(0): [ErrorExpr] <error expr>
|
|
# 962| Type = [LongType] unsigned long
|
|
# 962| ValueCategory = prvalue
|
|
# 962| getArgument(1): [Literal] 1.0
|
|
# 962| Type = [FloatType] float
|
|
# 962| Value = [Literal] 1.0
|
|
# 962| ValueCategory = prvalue
|
|
# 962| getExtent(): [VariableAccess] n
|
|
# 962| Type = [IntType] int
|
|
# 962| ValueCategory = prvalue(load)
|
|
# 963| getStmt(3): [ExprStmt] ExprStmt
|
|
# 963| getExpr(): [NewArrayExpr] new[]
|
|
# 963| Type = [PointerType] String *
|
|
# 963| ValueCategory = prvalue
|
|
# 963| getInitializer(): [ArrayAggregateLiteral] {...}
|
|
# 963| Type = [ArrayType] String[]
|
|
# 963| ValueCategory = prvalue
|
|
# 963| getAnElementExpr(0): [ConstructorCall] call to String
|
|
# 963| Type = [VoidType] void
|
|
# 963| ValueCategory = prvalue
|
|
# 963| getExtent(): [VariableAccess] n
|
|
# 963| Type = [IntType] int
|
|
# 963| ValueCategory = prvalue(load)
|
|
# 964| getStmt(4): [ExprStmt] ExprStmt
|
|
# 964| getExpr(): [NewArrayExpr] new[]
|
|
# 964| Type = [PointerType] Overaligned *
|
|
# 964| ValueCategory = prvalue
|
|
# 964| getExtent(): [VariableAccess] n
|
|
# 964| Type = [IntType] int
|
|
# 964| ValueCategory = prvalue(load)
|
|
# 964| getAlignmentArgument(): [Literal] 128
|
|
# 964| Type = [ScopedEnum] align_val_t
|
|
# 964| Value = [Literal] 128
|
|
# 964| ValueCategory = prvalue
|
|
# 965| getStmt(5): [ExprStmt] ExprStmt
|
|
# 965| getExpr(): [NewArrayExpr] new[]
|
|
# 965| Type = [PointerType] Overaligned *
|
|
# 965| ValueCategory = prvalue
|
|
# 965| getAllocatorCall(): [FunctionCall] call to operator new[]
|
|
# 965| Type = [VoidPointerType] void *
|
|
# 965| ValueCategory = prvalue
|
|
# 965| getArgument(0): [ErrorExpr] <error expr>
|
|
# 965| Type = [LongType] unsigned long
|
|
# 965| ValueCategory = prvalue
|
|
# 965| getArgument(1): [Literal] 128
|
|
# 965| Type = [ScopedEnum] align_val_t
|
|
# 965| Value = [Literal] 128
|
|
# 965| ValueCategory = prvalue
|
|
# 965| getArgument(2): [Literal] 1.0
|
|
# 965| Type = [FloatType] float
|
|
# 965| Value = [Literal] 1.0
|
|
# 965| ValueCategory = prvalue
|
|
# 966| getStmt(6): [ExprStmt] ExprStmt
|
|
# 966| getExpr(): [NewArrayExpr] new[]
|
|
# 966| Type = [PointerType] DefaultCtorWithDefaultParam *
|
|
# 966| ValueCategory = prvalue
|
|
# 966| getInitializer(): [ArrayAggregateLiteral] {...}
|
|
# 966| Type = [ArrayType] DefaultCtorWithDefaultParam[]
|
|
# 966| ValueCategory = prvalue
|
|
# 966| getAnElementExpr(0): [ConstructorCall] call to DefaultCtorWithDefaultParam
|
|
# 966| Type = [VoidType] void
|
|
# 966| ValueCategory = prvalue
|
|
# 966| getExtent(): [VariableAccess] n
|
|
# 966| Type = [IntType] int
|
|
# 966| ValueCategory = prvalue(load)
|
|
# 967| getStmt(7): [ExprStmt] ExprStmt
|
|
# 967| getExpr(): [NewArrayExpr] new[]
|
|
# 967| Type = [IntPointerType] int *
|
|
# 967| ValueCategory = prvalue
|
|
# 967| getInitializer(): [ArrayAggregateLiteral] {...}
|
|
# 967| Type = [ArrayType] int[3]
|
|
# 967| ValueCategory = prvalue
|
|
# 967| getAnElementExpr(0): [Literal] 0
|
|
# 967| Type = [IntType] int
|
|
# 967| Value = [Literal] 0
|
|
# 967| ValueCategory = prvalue
|
|
# 967| getAnElementExpr(1): [Literal] 1
|
|
# 967| Type = [IntType] int
|
|
# 967| Value = [Literal] 1
|
|
# 967| ValueCategory = prvalue
|
|
# 967| getAnElementExpr(2): [Literal] 2
|
|
# 967| Type = [IntType] int
|
|
# 967| Value = [Literal] 2
|
|
# 967| ValueCategory = prvalue
|
|
# 967| getExtent(): [VariableAccess] n
|
|
# 967| Type = [IntType] int
|
|
# 967| ValueCategory = prvalue(load)
|
|
# 968| getStmt(8): [ReturnStmt] return ...
|
|
# 970| [TopLevelFunction] int designatedInit()
|
|
# 970| <params>:
|
|
# 970| getEntryPoint(): [BlockStmt] { ... }
|
|
# 971| getStmt(0): [DeclStmt] declaration
|
|
# 971| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a1
|
|
# 971| Type = [ArrayType] int[1000]
|
|
# 971| getVariable().getInitializer(): [Initializer] initializer for a1
|
|
# 971| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 971| Type = [ArrayType] int[1000]
|
|
# 971| ValueCategory = prvalue
|
|
# 971| getAnElementExpr(2): [Literal] 10002
|
|
# 971| Type = [IntType] int
|
|
# 971| Value = [Literal] 10002
|
|
# 971| ValueCategory = prvalue
|
|
# 971| getAnElementExpr(900): [Literal] 10900
|
|
# 971| Type = [IntType] int
|
|
# 971| Value = [Literal] 10900
|
|
# 971| ValueCategory = prvalue
|
|
# 972| getStmt(1): [ReturnStmt] return ...
|
|
# 972| getExpr(): [ArrayExpr] access to array
|
|
# 972| Type = [IntType] int
|
|
# 972| ValueCategory = prvalue(load)
|
|
# 972| getArrayBase(): [VariableAccess] a1
|
|
# 972| Type = [ArrayType] int[1000]
|
|
# 972| ValueCategory = lvalue
|
|
# 972| getArrayOffset(): [Literal] 900
|
|
# 972| Type = [IntType] int
|
|
# 972| Value = [Literal] 900
|
|
# 972| ValueCategory = prvalue
|
|
# 972| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 972| Type = [IntPointerType] int *
|
|
# 972| ValueCategory = prvalue
|
|
# 975| [TopLevelFunction] void IfStmtWithDeclaration(int, int)
|
|
# 975| <params>:
|
|
# 975| getParameter(0): [Parameter] x
|
|
# 975| Type = [IntType] int
|
|
# 975| getParameter(1): [Parameter] y
|
|
# 975| Type = [IntType] int
|
|
# 975| getEntryPoint(): [BlockStmt] { ... }
|
|
# 976| getStmt(0): [IfStmt] if (...) ...
|
|
# 976| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 976| Type = [BoolType] bool
|
|
# 976| ValueCategory = prvalue
|
|
# 976| getVariableAccess(): [VariableAccess] b
|
|
# 976| Type = [BoolType] bool
|
|
# 976| ValueCategory = prvalue(load)
|
|
# 976| getInitializingExpr(): [LTExpr] ... < ...
|
|
# 976| Type = [BoolType] bool
|
|
# 976| ValueCategory = prvalue
|
|
# 976| getLesserOperand(): [VariableAccess] x
|
|
# 976| Type = [IntType] int
|
|
# 976| ValueCategory = prvalue(load)
|
|
# 976| getGreaterOperand(): [VariableAccess] y
|
|
# 976| Type = [IntType] int
|
|
# 976| ValueCategory = prvalue(load)
|
|
# 976| getThen(): [BlockStmt] { ... }
|
|
# 977| getStmt(0): [ExprStmt] ExprStmt
|
|
# 977| getExpr(): [AssignExpr] ... = ...
|
|
# 977| Type = [IntType] int
|
|
# 977| ValueCategory = lvalue
|
|
# 977| getLValue(): [VariableAccess] x
|
|
# 977| Type = [IntType] int
|
|
# 977| ValueCategory = lvalue
|
|
# 977| getRValue(): [Literal] 5
|
|
# 977| Type = [IntType] int
|
|
# 977| Value = [Literal] 5
|
|
# 977| ValueCategory = prvalue
|
|
# 979| getElse(): [IfStmt] if (...) ...
|
|
# 979| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 979| Type = [BoolType] bool
|
|
# 979| ValueCategory = prvalue
|
|
# 979| getVariableAccess(): [VariableAccess] z
|
|
# 979| Type = [IntType] int
|
|
# 979| ValueCategory = prvalue(load)
|
|
# 979| getInitializingExpr(): [AddExpr] ... + ...
|
|
# 979| Type = [IntType] int
|
|
# 979| ValueCategory = prvalue
|
|
# 979| getLeftOperand(): [VariableAccess] x
|
|
# 979| Type = [IntType] int
|
|
# 979| ValueCategory = prvalue(load)
|
|
# 979| getRightOperand(): [VariableAccess] y
|
|
# 979| Type = [IntType] int
|
|
# 979| ValueCategory = prvalue(load)
|
|
# 979| getVariableAccess().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 979| Conversion = [BoolConversion] conversion to bool
|
|
# 979| Type = [BoolType] bool
|
|
# 979| ValueCategory = prvalue
|
|
# 979| getThen(): [BlockStmt] { ... }
|
|
# 980| getStmt(0): [ExprStmt] ExprStmt
|
|
# 980| getExpr(): [AssignExpr] ... = ...
|
|
# 980| Type = [IntType] int
|
|
# 980| ValueCategory = lvalue
|
|
# 980| getLValue(): [VariableAccess] y
|
|
# 980| Type = [IntType] int
|
|
# 980| ValueCategory = lvalue
|
|
# 980| getRValue(): [Literal] 7
|
|
# 980| Type = [IntType] int
|
|
# 980| Value = [Literal] 7
|
|
# 980| ValueCategory = prvalue
|
|
# 982| getElse(): [IfStmt] if (...) ...
|
|
# 982| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 982| Type = [BoolType] bool
|
|
# 982| ValueCategory = prvalue
|
|
# 982| getVariableAccess(): [VariableAccess] p
|
|
# 982| Type = [IntPointerType] int *
|
|
# 982| ValueCategory = prvalue(load)
|
|
# 982| getInitializingExpr(): [AddressOfExpr] & ...
|
|
# 982| Type = [IntPointerType] int *
|
|
# 982| ValueCategory = prvalue
|
|
# 982| getOperand(): [VariableAccess] x
|
|
# 982| Type = [IntType] int
|
|
# 982| ValueCategory = lvalue
|
|
# 982| getVariableAccess().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 982| Conversion = [BoolConversion] conversion to bool
|
|
# 982| Type = [BoolType] bool
|
|
# 982| ValueCategory = prvalue
|
|
# 982| getThen(): [BlockStmt] { ... }
|
|
# 983| getStmt(0): [ExprStmt] ExprStmt
|
|
# 983| getExpr(): [AssignExpr] ... = ...
|
|
# 983| Type = [IntType] int
|
|
# 983| ValueCategory = lvalue
|
|
# 983| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 983| Type = [IntType] int
|
|
# 983| ValueCategory = lvalue
|
|
# 983| getOperand(): [VariableAccess] p
|
|
# 983| Type = [IntPointerType] int *
|
|
# 983| ValueCategory = prvalue(load)
|
|
# 983| getRValue(): [Literal] 2
|
|
# 983| Type = [IntType] int
|
|
# 983| Value = [Literal] 2
|
|
# 983| ValueCategory = prvalue
|
|
# 985| getStmt(1): [ReturnStmt] return ...
|
|
# 987| [TopLevelFunction] void WhileStmtWithDeclaration(int, int)
|
|
# 987| <params>:
|
|
# 987| getParameter(0): [Parameter] x
|
|
# 987| Type = [IntType] int
|
|
# 987| getParameter(1): [Parameter] y
|
|
# 987| Type = [IntType] int
|
|
# 987| getEntryPoint(): [BlockStmt] { ... }
|
|
# 988| getStmt(0): [WhileStmt] while (...) ...
|
|
# 988| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 988| Type = [BoolType] bool
|
|
# 988| ValueCategory = prvalue
|
|
# 988| getVariableAccess(): [VariableAccess] b
|
|
# 988| Type = [BoolType] bool
|
|
# 988| ValueCategory = prvalue(load)
|
|
# 988| getInitializingExpr(): [LTExpr] ... < ...
|
|
# 988| Type = [BoolType] bool
|
|
# 988| ValueCategory = prvalue
|
|
# 988| getLesserOperand(): [VariableAccess] x
|
|
# 988| Type = [IntType] int
|
|
# 988| ValueCategory = prvalue(load)
|
|
# 988| getGreaterOperand(): [VariableAccess] y
|
|
# 988| Type = [IntType] int
|
|
# 988| ValueCategory = prvalue(load)
|
|
# 988| getStmt(): [BlockStmt] { ... }
|
|
# 990| getStmt(1): [WhileStmt] while (...) ...
|
|
# 990| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 990| Type = [BoolType] bool
|
|
# 990| ValueCategory = prvalue
|
|
# 990| getVariableAccess(): [VariableAccess] z
|
|
# 990| Type = [IntType] int
|
|
# 990| ValueCategory = prvalue(load)
|
|
# 990| getInitializingExpr(): [AddExpr] ... + ...
|
|
# 990| Type = [IntType] int
|
|
# 990| ValueCategory = prvalue
|
|
# 990| getLeftOperand(): [VariableAccess] x
|
|
# 990| Type = [IntType] int
|
|
# 990| ValueCategory = prvalue(load)
|
|
# 990| getRightOperand(): [VariableAccess] y
|
|
# 990| Type = [IntType] int
|
|
# 990| ValueCategory = prvalue(load)
|
|
# 990| getVariableAccess().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 990| Conversion = [BoolConversion] conversion to bool
|
|
# 990| Type = [BoolType] bool
|
|
# 990| ValueCategory = prvalue
|
|
# 990| getStmt(): [BlockStmt] { ... }
|
|
# 992| getStmt(2): [WhileStmt] while (...) ...
|
|
# 992| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 992| Type = [BoolType] bool
|
|
# 992| ValueCategory = prvalue
|
|
# 992| getVariableAccess(): [VariableAccess] p
|
|
# 992| Type = [IntPointerType] int *
|
|
# 992| ValueCategory = prvalue(load)
|
|
# 992| getInitializingExpr(): [AddressOfExpr] & ...
|
|
# 992| Type = [IntPointerType] int *
|
|
# 992| ValueCategory = prvalue
|
|
# 992| getOperand(): [VariableAccess] x
|
|
# 992| Type = [IntType] int
|
|
# 992| ValueCategory = lvalue
|
|
# 992| getVariableAccess().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 992| Conversion = [BoolConversion] conversion to bool
|
|
# 992| Type = [BoolType] bool
|
|
# 992| ValueCategory = prvalue
|
|
# 992| getStmt(): [BlockStmt] { ... }
|
|
# 994| getStmt(3): [ReturnStmt] return ...
|
|
# 996| [TopLevelFunction] int PointerDecay(int[], int(float))
|
|
# 996| <params>:
|
|
# 996| getParameter(0): [Parameter] a
|
|
# 996| Type = [ArrayType] int[]
|
|
# 996| getParameter(1): [Parameter] fn
|
|
# 996| Type = [RoutineType] ..()(..)
|
|
# 996| getEntryPoint(): [BlockStmt] { ... }
|
|
# 997| getStmt(0): [ReturnStmt] return ...
|
|
# 997| getExpr(): [AddExpr] ... + ...
|
|
# 997| Type = [IntType] int
|
|
# 997| ValueCategory = prvalue
|
|
# 997| getLeftOperand(): [ArrayExpr] access to array
|
|
# 997| Type = [IntType] int
|
|
# 997| ValueCategory = prvalue(load)
|
|
# 997| getArrayBase(): [VariableAccess] a
|
|
# 997| Type = [IntPointerType] int *
|
|
# 997| ValueCategory = prvalue(load)
|
|
# 997| getArrayOffset(): [Literal] 0
|
|
# 997| Type = [IntType] int
|
|
# 997| Value = [Literal] 0
|
|
# 997| ValueCategory = prvalue
|
|
# 997| getRightOperand(): [VariableCall] call to expression
|
|
# 997| Type = [IntType] int
|
|
# 997| ValueCategory = prvalue
|
|
# 997| getExpr(): [VariableAccess] fn
|
|
# 997| Type = [FunctionPointerType] ..(*)(..)
|
|
# 997| ValueCategory = prvalue(load)
|
|
# 997| getArgument(0): [Literal] 1.0
|
|
# 997| Type = [DoubleType] double
|
|
# 997| Value = [Literal] 1.0
|
|
# 997| ValueCategory = prvalue
|
|
# 997| getArgument(0).getFullyConverted(): [CStyleCast] (float)...
|
|
# 997| Conversion = [FloatingPointConversion] floating point conversion
|
|
# 997| Type = [FloatType] float
|
|
# 997| Value = [CStyleCast] 1.0
|
|
# 997| ValueCategory = prvalue
|
|
# 1000| [TopLevelFunction] int StmtExpr(int, int, int)
|
|
# 1000| <params>:
|
|
# 1000| getParameter(0): [Parameter] b
|
|
# 1000| Type = [IntType] int
|
|
# 1000| getParameter(1): [Parameter] y
|
|
# 1000| Type = [IntType] int
|
|
# 1000| getParameter(2): [Parameter] z
|
|
# 1000| Type = [IntType] int
|
|
# 1000| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1001| getStmt(0): [DeclStmt] declaration
|
|
# 1001| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1001| Type = [IntType] int
|
|
# 1001| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 1001| getExpr(): [StmtExpr] (statement expression)
|
|
# 1001| Type = [IntType] int
|
|
# 1001| ValueCategory = prvalue
|
|
# 1001| getStmt(): [BlockStmt] { ... }
|
|
# 1002| getStmt(0): [DeclStmt] declaration
|
|
# 1002| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1002| Type = [IntType] int
|
|
# 1003| getStmt(1): [IfStmt] if (...) ...
|
|
# 1003| getCondition(): [VariableAccess] b
|
|
# 1003| Type = [IntType] int
|
|
# 1003| ValueCategory = prvalue(load)
|
|
# 1003| getThen(): [BlockStmt] { ... }
|
|
# 1004| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1004| getExpr(): [AssignExpr] ... = ...
|
|
# 1004| Type = [IntType] int
|
|
# 1004| ValueCategory = lvalue
|
|
# 1004| getLValue(): [VariableAccess] w
|
|
# 1004| Type = [IntType] int
|
|
# 1004| ValueCategory = lvalue
|
|
# 1004| getRValue(): [VariableAccess] y
|
|
# 1004| Type = [IntType] int
|
|
# 1004| ValueCategory = prvalue(load)
|
|
# 1005| getElse(): [BlockStmt] { ... }
|
|
# 1006| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1006| getExpr(): [AssignExpr] ... = ...
|
|
# 1006| Type = [IntType] int
|
|
# 1006| ValueCategory = lvalue
|
|
# 1006| getLValue(): [VariableAccess] w
|
|
# 1006| Type = [IntType] int
|
|
# 1006| ValueCategory = lvalue
|
|
# 1006| getRValue(): [VariableAccess] z
|
|
# 1006| Type = [IntType] int
|
|
# 1006| ValueCategory = prvalue(load)
|
|
# 1003| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1003| Conversion = [BoolConversion] conversion to bool
|
|
# 1003| Type = [BoolType] bool
|
|
# 1003| ValueCategory = prvalue
|
|
# 1008| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1008| getExpr(): [VariableAccess] w
|
|
# 1008| Type = [IntType] int
|
|
# 1008| ValueCategory = prvalue(load)
|
|
# 1011| getStmt(1): [ReturnStmt] return ...
|
|
# 1011| getExpr(): [StmtExpr] (statement expression)
|
|
# 1011| Type = [IntType] int
|
|
# 1011| ValueCategory = prvalue
|
|
# 1011| getStmt(): [BlockStmt] { ... }
|
|
# 1011| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1011| getExpr(): [VariableAccess] x
|
|
# 1011| Type = [IntType] int
|
|
# 1011| ValueCategory = prvalue(load)
|
|
# 1015| [TopLevelFunction] void OperatorDelete()
|
|
# 1015| <params>:
|
|
# 1015| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1016| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1016| getExpr(): [DeleteExpr] delete
|
|
# 1016| Type = [VoidType] void
|
|
# 1016| ValueCategory = prvalue
|
|
# 1016| getExpr(): [Literal] 0
|
|
# 1016| Type = [NullPointerType] decltype(nullptr)
|
|
# 1016| Value = [Literal] 0
|
|
# 1016| ValueCategory = prvalue
|
|
# 1016| getExpr().getFullyConverted(): [StaticCast] static_cast<int *>...
|
|
# 1016| Conversion = [PointerConversion] pointer conversion
|
|
# 1016| Type = [IntPointerType] int *
|
|
# 1016| Value = [StaticCast] 0
|
|
# 1016| ValueCategory = prvalue
|
|
# 1017| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1017| getExpr(): [DeleteExpr] delete
|
|
# 1017| Type = [VoidType] void
|
|
# 1017| ValueCategory = prvalue
|
|
# 1017| getDestructorCall(): [DestructorCall] call to ~String
|
|
# 1017| Type = [VoidType] void
|
|
# 1017| ValueCategory = prvalue
|
|
# 1017| getQualifier(): [Literal] 0
|
|
# 1017| Type = [NullPointerType] decltype(nullptr)
|
|
# 1017| Value = [Literal] 0
|
|
# 1017| ValueCategory = prvalue
|
|
# 1017| getQualifier().getFullyConverted(): [StaticCast] static_cast<String *>...
|
|
# 1017| Conversion = [PointerConversion] pointer conversion
|
|
# 1017| Type = [PointerType] String *
|
|
# 1017| Value = [StaticCast] 0
|
|
# 1017| ValueCategory = prvalue
|
|
# 1018| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1018| getExpr(): [DeleteExpr] delete
|
|
# 1018| Type = [VoidType] void
|
|
# 1018| ValueCategory = prvalue
|
|
# 1018| getDeallocatorCall(): [FunctionCall] call to operator delete
|
|
# 1018| Type = [VoidType] void
|
|
# 1018| ValueCategory = prvalue
|
|
# 1018| getExpr(): [Literal] 0
|
|
# 1018| Type = [NullPointerType] decltype(nullptr)
|
|
# 1018| Value = [Literal] 0
|
|
# 1018| ValueCategory = prvalue
|
|
# 1018| getExpr().getFullyConverted(): [StaticCast] static_cast<SizedDealloc *>...
|
|
# 1018| Conversion = [PointerConversion] pointer conversion
|
|
# 1018| Type = [PointerType] SizedDealloc *
|
|
# 1018| Value = [StaticCast] 0
|
|
# 1018| ValueCategory = prvalue
|
|
# 1019| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1019| getExpr(): [DeleteExpr] delete
|
|
# 1019| Type = [VoidType] void
|
|
# 1019| ValueCategory = prvalue
|
|
# 1019| getExpr(): [Literal] 0
|
|
# 1019| Type = [NullPointerType] decltype(nullptr)
|
|
# 1019| Value = [Literal] 0
|
|
# 1019| ValueCategory = prvalue
|
|
# 1019| getExpr().getFullyConverted(): [StaticCast] static_cast<Overaligned *>...
|
|
# 1019| Conversion = [PointerConversion] pointer conversion
|
|
# 1019| Type = [PointerType] Overaligned *
|
|
# 1019| Value = [StaticCast] 0
|
|
# 1019| ValueCategory = prvalue
|
|
# 1020| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1020| getExpr(): [DeleteExpr] delete
|
|
# 1020| Type = [VoidType] void
|
|
# 1020| ValueCategory = prvalue
|
|
# 1020| getDestructorCall(): [DestructorCall] call to ~PolymorphicBase
|
|
# 1020| Type = [VoidType] void
|
|
# 1020| ValueCategory = prvalue
|
|
# 1020| getQualifier(): [Literal] 0
|
|
# 1020| Type = [NullPointerType] decltype(nullptr)
|
|
# 1020| Value = [Literal] 0
|
|
# 1020| ValueCategory = prvalue
|
|
# 1020| getQualifier().getFullyConverted(): [StaticCast] static_cast<PolymorphicBase *>...
|
|
# 1020| Conversion = [PointerConversion] pointer conversion
|
|
# 1020| Type = [PointerType] PolymorphicBase *
|
|
# 1020| Value = [StaticCast] 0
|
|
# 1020| ValueCategory = prvalue
|
|
# 1021| getStmt(5): [ReturnStmt] return ...
|
|
# 1024| [TopLevelFunction] void OperatorDeleteArray()
|
|
# 1024| <params>:
|
|
# 1024| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1025| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1025| getExpr(): [DeleteArrayExpr] delete[]
|
|
# 1025| Type = [VoidType] void
|
|
# 1025| ValueCategory = prvalue
|
|
# 1025| getExpr(): [Literal] 0
|
|
# 1025| Type = [NullPointerType] decltype(nullptr)
|
|
# 1025| Value = [Literal] 0
|
|
# 1025| ValueCategory = prvalue
|
|
# 1025| getExpr().getFullyConverted(): [StaticCast] static_cast<int *>...
|
|
# 1025| Conversion = [PointerConversion] pointer conversion
|
|
# 1025| Type = [IntPointerType] int *
|
|
# 1025| Value = [StaticCast] 0
|
|
# 1025| ValueCategory = prvalue
|
|
# 1026| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1026| getExpr(): [DeleteArrayExpr] delete[]
|
|
# 1026| Type = [VoidType] void
|
|
# 1026| ValueCategory = prvalue
|
|
# 1026| getDestructorCall(): [DestructorCall] call to ~String
|
|
# 1026| Type = [VoidType] void
|
|
# 1026| ValueCategory = prvalue
|
|
# 1026| getQualifier(): [Literal] 0
|
|
# 1026| Type = [NullPointerType] decltype(nullptr)
|
|
# 1026| Value = [Literal] 0
|
|
# 1026| ValueCategory = prvalue
|
|
# 1026| getQualifier().getFullyConverted(): [StaticCast] static_cast<String *>...
|
|
# 1026| Conversion = [PointerConversion] pointer conversion
|
|
# 1026| Type = [PointerType] String *
|
|
# 1026| Value = [StaticCast] 0
|
|
# 1026| ValueCategory = prvalue
|
|
# 1027| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1027| getExpr(): [DeleteArrayExpr] delete[]
|
|
# 1027| Type = [VoidType] void
|
|
# 1027| ValueCategory = prvalue
|
|
# 1027| getDeallocatorCall(): [FunctionCall] call to operator delete[]
|
|
# 1027| Type = [VoidType] void
|
|
# 1027| ValueCategory = prvalue
|
|
# 1027| getExpr(): [Literal] 0
|
|
# 1027| Type = [NullPointerType] decltype(nullptr)
|
|
# 1027| Value = [Literal] 0
|
|
# 1027| ValueCategory = prvalue
|
|
# 1027| getExpr().getFullyConverted(): [StaticCast] static_cast<SizedDealloc *>...
|
|
# 1027| Conversion = [PointerConversion] pointer conversion
|
|
# 1027| Type = [PointerType] SizedDealloc *
|
|
# 1027| Value = [StaticCast] 0
|
|
# 1027| ValueCategory = prvalue
|
|
# 1028| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1028| getExpr(): [DeleteArrayExpr] delete[]
|
|
# 1028| Type = [VoidType] void
|
|
# 1028| ValueCategory = prvalue
|
|
# 1028| getExpr(): [Literal] 0
|
|
# 1028| Type = [NullPointerType] decltype(nullptr)
|
|
# 1028| Value = [Literal] 0
|
|
# 1028| ValueCategory = prvalue
|
|
# 1028| getExpr().getFullyConverted(): [StaticCast] static_cast<Overaligned *>...
|
|
# 1028| Conversion = [PointerConversion] pointer conversion
|
|
# 1028| Type = [PointerType] Overaligned *
|
|
# 1028| Value = [StaticCast] 0
|
|
# 1028| ValueCategory = prvalue
|
|
# 1029| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1029| getExpr(): [DeleteArrayExpr] delete[]
|
|
# 1029| Type = [VoidType] void
|
|
# 1029| ValueCategory = prvalue
|
|
# 1029| getDestructorCall(): [DestructorCall] call to ~PolymorphicBase
|
|
# 1029| Type = [VoidType] void
|
|
# 1029| ValueCategory = prvalue
|
|
# 1029| getQualifier(): [Literal] 0
|
|
# 1029| Type = [NullPointerType] decltype(nullptr)
|
|
# 1029| Value = [Literal] 0
|
|
# 1029| ValueCategory = prvalue
|
|
# 1029| getQualifier().getFullyConverted(): [StaticCast] static_cast<PolymorphicBase *>...
|
|
# 1029| Conversion = [PointerConversion] pointer conversion
|
|
# 1029| Type = [PointerType] PolymorphicBase *
|
|
# 1029| Value = [StaticCast] 0
|
|
# 1029| ValueCategory = prvalue
|
|
# 1030| getStmt(5): [ReturnStmt] return ...
|
|
# 1032| [CopyAssignmentOperator] EmptyStruct& EmptyStruct::operator=(EmptyStruct const&)
|
|
# 1032| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const EmptyStruct &
|
|
# 1032| [MoveAssignmentOperator] EmptyStruct& EmptyStruct::operator=(EmptyStruct&&)
|
|
# 1032| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] EmptyStruct &&
|
|
# 1034| [TopLevelFunction] void EmptyStructInit()
|
|
# 1034| <params>:
|
|
# 1034| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1035| getStmt(0): [DeclStmt] declaration
|
|
# 1035| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 1035| Type = [Struct] EmptyStruct
|
|
# 1035| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 1035| getExpr(): [ClassAggregateLiteral] {...}
|
|
# 1035| Type = [Struct] EmptyStruct
|
|
# 1035| ValueCategory = prvalue
|
|
# 1036| getStmt(1): [ReturnStmt] return ...
|
|
# 1038| [GlobalVariable] (lambda [] type at line 1038, col. 12) lam
|
|
# 1038| getInitializer(): [Initializer] initializer for lam
|
|
# 1038| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1038| Type = [Closure] decltype([...](...){...})
|
|
# 1038| ValueCategory = prvalue
|
|
# 1038| [CopyAssignmentOperator] (lambda [] type at line 1038, col. 12)& (lambda [] type at line 1038, col. 12)::operator=((lambda [] type at line 1038, col. 12) const&)
|
|
# 1038| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1038, col. 12 &
|
|
# 1038| [CopyConstructor] void (lambda [] type at line 1038, col. 12)::(unnamed constructor)((lambda [] type at line 1038, col. 12) const&)
|
|
# 1038| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1038, col. 12 &
|
|
# 1038| [MoveConstructor] void (lambda [] type at line 1038, col. 12)::(unnamed constructor)((lambda [] type at line 1038, col. 12)&&)
|
|
# 1038| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1038, col. 12 &&
|
|
# 1038| <initializations>:
|
|
# 1038| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1038| getStmt(0): [ReturnStmt] return ...
|
|
# 1038| [Constructor] void (lambda [] type at line 1038, col. 12)::(unnamed constructor)()
|
|
# 1038| <params>:
|
|
# 1038| [MemberFunction] void (lambda [] type at line 1038, col. 12)::_FUN()
|
|
# 1038| <params>:
|
|
# 1038| [ConstMemberFunction] void (lambda [] type at line 1038, col. 12)::operator()() const
|
|
# 1038| <params>:
|
|
# 1038| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1038| getStmt(0): [ReturnStmt] return ...
|
|
# 1038| [ConstMemberFunction,ConversionOperator] void(* (lambda [] type at line 1038, col. 12)::operator void (*)()() const)()
|
|
# 1038| <params>:
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1038| getStmt(0): [ReturnStmt] return ...
|
|
# 1038| getExpr(): [FunctionAccess] _FUN
|
|
# 1038| Type = [FunctionPointerType] ..(*)(..)
|
|
# 1038| ValueCategory = prvalue(load)
|
|
# 1040| [TopLevelFunction] void Lambda(int, String const&)
|
|
# 1040| <params>:
|
|
# 1040| getParameter(0): [Parameter] x
|
|
# 1040| Type = [IntType] int
|
|
# 1040| getParameter(1): [Parameter] s
|
|
# 1040| Type = [LValueReferenceType] const String &
|
|
# 1040| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1041| getStmt(0): [DeclStmt] declaration
|
|
# 1041| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_empty
|
|
# 1041| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1041| getVariable().getInitializer(): [Initializer] initializer for lambda_empty
|
|
# 1041| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1041| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1041| ValueCategory = prvalue
|
|
# 1042| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1042| getExpr(): [FunctionCall] call to operator()
|
|
# 1042| Type = [PlainCharType] char
|
|
# 1042| Value = [FunctionCall] 65
|
|
# 1042| ValueCategory = prvalue
|
|
# 1042| getQualifier(): [VariableAccess] lambda_empty
|
|
# 1042| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1042| ValueCategory = lvalue
|
|
# 1042| getArgument(0): [Literal] 0
|
|
# 1042| Type = [IntType] int
|
|
# 1042| Value = [Literal] 0
|
|
# 1042| ValueCategory = prvalue
|
|
# 1042| getQualifier().getFullyConverted(): [CStyleCast] (const lambda [] type at line 1041, col. 23)...
|
|
# 1042| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1042| Type = [SpecifiedType] const lambda [] type at line 1041, col. 23
|
|
# 1042| ValueCategory = lvalue
|
|
# 1042| getArgument(0).getFullyConverted(): [CStyleCast] (float)...
|
|
# 1042| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 1042| Type = [FloatType] float
|
|
# 1042| Value = [CStyleCast] 0.0
|
|
# 1042| ValueCategory = prvalue
|
|
# 1043| getStmt(2): [DeclStmt] declaration
|
|
# 1043| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_ref
|
|
# 1043| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1043| getVariable().getInitializer(): [Initializer] initializer for lambda_ref
|
|
# 1043| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1043| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1043| ValueCategory = prvalue
|
|
# 1043| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1043| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1043| ValueCategory = prvalue
|
|
# 1043| getAFieldExpr(s): [VariableAccess] s
|
|
# 1043| Type = [LValueReferenceType] const String &
|
|
# 1043| ValueCategory = prvalue(load)
|
|
# 1043| getAFieldExpr(x): [VariableAccess] x
|
|
# 1043| Type = [IntType] int
|
|
# 1043| ValueCategory = lvalue
|
|
# 1043| getAFieldExpr(s).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1043| Type = [LValueReferenceType] const String &
|
|
# 1043| ValueCategory = prvalue
|
|
# 1043| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1043| Type = [SpecifiedType] const String
|
|
# 1043| ValueCategory = lvalue
|
|
#-----| getAFieldExpr(x).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] int &
|
|
#-----| ValueCategory = prvalue
|
|
# 1044| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1044| getExpr(): [FunctionCall] call to operator()
|
|
# 1044| Type = [PlainCharType] char
|
|
# 1044| ValueCategory = prvalue
|
|
# 1044| getQualifier(): [VariableAccess] lambda_ref
|
|
# 1044| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1044| ValueCategory = lvalue
|
|
# 1044| getArgument(0): [Literal] 1
|
|
# 1044| Type = [IntType] int
|
|
# 1044| Value = [Literal] 1
|
|
# 1044| ValueCategory = prvalue
|
|
# 1044| getQualifier().getFullyConverted(): [CStyleCast] (const lambda [] type at line 1043, col. 21)...
|
|
# 1044| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1044| Type = [SpecifiedType] const lambda [] type at line 1043, col. 21
|
|
# 1044| ValueCategory = lvalue
|
|
# 1044| getArgument(0).getFullyConverted(): [CStyleCast] (float)...
|
|
# 1044| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 1044| Type = [FloatType] float
|
|
# 1044| Value = [CStyleCast] 1.0
|
|
# 1044| ValueCategory = prvalue
|
|
# 1045| getStmt(4): [DeclStmt] declaration
|
|
# 1045| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_val
|
|
# 1045| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1045| getVariable().getInitializer(): [Initializer] initializer for lambda_val
|
|
# 1045| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1045| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1045| ValueCategory = prvalue
|
|
# 1045| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1045| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1045| ValueCategory = prvalue
|
|
# 1045| getAFieldExpr(s): [ConstructorCall] call to String
|
|
# 1045| Type = [VoidType] void
|
|
# 1045| ValueCategory = prvalue
|
|
# 1045| getAFieldExpr(x): [VariableAccess] x
|
|
# 1045| Type = [IntType] int
|
|
# 1045| ValueCategory = prvalue(load)
|
|
# 1046| getStmt(5): [ExprStmt] ExprStmt
|
|
# 1046| getExpr(): [FunctionCall] call to operator()
|
|
# 1046| Type = [PlainCharType] char
|
|
# 1046| ValueCategory = prvalue
|
|
# 1046| getQualifier(): [VariableAccess] lambda_val
|
|
# 1046| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1046| ValueCategory = lvalue
|
|
# 1046| getArgument(0): [Literal] 2
|
|
# 1046| Type = [IntType] int
|
|
# 1046| Value = [Literal] 2
|
|
# 1046| ValueCategory = prvalue
|
|
# 1046| getQualifier().getFullyConverted(): [CStyleCast] (const lambda [] type at line 1045, col. 21)...
|
|
# 1046| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1046| Type = [SpecifiedType] const lambda [] type at line 1045, col. 21
|
|
# 1046| ValueCategory = lvalue
|
|
# 1046| getArgument(0).getFullyConverted(): [CStyleCast] (float)...
|
|
# 1046| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 1046| Type = [FloatType] float
|
|
# 1046| Value = [CStyleCast] 2.0
|
|
# 1046| ValueCategory = prvalue
|
|
# 1047| getStmt(6): [DeclStmt] declaration
|
|
# 1047| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_ref_explicit
|
|
# 1047| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1047| getVariable().getInitializer(): [Initializer] initializer for lambda_ref_explicit
|
|
# 1047| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1047| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1047| ValueCategory = prvalue
|
|
# 1047| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1047| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1047| ValueCategory = prvalue
|
|
# 1047| getAFieldExpr(s): [VariableAccess] s
|
|
# 1047| Type = [LValueReferenceType] const String &
|
|
# 1047| ValueCategory = prvalue(load)
|
|
# 1047| getAFieldExpr(s).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1047| Type = [LValueReferenceType] const String &
|
|
# 1047| ValueCategory = prvalue
|
|
# 1047| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1047| Type = [SpecifiedType] const String
|
|
# 1047| ValueCategory = lvalue
|
|
# 1048| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1048| getExpr(): [FunctionCall] call to operator()
|
|
# 1048| Type = [PlainCharType] char
|
|
# 1048| ValueCategory = prvalue
|
|
# 1048| getQualifier(): [VariableAccess] lambda_ref_explicit
|
|
# 1048| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1048| ValueCategory = lvalue
|
|
# 1048| getArgument(0): [Literal] 3
|
|
# 1048| Type = [IntType] int
|
|
# 1048| Value = [Literal] 3
|
|
# 1048| ValueCategory = prvalue
|
|
# 1048| getQualifier().getFullyConverted(): [CStyleCast] (const lambda [] type at line 1047, col. 30)...
|
|
# 1048| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1048| Type = [SpecifiedType] const lambda [] type at line 1047, col. 30
|
|
# 1048| ValueCategory = lvalue
|
|
# 1048| getArgument(0).getFullyConverted(): [CStyleCast] (float)...
|
|
# 1048| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 1048| Type = [FloatType] float
|
|
# 1048| Value = [CStyleCast] 3.0
|
|
# 1048| ValueCategory = prvalue
|
|
# 1049| getStmt(8): [DeclStmt] declaration
|
|
# 1049| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_val_explicit
|
|
# 1049| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1049| getVariable().getInitializer(): [Initializer] initializer for lambda_val_explicit
|
|
# 1049| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1049| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1049| ValueCategory = prvalue
|
|
# 1049| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1049| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1049| ValueCategory = prvalue
|
|
# 1049| getAFieldExpr(s): [ConstructorCall] call to String
|
|
# 1049| Type = [VoidType] void
|
|
# 1049| ValueCategory = prvalue
|
|
# 1050| getStmt(9): [ExprStmt] ExprStmt
|
|
# 1050| getExpr(): [FunctionCall] call to operator()
|
|
# 1050| Type = [PlainCharType] char
|
|
# 1050| ValueCategory = prvalue
|
|
# 1050| getQualifier(): [VariableAccess] lambda_val_explicit
|
|
# 1050| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1050| ValueCategory = lvalue
|
|
# 1050| getArgument(0): [Literal] 4
|
|
# 1050| Type = [IntType] int
|
|
# 1050| Value = [Literal] 4
|
|
# 1050| ValueCategory = prvalue
|
|
# 1050| getQualifier().getFullyConverted(): [CStyleCast] (const lambda [] type at line 1049, col. 30)...
|
|
# 1050| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1050| Type = [SpecifiedType] const lambda [] type at line 1049, col. 30
|
|
# 1050| ValueCategory = lvalue
|
|
# 1050| getArgument(0).getFullyConverted(): [CStyleCast] (float)...
|
|
# 1050| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 1050| Type = [FloatType] float
|
|
# 1050| Value = [CStyleCast] 4.0
|
|
# 1050| ValueCategory = prvalue
|
|
# 1051| getStmt(10): [DeclStmt] declaration
|
|
# 1051| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_mixed_explicit
|
|
# 1051| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1051| getVariable().getInitializer(): [Initializer] initializer for lambda_mixed_explicit
|
|
# 1051| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1051| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1051| ValueCategory = prvalue
|
|
# 1051| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1051| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1051| ValueCategory = prvalue
|
|
# 1051| getAFieldExpr(s): [VariableAccess] s
|
|
# 1051| Type = [LValueReferenceType] const String &
|
|
# 1051| ValueCategory = prvalue(load)
|
|
# 1051| getAFieldExpr(x): [VariableAccess] x
|
|
# 1051| Type = [IntType] int
|
|
# 1051| ValueCategory = prvalue(load)
|
|
# 1051| getAFieldExpr(s).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1051| Type = [LValueReferenceType] const String &
|
|
# 1051| ValueCategory = prvalue
|
|
# 1051| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1051| Type = [SpecifiedType] const String
|
|
# 1051| ValueCategory = lvalue
|
|
# 1052| getStmt(11): [ExprStmt] ExprStmt
|
|
# 1052| getExpr(): [FunctionCall] call to operator()
|
|
# 1052| Type = [PlainCharType] char
|
|
# 1052| ValueCategory = prvalue
|
|
# 1052| getQualifier(): [VariableAccess] lambda_mixed_explicit
|
|
# 1052| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1052| ValueCategory = lvalue
|
|
# 1052| getArgument(0): [Literal] 5
|
|
# 1052| Type = [IntType] int
|
|
# 1052| Value = [Literal] 5
|
|
# 1052| ValueCategory = prvalue
|
|
# 1052| getQualifier().getFullyConverted(): [CStyleCast] (const lambda [] type at line 1051, col. 32)...
|
|
# 1052| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1052| Type = [SpecifiedType] const lambda [] type at line 1051, col. 32
|
|
# 1052| ValueCategory = lvalue
|
|
# 1052| getArgument(0).getFullyConverted(): [CStyleCast] (float)...
|
|
# 1052| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 1052| Type = [FloatType] float
|
|
# 1052| Value = [CStyleCast] 5.0
|
|
# 1052| ValueCategory = prvalue
|
|
# 1053| getStmt(12): [DeclStmt] declaration
|
|
# 1053| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r
|
|
# 1053| Type = [IntType] int
|
|
# 1053| getVariable().getInitializer(): [Initializer] initializer for r
|
|
# 1053| getExpr(): [SubExpr] ... - ...
|
|
# 1053| Type = [IntType] int
|
|
# 1053| ValueCategory = prvalue
|
|
# 1053| getLeftOperand(): [VariableAccess] x
|
|
# 1053| Type = [IntType] int
|
|
# 1053| ValueCategory = prvalue(load)
|
|
# 1053| getRightOperand(): [Literal] 1
|
|
# 1053| Type = [IntType] int
|
|
# 1053| Value = [Literal] 1
|
|
# 1053| ValueCategory = prvalue
|
|
# 1054| getStmt(13): [DeclStmt] declaration
|
|
# 1054| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_inits
|
|
# 1054| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1054| getVariable().getInitializer(): [Initializer] initializer for lambda_inits
|
|
# 1054| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1054| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1054| ValueCategory = prvalue
|
|
# 1054| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1054| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1054| ValueCategory = prvalue
|
|
# 1054| getAFieldExpr(s): [VariableAccess] s
|
|
# 1054| Type = [LValueReferenceType] const String &
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getAFieldExpr(x): [VariableAccess] x
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getAFieldExpr(i): [AddExpr] ... + ...
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = prvalue
|
|
# 1054| getLeftOperand(): [VariableAccess] x
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getRightOperand(): [Literal] 1
|
|
# 1054| Type = [IntType] int
|
|
# 1054| Value = [Literal] 1
|
|
# 1054| ValueCategory = prvalue
|
|
# 1054| getAFieldExpr(j): [VariableAccess] r
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = lvalue
|
|
# 1054| getAFieldExpr(s).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1054| Type = [LValueReferenceType] const String &
|
|
# 1054| ValueCategory = prvalue
|
|
# 1054| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1054| Type = [SpecifiedType] const String
|
|
# 1054| ValueCategory = lvalue
|
|
# 1054| getAFieldExpr(j).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1054| Type = [LValueReferenceType] int &
|
|
# 1054| ValueCategory = prvalue
|
|
# 1055| getStmt(14): [ExprStmt] ExprStmt
|
|
# 1055| getExpr(): [FunctionCall] call to operator()
|
|
# 1055| Type = [PlainCharType] char
|
|
# 1055| ValueCategory = prvalue
|
|
# 1055| getQualifier(): [VariableAccess] lambda_inits
|
|
# 1055| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1055| ValueCategory = lvalue
|
|
# 1055| getArgument(0): [Literal] 6
|
|
# 1055| Type = [IntType] int
|
|
# 1055| Value = [Literal] 6
|
|
# 1055| ValueCategory = prvalue
|
|
# 1055| getQualifier().getFullyConverted(): [CStyleCast] (const lambda [] type at line 1054, col. 23)...
|
|
# 1055| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1055| Type = [SpecifiedType] const lambda [] type at line 1054, col. 23
|
|
# 1055| ValueCategory = lvalue
|
|
# 1055| getArgument(0).getFullyConverted(): [CStyleCast] (float)...
|
|
# 1055| Conversion = [IntegralToFloatingPointConversion] integral to floating point conversion
|
|
# 1055| Type = [FloatType] float
|
|
# 1055| Value = [CStyleCast] 6.0
|
|
# 1055| ValueCategory = prvalue
|
|
# 1056| getStmt(15): [ReturnStmt] return ...
|
|
# 1056| getImplicitDestructorCall(0): [DestructorCall] call to ~<unnamed>
|
|
# 1056| Type = [VoidType] void
|
|
# 1056| ValueCategory = prvalue
|
|
# 1056| getQualifier(): [VariableAccess] lambda_val_explicit
|
|
# 1056| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1056| ValueCategory = lvalue
|
|
# 1056| getImplicitDestructorCall(1): [DestructorCall] call to ~<unnamed>
|
|
# 1056| Type = [VoidType] void
|
|
# 1056| ValueCategory = prvalue
|
|
# 1056| getQualifier(): [VariableAccess] lambda_val
|
|
# 1056| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1056| ValueCategory = lvalue
|
|
# 1041| [CopyAssignmentOperator] (void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)& (void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)::operator=((void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23) const&)
|
|
# 1041| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1041, col. 23 &
|
|
# 1041| [CopyConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23) const&)
|
|
# 1041| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1041, col. 23 &
|
|
# 1041| [MoveConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)&&)
|
|
# 1041| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1041, col. 23 &&
|
|
# 1041| <initializations>:
|
|
# 1041| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1041| getStmt(0): [ReturnStmt] return ...
|
|
# 1041| [Constructor] void (void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)::(unnamed constructor)()
|
|
# 1041| <params>:
|
|
# 1041| [MemberFunction] char (void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)::_FUN(float)
|
|
# 1041| <params>:
|
|
# 1041| getParameter(0): [Parameter] f
|
|
# 1041| Type = [FloatType] float
|
|
# 1041| [ConstMemberFunction] char (void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)::operator()(float) const
|
|
# 1041| <params>:
|
|
# 1041| getParameter(0): [Parameter] f
|
|
# 1041| Type = [FloatType] float
|
|
# 1041| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1041| getStmt(0): [ReturnStmt] return ...
|
|
# 1041| getExpr(): [CharLiteral] 65
|
|
# 1041| Type = [PlainCharType] char
|
|
# 1041| Value = [CharLiteral] 65
|
|
# 1041| ValueCategory = prvalue
|
|
# 1041| [ConstMemberFunction,ConversionOperator] char(* (void Lambda(int, String const&))::(lambda [] type at line 1041, col. 23)::operator char (*)(float)() const)(float)
|
|
# 1041| <params>:
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1041| getStmt(0): [ReturnStmt] return ...
|
|
# 1041| getExpr(): [FunctionAccess] _FUN
|
|
# 1041| Type = [FunctionPointerType] ..(*)(..)
|
|
# 1041| ValueCategory = prvalue(load)
|
|
# 1043| [CopyAssignmentOperator] (void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21)& (void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21)::operator=((void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21) const&)
|
|
# 1043| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1043, col. 21 &
|
|
# 1043| [CopyConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21) const&)
|
|
# 1043| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1043, col. 21 &
|
|
# 1043| [MoveConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21)&&)
|
|
# 1043| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1043, col. 21 &&
|
|
# 1043| [Constructor] void (void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21)::(unnamed constructor)()
|
|
# 1043| <params>:
|
|
# 1043| [ConstMemberFunction] char (void Lambda(int, String const&))::(lambda [] type at line 1043, col. 21)::operator()(float) const
|
|
# 1043| <params>:
|
|
# 1043| getParameter(0): [Parameter] f
|
|
# 1043| Type = [FloatType] float
|
|
# 1043| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1043| getStmt(0): [ReturnStmt] return ...
|
|
# 1043| getExpr(): [ArrayExpr] access to array
|
|
# 1043| Type = [PlainCharType] char
|
|
# 1043| ValueCategory = prvalue(load)
|
|
# 1043| getArrayBase(): [FunctionCall] call to c_str
|
|
# 1043| Type = [PointerType] const char *
|
|
# 1043| ValueCategory = prvalue
|
|
# 1043| getQualifier(): [ImplicitThisFieldAccess,PointerFieldAccess] s
|
|
# 1043| Type = [LValueReferenceType] const String &
|
|
# 1043| ValueCategory = prvalue(load)
|
|
# 1043| getQualifier(): [ThisExpr] this
|
|
# 1043| Type = [PointerType] const lambda [] type at line 1043, col. 21 *
|
|
# 1043| ValueCategory = prvalue(load)
|
|
# 1043| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1043| Type = [SpecifiedType] const String
|
|
# 1043| ValueCategory = lvalue
|
|
# 1043| getArrayOffset(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 1043| Type = [LValueReferenceType] int &
|
|
# 1043| ValueCategory = prvalue(load)
|
|
# 1043| getQualifier(): [ThisExpr] this
|
|
# 1043| Type = [PointerType] const lambda [] type at line 1043, col. 21 *
|
|
# 1043| ValueCategory = prvalue(load)
|
|
# 1043| getArrayOffset().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1043| Type = [IntType] int
|
|
# 1043| ValueCategory = prvalue(load)
|
|
# 1045| [CopyAssignmentOperator] (void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21)& (void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21)::operator=((void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21) const&)
|
|
# 1045| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1045, col. 21 &
|
|
# 1045| [CopyConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21) const&)
|
|
# 1045| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1045, col. 21 &
|
|
# 1045| [MoveConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21)&&)
|
|
# 1045| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1045, col. 21 &&
|
|
# 1045| [Constructor] void (void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21)::(unnamed constructor)()
|
|
# 1045| <params>:
|
|
# 1045| [Destructor] void (void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21)::~<unnamed>()
|
|
# 1045| <params>:
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ReturnStmt] return ...
|
|
# 1045| <destructions>:
|
|
# 1045| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of s
|
|
# 1045| Type = [SpecifiedType] const String
|
|
# 1045| ValueCategory = prvalue
|
|
# 1045| getExpr(): [DestructorCall] call to ~String
|
|
# 1045| Type = [VoidType] void
|
|
# 1045| ValueCategory = prvalue
|
|
# 1045| getQualifier(): [ImplicitThisFieldAccess] s
|
|
# 1045| Type = [SpecifiedType] const String
|
|
# 1045| ValueCategory = lvalue
|
|
# 1045| [ConstMemberFunction] char (void Lambda(int, String const&))::(lambda [] type at line 1045, col. 21)::operator()(float) const
|
|
# 1045| <params>:
|
|
# 1045| getParameter(0): [Parameter] f
|
|
# 1045| Type = [FloatType] float
|
|
# 1045| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1045| getStmt(0): [ReturnStmt] return ...
|
|
# 1045| getExpr(): [ArrayExpr] access to array
|
|
# 1045| Type = [PlainCharType] char
|
|
# 1045| ValueCategory = prvalue(load)
|
|
# 1045| getArrayBase(): [FunctionCall] call to c_str
|
|
# 1045| Type = [PointerType] const char *
|
|
# 1045| ValueCategory = prvalue
|
|
# 1045| getQualifier(): [ImplicitThisFieldAccess,PointerFieldAccess] s
|
|
# 1045| Type = [SpecifiedType] const String
|
|
# 1045| ValueCategory = lvalue
|
|
# 1045| getQualifier(): [ThisExpr] this
|
|
# 1045| Type = [PointerType] const lambda [] type at line 1045, col. 21 *
|
|
# 1045| ValueCategory = prvalue(load)
|
|
# 1045| getArrayOffset(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 1045| Type = [IntType] int
|
|
# 1045| ValueCategory = prvalue(load)
|
|
# 1045| getQualifier(): [ThisExpr] this
|
|
# 1045| Type = [PointerType] const lambda [] type at line 1045, col. 21 *
|
|
# 1045| ValueCategory = prvalue(load)
|
|
# 1047| [CopyAssignmentOperator] (void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30)& (void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30)::operator=((void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30) const&)
|
|
# 1047| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1047, col. 30 &
|
|
# 1047| [CopyConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30) const&)
|
|
# 1047| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1047, col. 30 &
|
|
# 1047| [MoveConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30)&&)
|
|
# 1047| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1047, col. 30 &&
|
|
# 1047| [Constructor] void (void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30)::(unnamed constructor)()
|
|
# 1047| <params>:
|
|
# 1047| [ConstMemberFunction] char (void Lambda(int, String const&))::(lambda [] type at line 1047, col. 30)::operator()(float) const
|
|
# 1047| <params>:
|
|
# 1047| getParameter(0): [Parameter] f
|
|
# 1047| Type = [FloatType] float
|
|
# 1047| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1047| getStmt(0): [ReturnStmt] return ...
|
|
# 1047| getExpr(): [ArrayExpr] access to array
|
|
# 1047| Type = [PlainCharType] char
|
|
# 1047| ValueCategory = prvalue(load)
|
|
# 1047| getArrayBase(): [FunctionCall] call to c_str
|
|
# 1047| Type = [PointerType] const char *
|
|
# 1047| ValueCategory = prvalue
|
|
# 1047| getQualifier(): [ImplicitThisFieldAccess,PointerFieldAccess] s
|
|
# 1047| Type = [LValueReferenceType] const String &
|
|
# 1047| ValueCategory = prvalue(load)
|
|
# 1047| getQualifier(): [ThisExpr] this
|
|
# 1047| Type = [PointerType] const lambda [] type at line 1047, col. 30 *
|
|
# 1047| ValueCategory = prvalue(load)
|
|
# 1047| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1047| Type = [SpecifiedType] const String
|
|
# 1047| ValueCategory = lvalue
|
|
# 1047| getArrayOffset(): [Literal] 0
|
|
# 1047| Type = [IntType] int
|
|
# 1047| Value = [Literal] 0
|
|
# 1047| ValueCategory = prvalue
|
|
# 1049| [CopyAssignmentOperator] (void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30)& (void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30)::operator=((void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30) const&)
|
|
# 1049| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1049, col. 30 &
|
|
# 1049| [CopyConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30) const&)
|
|
# 1049| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1049, col. 30 &
|
|
# 1049| [MoveConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30)&&)
|
|
# 1049| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1049, col. 30 &&
|
|
# 1049| [Constructor] void (void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30)::(unnamed constructor)()
|
|
# 1049| <params>:
|
|
# 1049| [Destructor] void (void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30)::~<unnamed>()
|
|
# 1049| <params>:
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ReturnStmt] return ...
|
|
# 1049| <destructions>:
|
|
# 1049| getDestruction(0): [DestructorFieldDestruction] destructor field destruction of s
|
|
# 1049| Type = [SpecifiedType] const String
|
|
# 1049| ValueCategory = prvalue
|
|
# 1049| getExpr(): [DestructorCall] call to ~String
|
|
# 1049| Type = [VoidType] void
|
|
# 1049| ValueCategory = prvalue
|
|
# 1049| getQualifier(): [ImplicitThisFieldAccess] s
|
|
# 1049| Type = [SpecifiedType] const String
|
|
# 1049| ValueCategory = lvalue
|
|
# 1049| [ConstMemberFunction] char (void Lambda(int, String const&))::(lambda [] type at line 1049, col. 30)::operator()(float) const
|
|
# 1049| <params>:
|
|
# 1049| getParameter(0): [Parameter] f
|
|
# 1049| Type = [FloatType] float
|
|
# 1049| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1049| getStmt(0): [ReturnStmt] return ...
|
|
# 1049| getExpr(): [ArrayExpr] access to array
|
|
# 1049| Type = [PlainCharType] char
|
|
# 1049| ValueCategory = prvalue(load)
|
|
# 1049| getArrayBase(): [FunctionCall] call to c_str
|
|
# 1049| Type = [PointerType] const char *
|
|
# 1049| ValueCategory = prvalue
|
|
# 1049| getQualifier(): [ImplicitThisFieldAccess,PointerFieldAccess] s
|
|
# 1049| Type = [SpecifiedType] const String
|
|
# 1049| ValueCategory = lvalue
|
|
# 1049| getQualifier(): [ThisExpr] this
|
|
# 1049| Type = [PointerType] const lambda [] type at line 1049, col. 30 *
|
|
# 1049| ValueCategory = prvalue(load)
|
|
# 1049| getArrayOffset(): [Literal] 0
|
|
# 1049| Type = [IntType] int
|
|
# 1049| Value = [Literal] 0
|
|
# 1049| ValueCategory = prvalue
|
|
# 1051| [CopyAssignmentOperator] (void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32)& (void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32)::operator=((void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32) const&)
|
|
# 1051| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1051, col. 32 &
|
|
# 1051| [CopyConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32) const&)
|
|
# 1051| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1051, col. 32 &
|
|
# 1051| [MoveConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32)&&)
|
|
# 1051| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1051, col. 32 &&
|
|
# 1051| [Constructor] void (void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32)::(unnamed constructor)()
|
|
# 1051| <params>:
|
|
# 1051| [ConstMemberFunction] char (void Lambda(int, String const&))::(lambda [] type at line 1051, col. 32)::operator()(float) const
|
|
# 1051| <params>:
|
|
# 1051| getParameter(0): [Parameter] f
|
|
# 1051| Type = [FloatType] float
|
|
# 1051| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1051| getStmt(0): [ReturnStmt] return ...
|
|
# 1051| getExpr(): [ArrayExpr] access to array
|
|
# 1051| Type = [PlainCharType] char
|
|
# 1051| ValueCategory = prvalue(load)
|
|
# 1051| getArrayBase(): [FunctionCall] call to c_str
|
|
# 1051| Type = [PointerType] const char *
|
|
# 1051| ValueCategory = prvalue
|
|
# 1051| getQualifier(): [ImplicitThisFieldAccess,PointerFieldAccess] s
|
|
# 1051| Type = [LValueReferenceType] const String &
|
|
# 1051| ValueCategory = prvalue(load)
|
|
# 1051| getQualifier(): [ThisExpr] this
|
|
# 1051| Type = [PointerType] const lambda [] type at line 1051, col. 32 *
|
|
# 1051| ValueCategory = prvalue(load)
|
|
# 1051| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1051| Type = [SpecifiedType] const String
|
|
# 1051| ValueCategory = lvalue
|
|
# 1051| getArrayOffset(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 1051| Type = [IntType] int
|
|
# 1051| ValueCategory = prvalue(load)
|
|
# 1051| getQualifier(): [ThisExpr] this
|
|
# 1051| Type = [PointerType] const lambda [] type at line 1051, col. 32 *
|
|
# 1051| ValueCategory = prvalue(load)
|
|
# 1054| [CopyAssignmentOperator] (void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23)& (void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23)::operator=((void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23) const&)
|
|
# 1054| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1054, col. 23 &
|
|
# 1054| [CopyConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23) const&)
|
|
# 1054| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1054, col. 23 &
|
|
# 1054| [MoveConstructor] void (void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23)::(unnamed constructor)((void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23)&&)
|
|
# 1054| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1054, col. 23 &&
|
|
# 1054| [Constructor] void (void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23)::(unnamed constructor)()
|
|
# 1054| <params>:
|
|
# 1054| [ConstMemberFunction] char (void Lambda(int, String const&))::(lambda [] type at line 1054, col. 23)::operator()(float) const
|
|
# 1054| <params>:
|
|
# 1054| getParameter(0): [Parameter] f
|
|
# 1054| Type = [FloatType] float
|
|
# 1054| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1054| getStmt(0): [ReturnStmt] return ...
|
|
# 1054| getExpr(): [ArrayExpr] access to array
|
|
# 1054| Type = [PlainCharType] char
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getArrayBase(): [FunctionCall] call to c_str
|
|
# 1054| Type = [PointerType] const char *
|
|
# 1054| ValueCategory = prvalue
|
|
# 1054| getQualifier(): [ImplicitThisFieldAccess,PointerFieldAccess] s
|
|
# 1054| Type = [LValueReferenceType] const String &
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getQualifier(): [ThisExpr] this
|
|
# 1054| Type = [PointerType] const lambda [] type at line 1054, col. 23 *
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1054| Type = [SpecifiedType] const String
|
|
# 1054| ValueCategory = lvalue
|
|
# 1054| getArrayOffset(): [SubExpr] ... - ...
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = prvalue
|
|
# 1054| getLeftOperand(): [AddExpr] ... + ...
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = prvalue
|
|
# 1054| getLeftOperand(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getQualifier(): [ThisExpr] this
|
|
# 1054| Type = [PointerType] const lambda [] type at line 1054, col. 23 *
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getRightOperand(): [PointerFieldAccess] i
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getQualifier(): [ThisExpr] this
|
|
# 1054| Type = [PointerType] const lambda [] type at line 1054, col. 23 *
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getRightOperand(): [PointerFieldAccess] j
|
|
# 1054| Type = [LValueReferenceType] int &
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getQualifier(): [ThisExpr] this
|
|
# 1054| Type = [PointerType] const lambda [] type at line 1054, col. 23 *
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1054| getRightOperand().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1054| Type = [IntType] int
|
|
# 1054| ValueCategory = prvalue(load)
|
|
# 1078| [CopyAssignmentOperator] std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&>& std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&>::operator=(std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&> const&)
|
|
# 1078| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &> &
|
|
# 1078| [CopyAssignmentOperator] std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&>& std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&>::operator=(std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&> const&)
|
|
# 1078| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &> &
|
|
# 1078| [CopyAssignmentOperator] std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&>& std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&>::operator=(std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&> const&)
|
|
# 1078| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &> &
|
|
# 1078| [CopyAssignmentOperator] std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&>& std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&>::operator=(std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&> const&)
|
|
# 1078| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &> &
|
|
# 1081| [Constructor] void std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::iterator()
|
|
# 1081| <params>:
|
|
# 1082| [Constructor] void std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::iterator(std::iterator<Category, type, std::ptrdiff_t, type*, type&> const&)
|
|
# 1082| <params>:
|
|
# 1082| getParameter(0): [Parameter] other
|
|
# 1082| Type = [LValueReferenceType] const iterator<Category, type, ptrdiff_t, type *, type &> &
|
|
# 1082| [CopyConstructor] void std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&>::iterator(std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&> const&)
|
|
# 1082| <params>:
|
|
# 1082| getParameter(0): [Parameter] other
|
|
# 1082| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &> &
|
|
# 1082| [CopyConstructor] void std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&>::iterator(std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&> const&)
|
|
# 1082| <params>:
|
|
# 1082| getParameter(0): [Parameter] other
|
|
# 1082| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &> &
|
|
# 1082| [CopyConstructor] void std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&>::iterator(std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&> const&)
|
|
# 1082| <params>:
|
|
# 1082| getParameter(0): [Parameter] other
|
|
# 1082| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &> &
|
|
# 1082| [CopyConstructor] void std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&>::iterator(std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&> const&)
|
|
# 1082| <params>:
|
|
# 1082| getParameter(0): [Parameter] other
|
|
# 1082| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &> &
|
|
# 1084| [MemberFunction] std::iterator<Category, value_type, difference_type, pointer_type, reference_type>& std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator++()
|
|
# 1084| <params>:
|
|
# 1084| [MemberFunction] std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&>& std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&>::operator++()
|
|
# 1084| <params>:
|
|
# 1084| [MemberFunction] std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&>& std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&>::operator++()
|
|
# 1084| <params>:
|
|
# 1084| [MemberFunction] std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&>& std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&>::operator++()
|
|
# 1084| <params>:
|
|
# 1084| [MemberFunction] std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&>& std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&>::operator++()
|
|
# 1084| <params>:
|
|
# 1085| [MemberFunction] std::iterator<Category, value_type, difference_type, pointer_type, reference_type> std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator++(int)
|
|
# 1085| <params>:
|
|
# 1085| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1085| Type = [IntType] int
|
|
# 1086| [MemberFunction] std::iterator<Category, value_type, difference_type, pointer_type, reference_type>& std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator--()
|
|
# 1086| <params>:
|
|
# 1087| [MemberFunction] std::iterator<Category, value_type, difference_type, pointer_type, reference_type> std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator--(int)
|
|
# 1087| <params>:
|
|
# 1087| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1087| Type = [IntType] int
|
|
# 1088| [ConstMemberFunction] bool std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator==(std::iterator<Category, value_type, difference_type, pointer_type, reference_type>) const
|
|
# 1088| <params>:
|
|
# 1088| getParameter(0): [Parameter] other
|
|
# 1088| Type = [TemplateClass] iterator<Category, value_type, difference_type, pointer_type, reference_type>
|
|
# 1089| [ConstMemberFunction] bool std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator!=(std::iterator<Category, value_type, difference_type, pointer_type, reference_type>) const
|
|
# 1089| <params>:
|
|
# 1089| getParameter(0): [Parameter] other
|
|
# 1089| Type = [TemplateClass] iterator<Category, value_type, difference_type, pointer_type, reference_type>
|
|
# 1089| [ConstMemberFunction] bool std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&>::operator!=(std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&>) const
|
|
# 1089| <params>:
|
|
# 1089| getParameter(0): [Parameter] other
|
|
# 1089| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
# 1089| [ConstMemberFunction] bool std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&>::operator!=(std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&>) const
|
|
# 1089| <params>:
|
|
# 1089| getParameter(0): [Parameter] other
|
|
# 1089| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>
|
|
# 1089| [ConstMemberFunction] bool std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&>::operator!=(std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&>) const
|
|
# 1089| <params>:
|
|
# 1089| getParameter(0): [Parameter] other
|
|
# 1089| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>
|
|
# 1089| [ConstMemberFunction] bool std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&>::operator!=(std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&>) const
|
|
# 1089| <params>:
|
|
# 1089| getParameter(0): [Parameter] other
|
|
# 1089| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
# 1090| [ConstMemberFunction] ClassWithDestructor& std::iterator<std::random_access_iterator_tag, ClassWithDestructor, std::ptrdiff_t, ClassWithDestructor*, ClassWithDestructor&>::operator*() const
|
|
# 1090| <params>:
|
|
# 1090| [ConstMemberFunction] String& std::iterator<std::random_access_iterator_tag, String, std::ptrdiff_t, String*, String&>::operator*() const
|
|
# 1090| <params>:
|
|
# 1090| [ConstMemberFunction] char& std::iterator<std::random_access_iterator_tag, char, std::ptrdiff_t, char*, char&>::operator*() const
|
|
# 1090| <params>:
|
|
# 1090| [ConstMemberFunction] int& std::iterator<std::random_access_iterator_tag, int, std::ptrdiff_t, int*, int&>::operator*() const
|
|
# 1090| <params>:
|
|
# 1090| [ConstMemberFunction] reference_type std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator*() const
|
|
# 1090| <params>:
|
|
# 1091| [ConstMemberFunction] pointer_type std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator->() const
|
|
# 1091| <params>:
|
|
# 1092| [MemberFunction] std::iterator<Category, value_type, difference_type, pointer_type, reference_type> std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator+(int)
|
|
# 1092| <params>:
|
|
# 1092| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1092| Type = [IntType] int
|
|
# 1093| [MemberFunction] std::iterator<Category, value_type, difference_type, pointer_type, reference_type> std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator-(int)
|
|
# 1093| <params>:
|
|
# 1093| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1093| Type = [IntType] int
|
|
# 1094| [MemberFunction] std::iterator<Category, value_type, difference_type, pointer_type, reference_type>& std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator+=(int)
|
|
# 1094| <params>:
|
|
# 1094| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1094| Type = [IntType] int
|
|
# 1095| [MemberFunction] std::iterator<Category, value_type, difference_type, pointer_type, reference_type>& std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator-=(int)
|
|
# 1095| <params>:
|
|
# 1095| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1095| Type = [IntType] int
|
|
# 1096| [MemberFunction] int std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator-(std::iterator<Category, value_type, difference_type, pointer_type, reference_type>)
|
|
# 1096| <params>:
|
|
# 1096| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1096| Type = [TemplateClass] iterator<Category, value_type, difference_type, pointer_type, reference_type>
|
|
# 1097| [MemberFunction] reference_type std::iterator<Category, value_type, difference_type, pointer_type, reference_type>::operator[](int)
|
|
# 1097| <params>:
|
|
# 1097| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1097| Type = [IntType] int
|
|
# 1100| [CopyAssignmentOperator] std::input_iterator_tag& std::input_iterator_tag::operator=(std::input_iterator_tag const&)
|
|
# 1100| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const input_iterator_tag &
|
|
# 1100| [MoveAssignmentOperator] std::input_iterator_tag& std::input_iterator_tag::operator=(std::input_iterator_tag&&)
|
|
# 1100| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] input_iterator_tag &&
|
|
# 1101| [CopyAssignmentOperator] std::forward_iterator_tag& std::forward_iterator_tag::operator=(std::forward_iterator_tag const&)
|
|
# 1101| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const forward_iterator_tag &
|
|
# 1101| [MoveAssignmentOperator] std::forward_iterator_tag& std::forward_iterator_tag::operator=(std::forward_iterator_tag&&)
|
|
# 1101| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] forward_iterator_tag &&
|
|
# 1101| [Constructor] void std::forward_iterator_tag::forward_iterator_tag()
|
|
# 1101| <params>:
|
|
# 1102| [CopyAssignmentOperator] std::bidirectional_iterator_tag& std::bidirectional_iterator_tag::operator=(std::bidirectional_iterator_tag const&)
|
|
# 1102| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const bidirectional_iterator_tag &
|
|
# 1102| [MoveAssignmentOperator] std::bidirectional_iterator_tag& std::bidirectional_iterator_tag::operator=(std::bidirectional_iterator_tag&&)
|
|
# 1102| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] bidirectional_iterator_tag &&
|
|
# 1102| [Constructor] void std::bidirectional_iterator_tag::bidirectional_iterator_tag()
|
|
# 1102| <params>:
|
|
# 1103| [CopyAssignmentOperator] std::random_access_iterator_tag& std::random_access_iterator_tag::operator=(std::random_access_iterator_tag const&)
|
|
# 1103| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const random_access_iterator_tag &
|
|
# 1103| [MoveAssignmentOperator] std::random_access_iterator_tag& std::random_access_iterator_tag::operator=(std::random_access_iterator_tag&&)
|
|
# 1103| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] random_access_iterator_tag &&
|
|
# 1103| [Constructor] void std::random_access_iterator_tag::random_access_iterator_tag()
|
|
# 1103| <params>:
|
|
# 1105| [CopyAssignmentOperator] std::output_iterator_tag& std::output_iterator_tag::operator=(std::output_iterator_tag const&)
|
|
# 1105| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const output_iterator_tag &
|
|
# 1105| [MoveAssignmentOperator] std::output_iterator_tag& std::output_iterator_tag::operator=(std::output_iterator_tag&&)
|
|
# 1105| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] output_iterator_tag &&
|
|
# 1108| [CopyAssignmentOperator] std::vector<ClassWithDestructor>& std::vector<ClassWithDestructor>::operator=(std::vector<ClassWithDestructor> const&)
|
|
# 1108| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const vector<ClassWithDestructor> &
|
|
# 1108| [CopyAssignmentOperator] std::vector<String>& std::vector<String>::operator=(std::vector<String> const&)
|
|
# 1108| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const vector<String> &
|
|
# 1108| [CopyAssignmentOperator] std::vector<char>& std::vector<char>::operator=(std::vector<char> const&)
|
|
# 1108| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const vector<char> &
|
|
# 1108| [CopyAssignmentOperator] std::vector<int>& std::vector<int>::operator=(std::vector<int> const&)
|
|
# 1108| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const vector<int> &
|
|
# 1108| [CopyConstructor] void std::vector<ClassWithDestructor>::vector(std::vector<ClassWithDestructor> const&)
|
|
# 1108| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const vector<ClassWithDestructor> &
|
|
# 1108| [CopyConstructor] void std::vector<String>::vector(std::vector<String> const&)
|
|
# 1108| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const vector<String> &
|
|
# 1108| [CopyConstructor] void std::vector<char>::vector(std::vector<char> const&)
|
|
# 1108| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const vector<char> &
|
|
# 1108| [CopyConstructor] void std::vector<int>::vector(std::vector<int> const&)
|
|
# 1108| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const vector<int> &
|
|
# 1109| [Constructor] void std::vector<ClassWithDestructor>::vector(ClassWithDestructor)
|
|
# 1109| <params>:
|
|
# 1109| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1109| Type = [Class] ClassWithDestructor
|
|
# 1109| [Constructor] void std::vector<String>::vector(String)
|
|
# 1109| <params>:
|
|
# 1109| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1109| Type = [Struct] String
|
|
# 1109| [Constructor] void std::vector<T>::vector(T)
|
|
# 1109| <params>:
|
|
# 1109| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1109| Type = [TemplateParameter] T
|
|
# 1109| [Constructor] void std::vector<char>::vector(char)
|
|
# 1109| <params>:
|
|
# 1109| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1109| Type = [PlainCharType] char
|
|
# 1109| [Constructor] void std::vector<int>::vector(int)
|
|
# 1109| <params>:
|
|
# 1109| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1109| Type = [IntType] int
|
|
# 1110| [Destructor] void std::vector<ClassWithDestructor>::~vector()
|
|
# 1110| <params>:
|
|
# 1110| [Destructor] void std::vector<T>::~vector()
|
|
# 1110| <params>:
|
|
# 1110| [Destructor] void std::vector<int>::~vector()
|
|
# 1110| <params>:
|
|
# 1115| [ConstMemberFunction] std::vector<ClassWithDestructor>::iterator std::vector<ClassWithDestructor>::begin() const
|
|
# 1115| <params>:
|
|
# 1115| [ConstMemberFunction] std::vector<String>::iterator std::vector<String>::begin() const
|
|
# 1115| <params>:
|
|
# 1115| [ConstMemberFunction] std::vector<T>::iterator std::vector<T>::begin() const
|
|
# 1115| <params>:
|
|
# 1115| [ConstMemberFunction] std::vector<char>::iterator std::vector<char>::begin() const
|
|
# 1115| <params>:
|
|
# 1115| [ConstMemberFunction] std::vector<int>::iterator std::vector<int>::begin() const
|
|
# 1115| <params>:
|
|
# 1116| [ConstMemberFunction] std::vector<ClassWithDestructor>::iterator std::vector<ClassWithDestructor>::end() const
|
|
# 1116| <params>:
|
|
# 1116| [ConstMemberFunction] std::vector<String>::iterator std::vector<String>::end() const
|
|
# 1116| <params>:
|
|
# 1116| [ConstMemberFunction] std::vector<T>::iterator std::vector<T>::end() const
|
|
# 1116| <params>:
|
|
# 1116| [ConstMemberFunction] std::vector<char>::iterator std::vector<char>::end() const
|
|
# 1116| <params>:
|
|
# 1116| [ConstMemberFunction] std::vector<int>::iterator std::vector<int>::end() const
|
|
# 1116| <params>:
|
|
# 1120| [Operator,TemplateFunction,TopLevelFunction] bool std::operator==<T>(iterator, iterator)
|
|
# 1120| <params>:
|
|
# 1120| getParameter(0): [Parameter] left
|
|
# 1120| Type = [TemplateParameter] iterator
|
|
# 1120| getParameter(1): [Parameter] right
|
|
# 1120| Type = [TemplateParameter] iterator
|
|
# 1122| [Operator,TemplateFunction,TopLevelFunction] bool std::operator!=<T>(iterator, iterator)
|
|
# 1122| <params>:
|
|
# 1122| getParameter(0): [Parameter] left
|
|
# 1122| Type = [TemplateParameter] iterator
|
|
# 1122| getParameter(1): [Parameter] right
|
|
# 1122| Type = [TemplateParameter] iterator
|
|
# 1126| [TopLevelFunction] void RangeBasedFor(std::vector<int> const&)
|
|
# 1126| <params>:
|
|
# 1126| getParameter(0): [Parameter] v
|
|
# 1126| Type = [LValueReferenceType] const vector<int> &
|
|
# 1126| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1127| getStmt(0): [RangeBasedForStmt] for(...:...) ...
|
|
# 1127| getChild(1): [DeclStmt] declaration
|
|
# 1127| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__range)
|
|
# 1127| Type = [LValueReferenceType] const vector<int> &
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__range)
|
|
# 1127| getExpr(): [VariableAccess] v
|
|
# 1127| Type = [LValueReferenceType] const vector<int> &
|
|
# 1127| ValueCategory = prvalue(load)
|
|
# 1127| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1127| Type = [LValueReferenceType] const vector<int> &
|
|
# 1127| ValueCategory = prvalue
|
|
# 1127| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1127| Type = [SpecifiedType] const vector<int>
|
|
# 1127| ValueCategory = lvalue
|
|
# 1127| getBeginEndDeclaration(): [DeclStmt] declaration
|
|
# 1127| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__begin)
|
|
# 1127| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__begin)
|
|
# 1127| getExpr(): [FunctionCall] call to begin
|
|
# 1127| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1127| ValueCategory = prvalue
|
|
# 1127| getQualifier(): [VariableAccess] (__range)
|
|
# 1127| Type = [LValueReferenceType] const vector<int> &
|
|
# 1127| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const vector<int>
|
|
#-----| ValueCategory = lvalue
|
|
# 1127| getDeclarationEntry(1): [VariableDeclarationEntry] declaration of (__end)
|
|
# 1127| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__end)
|
|
# 1127| getExpr(): [FunctionCall] call to end
|
|
# 1127| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1127| ValueCategory = prvalue
|
|
# 1127| getQualifier(): [VariableAccess] (__range)
|
|
# 1127| Type = [LValueReferenceType] const vector<int> &
|
|
# 1127| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const vector<int>
|
|
#-----| ValueCategory = lvalue
|
|
# 1127| getCondition(): [FunctionCall] call to operator!=
|
|
# 1127| Type = [BoolType] bool
|
|
# 1127| ValueCategory = prvalue
|
|
# 1127| getQualifier(): [VariableAccess] (__begin)
|
|
# 1127| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1127| ValueCategory = lvalue
|
|
# 1127| getArgument(0): [ConstructorCall] call to iterator
|
|
# 1127| Type = [VoidType] void
|
|
# 1127| ValueCategory = prvalue
|
|
# 1127| getArgument(0): [VariableAccess] (__end)
|
|
# 1127| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1127| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &> &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
# 1127| getUpdate(): [FunctionCall] call to operator++
|
|
# 1127| Type = [LValueReferenceType] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &> &
|
|
# 1127| ValueCategory = prvalue
|
|
# 1127| getQualifier(): [VariableAccess] (__begin)
|
|
# 1127| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1127| ValueCategory = lvalue
|
|
# 1127| getChild(5): [DeclStmt] declaration
|
|
# 1127| getDeclarationEntry(0): [VariableDeclarationEntry] definition of e
|
|
# 1127| Type = [IntType] int
|
|
# 1127| getVariable().getInitializer(): [Initializer] initializer for e
|
|
# 1127| getExpr(): [OverloadedPointerDereferenceExpr] call to operator*
|
|
# 1127| Type = [LValueReferenceType] int &
|
|
# 1127| ValueCategory = prvalue
|
|
# 1127| getQualifier(): [VariableAccess] (__begin)
|
|
# 1127| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1127| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
# 1127| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1127| Type = [IntType] int
|
|
# 1127| ValueCategory = prvalue(load)
|
|
# 1127| getStmt(): [BlockStmt] { ... }
|
|
# 1128| getStmt(0): [IfStmt] if (...) ...
|
|
# 1128| getCondition(): [GTExpr] ... > ...
|
|
# 1128| Type = [BoolType] bool
|
|
# 1128| ValueCategory = prvalue
|
|
# 1128| getGreaterOperand(): [VariableAccess] e
|
|
# 1128| Type = [IntType] int
|
|
# 1128| ValueCategory = prvalue(load)
|
|
# 1128| getLesserOperand(): [Literal] 0
|
|
# 1128| Type = [IntType] int
|
|
# 1128| Value = [Literal] 0
|
|
# 1128| ValueCategory = prvalue
|
|
# 1128| getThen(): [BlockStmt] { ... }
|
|
# 1129| getStmt(0): [ContinueStmt] continue;
|
|
# 1127| getStmt(1): [LabelStmt] label ...:
|
|
# 1127| getUpdate().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1127| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
# 1127| ValueCategory = lvalue
|
|
# 1133| getStmt(1): [RangeBasedForStmt] for(...:...) ...
|
|
# 1133| getChild(1): [DeclStmt] declaration
|
|
# 1133| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__range)
|
|
# 1133| Type = [LValueReferenceType] const vector<int> &
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__range)
|
|
# 1133| getExpr(): [VariableAccess] v
|
|
# 1133| Type = [LValueReferenceType] const vector<int> &
|
|
# 1133| ValueCategory = prvalue(load)
|
|
# 1133| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1133| Type = [LValueReferenceType] const vector<int> &
|
|
# 1133| ValueCategory = prvalue
|
|
# 1133| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1133| Type = [SpecifiedType] const vector<int>
|
|
# 1133| ValueCategory = lvalue
|
|
# 1133| getBeginEndDeclaration(): [DeclStmt] declaration
|
|
# 1133| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__begin)
|
|
# 1133| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__begin)
|
|
# 1133| getExpr(): [FunctionCall] call to begin
|
|
# 1133| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1133| ValueCategory = prvalue
|
|
# 1133| getQualifier(): [VariableAccess] (__range)
|
|
# 1133| Type = [LValueReferenceType] const vector<int> &
|
|
# 1133| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const vector<int>
|
|
#-----| ValueCategory = lvalue
|
|
# 1133| getDeclarationEntry(1): [VariableDeclarationEntry] declaration of (__end)
|
|
# 1133| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__end)
|
|
# 1133| getExpr(): [FunctionCall] call to end
|
|
# 1133| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1133| ValueCategory = prvalue
|
|
# 1133| getQualifier(): [VariableAccess] (__range)
|
|
# 1133| Type = [LValueReferenceType] const vector<int> &
|
|
# 1133| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const vector<int>
|
|
#-----| ValueCategory = lvalue
|
|
# 1133| getCondition(): [FunctionCall] call to operator!=
|
|
# 1133| Type = [BoolType] bool
|
|
# 1133| ValueCategory = prvalue
|
|
# 1133| getQualifier(): [VariableAccess] (__begin)
|
|
# 1133| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1133| ValueCategory = lvalue
|
|
# 1133| getArgument(0): [ConstructorCall] call to iterator
|
|
# 1133| Type = [VoidType] void
|
|
# 1133| ValueCategory = prvalue
|
|
# 1133| getArgument(0): [VariableAccess] (__end)
|
|
# 1133| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1133| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &> &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
# 1133| getUpdate(): [FunctionCall] call to operator++
|
|
# 1133| Type = [LValueReferenceType] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &> &
|
|
# 1133| ValueCategory = prvalue
|
|
# 1133| getQualifier(): [VariableAccess] (__begin)
|
|
# 1133| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1133| ValueCategory = lvalue
|
|
# 1133| getChild(5): [DeclStmt] declaration
|
|
# 1133| getDeclarationEntry(0): [VariableDeclarationEntry] definition of e
|
|
# 1133| Type = [LValueReferenceType] const int &
|
|
# 1133| getVariable().getInitializer(): [Initializer] initializer for e
|
|
# 1133| getExpr(): [OverloadedPointerDereferenceExpr] call to operator*
|
|
# 1133| Type = [LValueReferenceType] int &
|
|
# 1133| ValueCategory = prvalue
|
|
# 1133| getQualifier(): [VariableAccess] (__begin)
|
|
# 1133| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 1133| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
# 1133| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1133| Type = [LValueReferenceType] const int &
|
|
# 1133| ValueCategory = prvalue
|
|
# 1133| getExpr(): [CStyleCast] (const int)...
|
|
# 1133| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1133| Type = [SpecifiedType] const int
|
|
# 1133| ValueCategory = lvalue
|
|
# 1133| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1133| Type = [IntType] int
|
|
# 1133| ValueCategory = lvalue
|
|
# 1133| getStmt(): [BlockStmt] { ... }
|
|
# 1134| getStmt(0): [IfStmt] if (...) ...
|
|
# 1134| getCondition(): [LTExpr] ... < ...
|
|
# 1134| Type = [BoolType] bool
|
|
# 1134| ValueCategory = prvalue
|
|
# 1134| getLesserOperand(): [VariableAccess] e
|
|
# 1134| Type = [LValueReferenceType] const int &
|
|
# 1134| ValueCategory = prvalue(load)
|
|
# 1134| getGreaterOperand(): [Literal] 5
|
|
# 1134| Type = [IntType] int
|
|
# 1134| Value = [Literal] 5
|
|
# 1134| ValueCategory = prvalue
|
|
# 1134| getLesserOperand().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1134| Type = [IntType] int
|
|
# 1134| ValueCategory = prvalue(load)
|
|
# 1134| getThen(): [BlockStmt] { ... }
|
|
# 1135| getStmt(0): [BreakStmt] break;
|
|
# 1133| getUpdate().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1133| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
# 1133| ValueCategory = lvalue
|
|
# 1137| getStmt(2): [LabelStmt] label ...:
|
|
# 1138| getStmt(3): [ReturnStmt] return ...
|
|
# 1157| [TopLevelFunction] int AsmStmt(int)
|
|
# 1157| <params>:
|
|
# 1157| getParameter(0): [Parameter] x
|
|
# 1157| Type = [IntType] int
|
|
# 1157| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1158| getStmt(0): [AsmStmt] asm statement
|
|
# 1159| getStmt(1): [ReturnStmt] return ...
|
|
# 1159| getExpr(): [VariableAccess] x
|
|
# 1159| Type = [IntType] int
|
|
# 1159| ValueCategory = prvalue(load)
|
|
# 1162| [TopLevelFunction] void AsmStmtWithOutputs(unsigned int&, unsigned int, unsigned int&, unsigned int)
|
|
# 1162| <params>:
|
|
# 1162| getParameter(0): [Parameter] a
|
|
# 1162| Type = [LValueReferenceType] unsigned int &
|
|
# 1162| getParameter(1): [Parameter] b
|
|
# 1162| Type = [IntType] unsigned int
|
|
# 1162| getParameter(2): [Parameter] c
|
|
# 1162| Type = [LValueReferenceType] unsigned int &
|
|
# 1162| getParameter(3): [Parameter] d
|
|
# 1162| Type = [IntType] unsigned int
|
|
# 1163| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1164| getStmt(0): [AsmStmt] asm statement
|
|
# 1167| getChild(0): [VariableAccess] a
|
|
# 1167| Type = [LValueReferenceType] unsigned int &
|
|
# 1167| ValueCategory = prvalue(load)
|
|
# 1167| getChild(1): [VariableAccess] b
|
|
# 1167| Type = [IntType] unsigned int
|
|
# 1167| ValueCategory = lvalue
|
|
# 1167| getChild(2): [VariableAccess] c
|
|
# 1167| Type = [LValueReferenceType] unsigned int &
|
|
# 1167| ValueCategory = prvalue(load)
|
|
# 1167| getChild(3): [VariableAccess] d
|
|
# 1167| Type = [IntType] unsigned int
|
|
# 1167| ValueCategory = prvalue(load)
|
|
# 1167| getChild(0).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1167| Type = [IntType] unsigned int
|
|
# 1167| ValueCategory = lvalue
|
|
# 1167| getChild(2).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1167| Type = [IntType] unsigned int
|
|
# 1167| ValueCategory = prvalue(load)
|
|
# 1169| getStmt(1): [ReturnStmt] return ...
|
|
# 1171| [TopLevelFunction] void ExternDeclarations()
|
|
# 1171| <params>:
|
|
# 1172| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1173| getStmt(0): [DeclStmt] declaration
|
|
# 1173| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of g
|
|
# 1173| Type = [IntType] int
|
|
# 1174| getStmt(1): [DeclStmt] declaration
|
|
# 1174| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1174| Type = [IntType] int
|
|
# 1175| getStmt(2): [DeclStmt] declaration
|
|
# 1175| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1175| Type = [IntType] int
|
|
# 1175| getDeclarationEntry(1): [FunctionDeclarationEntry] declaration of f
|
|
# 1175| Type = [IntType] int
|
|
# 1176| getStmt(3): [DeclStmt] declaration
|
|
# 1176| getDeclarationEntry(0): [FunctionDeclarationEntry] declaration of z
|
|
# 1176| Type = [IntType] int
|
|
# 1176| getDeclarationEntry(1): [FunctionDeclarationEntry] declaration of w
|
|
# 1176| Type = [IntType] int
|
|
# 1176| getDeclarationEntry(2): [VariableDeclarationEntry] definition of h
|
|
# 1176| Type = [IntType] int
|
|
# 1177| getStmt(4): [DeclStmt] declaration
|
|
# 1177| getDeclarationEntry(0): [TypeDeclarationEntry] declaration of d
|
|
# 1177| Type = [CTypedefType,LocalTypedefType] d
|
|
# 1178| getStmt(5): [ReturnStmt] return ...
|
|
# 1175| [TopLevelFunction] int f(float)
|
|
# 1175| <params>:
|
|
# 1175| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1175| Type = [FloatType] float
|
|
# 1176| [TopLevelFunction] int z(float)
|
|
# 1176| <params>:
|
|
# 1176| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1176| Type = [FloatType] float
|
|
# 1176| [TopLevelFunction] int w(float)
|
|
# 1176| <params>:
|
|
# 1176| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1176| Type = [FloatType] float
|
|
# 1186| [TopLevelFunction] void ExternDeclarationsInMacro()
|
|
# 1186| <params>:
|
|
# 1187| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1188| getStmt(0): [DeclStmt] declaration
|
|
# 1188| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of g
|
|
# 1188| Type = [IntType] int
|
|
# 1188| getStmt(1): [ForStmt] for(...;...;...) ...
|
|
# 1188| getInitialization(): [DeclStmt] declaration
|
|
# 1188| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 1188| Type = [IntType] int
|
|
# 1188| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 1188| getExpr(): [Literal] 0
|
|
# 1188| Type = [IntType] int
|
|
# 1188| Value = [Literal] 0
|
|
# 1188| ValueCategory = prvalue
|
|
# 1188| getCondition(): [LTExpr] ... < ...
|
|
# 1188| Type = [BoolType] bool
|
|
# 1188| ValueCategory = prvalue
|
|
# 1188| getLesserOperand(): [VariableAccess] i
|
|
# 1188| Type = [IntType] int
|
|
# 1188| ValueCategory = prvalue(load)
|
|
# 1188| getGreaterOperand(): [Literal] 10
|
|
# 1188| Type = [IntType] int
|
|
# 1188| Value = [Literal] 10
|
|
# 1188| ValueCategory = prvalue
|
|
# 1188| getUpdate(): [PrefixIncrExpr] ++ ...
|
|
# 1188| Type = [IntType] int
|
|
# 1188| ValueCategory = lvalue
|
|
# 1188| getOperand(): [VariableAccess] i
|
|
# 1188| Type = [IntType] int
|
|
# 1188| ValueCategory = lvalue
|
|
# 1188| getStmt(): [BlockStmt] { ... }
|
|
# 1188| getStmt(0): [DeclStmt] declaration
|
|
# 1188| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of g
|
|
# 1188| Type = [IntType] int
|
|
# 1188| getStmt(2): [EmptyStmt] ;
|
|
# 1189| getStmt(3): [ReturnStmt] return ...
|
|
# 1191| [TopLevelFunction] void TryCatchNoCatchAny(bool)
|
|
# 1191| <params>:
|
|
# 1191| getParameter(0): [Parameter] b
|
|
# 1191| Type = [BoolType] bool
|
|
# 1191| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1192| getStmt(0): [TryStmt] try { ... }
|
|
# 1192| getStmt(): [BlockStmt] { ... }
|
|
# 1193| getStmt(0): [DeclStmt] declaration
|
|
# 1193| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1193| Type = [IntType] int
|
|
# 1193| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 1193| getExpr(): [Literal] 5
|
|
# 1193| Type = [IntType] int
|
|
# 1193| Value = [Literal] 5
|
|
# 1193| ValueCategory = prvalue
|
|
# 1194| getStmt(1): [IfStmt] if (...) ...
|
|
# 1194| getCondition(): [VariableAccess] b
|
|
# 1194| Type = [BoolType] bool
|
|
# 1194| ValueCategory = prvalue(load)
|
|
# 1194| getThen(): [BlockStmt] { ... }
|
|
# 1195| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1195| getExpr(): [ThrowExpr] throw ...
|
|
# 1195| Type = [PointerType] const char *
|
|
# 1195| ValueCategory = prvalue
|
|
# 1195| getExpr(): string literal
|
|
# 1195| Type = [ArrayType] const char[15]
|
|
# 1195| Value = [StringLiteral] "string literal"
|
|
# 1195| ValueCategory = lvalue
|
|
# 1195| getExpr().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1195| Type = [PointerType] const char *
|
|
# 1195| ValueCategory = prvalue
|
|
# 1197| getElse(): [IfStmt] if (...) ...
|
|
# 1197| getCondition(): [LTExpr] ... < ...
|
|
# 1197| Type = [BoolType] bool
|
|
# 1197| ValueCategory = prvalue
|
|
# 1197| getLesserOperand(): [VariableAccess] x
|
|
# 1197| Type = [IntType] int
|
|
# 1197| ValueCategory = prvalue(load)
|
|
# 1197| getGreaterOperand(): [Literal] 2
|
|
# 1197| Type = [IntType] int
|
|
# 1197| Value = [Literal] 2
|
|
# 1197| ValueCategory = prvalue
|
|
# 1197| getThen(): [BlockStmt] { ... }
|
|
# 1198| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1198| getExpr(): [AssignExpr] ... = ...
|
|
# 1198| Type = [IntType] int
|
|
# 1198| ValueCategory = lvalue
|
|
# 1198| getLValue(): [VariableAccess] x
|
|
# 1198| Type = [IntType] int
|
|
# 1198| ValueCategory = lvalue
|
|
# 1198| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 1198| Type = [IntType] int
|
|
# 1198| ValueCategory = prvalue
|
|
# 1198| getCondition(): [VariableAccess] b
|
|
# 1198| Type = [BoolType] bool
|
|
# 1198| ValueCategory = prvalue(load)
|
|
# 1198| getThen(): [Literal] 7
|
|
# 1198| Type = [IntType] int
|
|
# 1198| Value = [Literal] 7
|
|
# 1198| ValueCategory = prvalue
|
|
# 1198| getElse(): [ThrowExpr] throw ...
|
|
# 1198| Type = [Struct] String
|
|
# 1198| ValueCategory = prvalue
|
|
# 1198| getExpr(): [ConstructorCall] call to String
|
|
# 1198| Type = [VoidType] void
|
|
# 1198| ValueCategory = prvalue
|
|
# 1198| getArgument(0): String object
|
|
# 1198| Type = [ArrayType] const char[14]
|
|
# 1198| Value = [StringLiteral] "String object"
|
|
# 1198| ValueCategory = lvalue
|
|
# 1198| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1198| Type = [PointerType] const char *
|
|
# 1198| ValueCategory = prvalue
|
|
# 1200| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1200| getExpr(): [AssignExpr] ... = ...
|
|
# 1200| Type = [IntType] int
|
|
# 1200| ValueCategory = lvalue
|
|
# 1200| getLValue(): [VariableAccess] x
|
|
# 1200| Type = [IntType] int
|
|
# 1200| ValueCategory = lvalue
|
|
# 1200| getRValue(): [Literal] 7
|
|
# 1200| Type = [IntType] int
|
|
# 1200| Value = [Literal] 7
|
|
# 1200| ValueCategory = prvalue
|
|
# 1202| getChild(1): [Handler] <handler>
|
|
# 1202| getBlock(): [CatchBlock] { ... }
|
|
# 1203| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1203| getExpr(): [ThrowExpr] throw ...
|
|
# 1203| Type = [Struct] String
|
|
# 1203| ValueCategory = prvalue
|
|
# 1203| getExpr(): [ConstructorCall] call to String
|
|
# 1203| Type = [VoidType] void
|
|
# 1203| ValueCategory = prvalue
|
|
# 1203| getArgument(0): [VariableAccess] s
|
|
# 1203| Type = [PointerType] const char *
|
|
# 1203| ValueCategory = prvalue(load)
|
|
# 1205| getChild(2): [Handler] <handler>
|
|
# 1205| getBlock(): [CatchBlock] { ... }
|
|
# 1207| getStmt(1): [ReturnStmt] return ...
|
|
# 1211| [TopLevelFunction] void VectorTypes(int)
|
|
# 1211| <params>:
|
|
# 1211| getParameter(0): [Parameter] i
|
|
# 1211| Type = [IntType] int
|
|
# 1211| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1212| getStmt(0): [DeclStmt] declaration
|
|
# 1212| getDeclarationEntry(0): [VariableDeclarationEntry] definition of vi4
|
|
# 1212| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1212| getVariable().getInitializer(): [Initializer] initializer for vi4
|
|
# 1212| getExpr(): [VectorAggregateLiteral] {...}
|
|
# 1212| Type = [GNUVectorType] __attribute((vector_size(16UL))) int
|
|
# 1212| ValueCategory = prvalue
|
|
# 1212| getAnElementExpr(0): [Literal] 0
|
|
# 1212| Type = [IntType] int
|
|
# 1212| Value = [Literal] 0
|
|
# 1212| ValueCategory = prvalue
|
|
# 1212| getAnElementExpr(1): [Literal] 1
|
|
# 1212| Type = [IntType] int
|
|
# 1212| Value = [Literal] 1
|
|
# 1212| ValueCategory = prvalue
|
|
# 1212| getAnElementExpr(2): [Literal] 2
|
|
# 1212| Type = [IntType] int
|
|
# 1212| Value = [Literal] 2
|
|
# 1212| ValueCategory = prvalue
|
|
# 1212| getAnElementExpr(3): [Literal] 3
|
|
# 1212| Type = [IntType] int
|
|
# 1212| Value = [Literal] 3
|
|
# 1212| ValueCategory = prvalue
|
|
# 1213| getStmt(1): [DeclStmt] declaration
|
|
# 1213| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1213| Type = [IntType] int
|
|
# 1213| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 1213| getExpr(): [ArrayExpr] access to array
|
|
# 1213| Type = [IntType] int
|
|
# 1213| ValueCategory = prvalue(load)
|
|
# 1213| getArrayBase(): [VariableAccess] vi4
|
|
# 1213| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1213| ValueCategory = lvalue
|
|
# 1213| getArrayOffset(): [VariableAccess] i
|
|
# 1213| Type = [IntType] int
|
|
# 1213| ValueCategory = prvalue(load)
|
|
# 1214| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1214| getExpr(): [AssignExpr] ... = ...
|
|
# 1214| Type = [IntType] int
|
|
# 1214| ValueCategory = lvalue
|
|
# 1214| getLValue(): [ArrayExpr] access to array
|
|
# 1214| Type = [IntType] int
|
|
# 1214| ValueCategory = lvalue
|
|
# 1214| getArrayBase(): [VariableAccess] vi4
|
|
# 1214| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1214| ValueCategory = lvalue
|
|
# 1214| getArrayOffset(): [VariableAccess] i
|
|
# 1214| Type = [IntType] int
|
|
# 1214| ValueCategory = prvalue(load)
|
|
# 1214| getRValue(): [VariableAccess] x
|
|
# 1214| Type = [IntType] int
|
|
# 1214| ValueCategory = prvalue(load)
|
|
# 1215| getStmt(3): [DeclStmt] declaration
|
|
# 1215| getDeclarationEntry(0): [VariableDeclarationEntry] definition of vi4_shuffle
|
|
# 1215| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1215| getVariable().getInitializer(): [Initializer] initializer for vi4_shuffle
|
|
# 1215| getExpr(): [BuiltInOperationBuiltInShuffleVector] __builtin_shufflevector
|
|
# 1215| Type = [GNUVectorType] __attribute((vector_size(16))) int
|
|
# 1215| ValueCategory = prvalue
|
|
# 1215| getChild(0): [VariableAccess] vi4
|
|
# 1215| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1215| ValueCategory = prvalue(load)
|
|
# 1215| getChild(1): [VariableAccess] vi4
|
|
# 1215| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1215| ValueCategory = prvalue(load)
|
|
# 1215| getChild(2): [AddExpr] ... + ...
|
|
# 1215| Type = [IntType] int
|
|
# 1215| Value = [AddExpr] 3
|
|
# 1215| ValueCategory = prvalue
|
|
# 1215| getLeftOperand(): [Literal] 3
|
|
# 1215| Type = [IntType] int
|
|
# 1215| Value = [Literal] 3
|
|
# 1215| ValueCategory = prvalue
|
|
# 1215| getRightOperand(): [Literal] 0
|
|
# 1215| Type = [IntType] int
|
|
# 1215| Value = [Literal] 0
|
|
# 1215| ValueCategory = prvalue
|
|
# 1215| getChild(3): [Literal] 2
|
|
# 1215| Type = [IntType] int
|
|
# 1215| Value = [Literal] 2
|
|
# 1215| ValueCategory = prvalue
|
|
# 1215| getChild(4): [Literal] 1
|
|
# 1215| Type = [IntType] int
|
|
# 1215| Value = [Literal] 1
|
|
# 1215| ValueCategory = prvalue
|
|
# 1215| getChild(5): [Literal] 0
|
|
# 1215| Type = [IntType] int
|
|
# 1215| Value = [Literal] 0
|
|
# 1215| ValueCategory = prvalue
|
|
# 1216| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1216| getExpr(): [AssignExpr] ... = ...
|
|
# 1216| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1216| ValueCategory = lvalue
|
|
# 1216| getLValue(): [VariableAccess] vi4
|
|
# 1216| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1216| ValueCategory = lvalue
|
|
# 1216| getRValue(): [AddExpr] ... + ...
|
|
# 1216| Type = [GNUVectorType] __attribute((vector_size(16UL))) int
|
|
# 1216| ValueCategory = prvalue
|
|
# 1216| getLeftOperand(): [VariableAccess] vi4
|
|
# 1216| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1216| ValueCategory = prvalue(load)
|
|
# 1216| getRightOperand(): [VariableAccess] vi4_shuffle
|
|
# 1216| Type = [SpecifiedType] __attribute((vector_size(16UL))) int
|
|
# 1216| ValueCategory = prvalue(load)
|
|
# 1217| getStmt(5): [ReturnStmt] return ...
|
|
# 1219| [TopLevelFunction] void* memcpy(void*, void*, int)
|
|
# 1219| <params>:
|
|
# 1219| getParameter(0): [Parameter] dst
|
|
# 1219| Type = [VoidPointerType] void *
|
|
# 1219| getParameter(1): [Parameter] src
|
|
# 1219| Type = [VoidPointerType] void *
|
|
# 1219| getParameter(2): [Parameter] size
|
|
# 1219| Type = [IntType] int
|
|
# 1221| [TopLevelFunction] int ModeledCallTarget(int)
|
|
# 1221| <params>:
|
|
# 1221| getParameter(0): [Parameter] x
|
|
# 1221| Type = [IntType] int
|
|
# 1221| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1222| getStmt(0): [DeclStmt] declaration
|
|
# 1222| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1222| Type = [IntType] int
|
|
# 1223| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1223| getExpr(): [FunctionCall] call to memcpy
|
|
# 1223| Type = [VoidPointerType] void *
|
|
# 1223| ValueCategory = prvalue
|
|
# 1223| getArgument(0): [AddressOfExpr] & ...
|
|
# 1223| Type = [IntPointerType] int *
|
|
# 1223| ValueCategory = prvalue
|
|
# 1223| getOperand(): [VariableAccess] y
|
|
# 1223| Type = [IntType] int
|
|
# 1223| ValueCategory = lvalue
|
|
# 1223| getArgument(1): [AddressOfExpr] & ...
|
|
# 1223| Type = [IntPointerType] int *
|
|
# 1223| ValueCategory = prvalue
|
|
# 1223| getOperand(): [VariableAccess] x
|
|
# 1223| Type = [IntType] int
|
|
# 1223| ValueCategory = lvalue
|
|
# 1223| getArgument(2): [SizeofTypeOperator] sizeof(int)
|
|
# 1223| Type = [LongType] unsigned long
|
|
# 1223| Value = [SizeofTypeOperator] 4
|
|
# 1223| ValueCategory = prvalue
|
|
# 1223| getArgument(0).getFullyConverted(): [CStyleCast] (void *)...
|
|
# 1223| Conversion = [PointerConversion] pointer conversion
|
|
# 1223| Type = [VoidPointerType] void *
|
|
# 1223| ValueCategory = prvalue
|
|
# 1223| getArgument(1).getFullyConverted(): [CStyleCast] (void *)...
|
|
# 1223| Conversion = [PointerConversion] pointer conversion
|
|
# 1223| Type = [VoidPointerType] void *
|
|
# 1223| ValueCategory = prvalue
|
|
# 1223| getArgument(2).getFullyConverted(): [CStyleCast] (int)...
|
|
# 1223| Conversion = [IntegralConversion] integral conversion
|
|
# 1223| Type = [IntType] int
|
|
# 1223| Value = [CStyleCast] 4
|
|
# 1223| ValueCategory = prvalue
|
|
# 1224| getStmt(2): [ReturnStmt] return ...
|
|
# 1224| getExpr(): [VariableAccess] y
|
|
# 1224| Type = [IntType] int
|
|
# 1224| ValueCategory = prvalue(load)
|
|
# 1227| [TopLevelFunction] String ReturnObjectImpl()
|
|
# 1227| <params>:
|
|
# 1227| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1228| getStmt(0): [ReturnStmt] return ...
|
|
# 1228| getExpr(): [ConstructorCall] call to String
|
|
# 1228| Type = [VoidType] void
|
|
# 1228| ValueCategory = prvalue
|
|
# 1228| getArgument(0): foo
|
|
# 1228| Type = [ArrayType] const char[4]
|
|
# 1228| Value = [StringLiteral] "foo"
|
|
# 1228| ValueCategory = lvalue
|
|
# 1228| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1228| Type = [PointerType] const char *
|
|
# 1228| ValueCategory = prvalue
|
|
# 1231| [TopLevelFunction] void switch1Case(int)
|
|
# 1231| <params>:
|
|
# 1231| getParameter(0): [Parameter] x
|
|
# 1231| Type = [IntType] int
|
|
# 1231| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1232| getStmt(0): [DeclStmt] declaration
|
|
# 1232| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1232| Type = [IntType] int
|
|
# 1232| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 1232| getExpr(): [Literal] 0
|
|
# 1232| Type = [IntType] int
|
|
# 1232| Value = [Literal] 0
|
|
# 1232| ValueCategory = prvalue
|
|
# 1233| getStmt(1): [SwitchStmt] switch (...) ...
|
|
# 1233| getExpr(): [VariableAccess] x
|
|
# 1233| Type = [IntType] int
|
|
# 1233| ValueCategory = prvalue(load)
|
|
# 1233| getStmt(): [BlockStmt] { ... }
|
|
# 1234| getStmt(0): [SwitchCase] case ...:
|
|
# 1234| getExpr(): [Literal] 1
|
|
# 1234| Type = [IntType] int
|
|
# 1234| Value = [Literal] 1
|
|
# 1234| ValueCategory = prvalue
|
|
# 1235| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1235| getExpr(): [AssignExpr] ... = ...
|
|
# 1235| Type = [IntType] int
|
|
# 1235| ValueCategory = lvalue
|
|
# 1235| getLValue(): [VariableAccess] y
|
|
# 1235| Type = [IntType] int
|
|
# 1235| ValueCategory = lvalue
|
|
# 1235| getRValue(): [Literal] 2
|
|
# 1235| Type = [IntType] int
|
|
# 1235| Value = [Literal] 2
|
|
# 1235| ValueCategory = prvalue
|
|
# 1237| getStmt(2): [DeclStmt] declaration
|
|
# 1237| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 1237| Type = [IntType] int
|
|
# 1237| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 1237| getExpr(): [VariableAccess] y
|
|
# 1237| Type = [IntType] int
|
|
# 1237| ValueCategory = prvalue(load)
|
|
# 1238| getStmt(3): [ReturnStmt] return ...
|
|
# 1240| [TopLevelFunction] void switch2Case_fallthrough(int)
|
|
# 1240| <params>:
|
|
# 1240| getParameter(0): [Parameter] x
|
|
# 1240| Type = [IntType] int
|
|
# 1240| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1241| getStmt(0): [DeclStmt] declaration
|
|
# 1241| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1241| Type = [IntType] int
|
|
# 1241| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 1241| getExpr(): [Literal] 0
|
|
# 1241| Type = [IntType] int
|
|
# 1241| Value = [Literal] 0
|
|
# 1241| ValueCategory = prvalue
|
|
# 1242| getStmt(1): [SwitchStmt] switch (...) ...
|
|
# 1242| getExpr(): [VariableAccess] x
|
|
# 1242| Type = [IntType] int
|
|
# 1242| ValueCategory = prvalue(load)
|
|
# 1242| getStmt(): [BlockStmt] { ... }
|
|
# 1243| getStmt(0): [SwitchCase] case ...:
|
|
# 1243| getExpr(): [Literal] 1
|
|
# 1243| Type = [IntType] int
|
|
# 1243| Value = [Literal] 1
|
|
# 1243| ValueCategory = prvalue
|
|
# 1244| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1244| getExpr(): [AssignExpr] ... = ...
|
|
# 1244| Type = [IntType] int
|
|
# 1244| ValueCategory = lvalue
|
|
# 1244| getLValue(): [VariableAccess] y
|
|
# 1244| Type = [IntType] int
|
|
# 1244| ValueCategory = lvalue
|
|
# 1244| getRValue(): [Literal] 2
|
|
# 1244| Type = [IntType] int
|
|
# 1244| Value = [Literal] 2
|
|
# 1244| ValueCategory = prvalue
|
|
# 1245| getStmt(2): [SwitchCase] case ...:
|
|
# 1245| getExpr(): [Literal] 2
|
|
# 1245| Type = [IntType] int
|
|
# 1245| Value = [Literal] 2
|
|
# 1245| ValueCategory = prvalue
|
|
# 1246| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1246| getExpr(): [AssignExpr] ... = ...
|
|
# 1246| Type = [IntType] int
|
|
# 1246| ValueCategory = lvalue
|
|
# 1246| getLValue(): [VariableAccess] y
|
|
# 1246| Type = [IntType] int
|
|
# 1246| ValueCategory = lvalue
|
|
# 1246| getRValue(): [Literal] 3
|
|
# 1246| Type = [IntType] int
|
|
# 1246| Value = [Literal] 3
|
|
# 1246| ValueCategory = prvalue
|
|
# 1248| getStmt(2): [DeclStmt] declaration
|
|
# 1248| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 1248| Type = [IntType] int
|
|
# 1248| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 1248| getExpr(): [VariableAccess] y
|
|
# 1248| Type = [IntType] int
|
|
# 1248| ValueCategory = prvalue(load)
|
|
# 1249| getStmt(3): [ReturnStmt] return ...
|
|
# 1251| [TopLevelFunction] void switch2Case(int)
|
|
# 1251| <params>:
|
|
# 1251| getParameter(0): [Parameter] x
|
|
# 1251| Type = [IntType] int
|
|
# 1251| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1252| getStmt(0): [DeclStmt] declaration
|
|
# 1252| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1252| Type = [IntType] int
|
|
# 1252| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 1252| getExpr(): [Literal] 0
|
|
# 1252| Type = [IntType] int
|
|
# 1252| Value = [Literal] 0
|
|
# 1252| ValueCategory = prvalue
|
|
# 1253| getStmt(1): [SwitchStmt] switch (...) ...
|
|
# 1253| getExpr(): [VariableAccess] x
|
|
# 1253| Type = [IntType] int
|
|
# 1253| ValueCategory = prvalue(load)
|
|
# 1253| getStmt(): [BlockStmt] { ... }
|
|
# 1254| getStmt(0): [SwitchCase] case ...:
|
|
# 1254| getExpr(): [Literal] 1
|
|
# 1254| Type = [IntType] int
|
|
# 1254| Value = [Literal] 1
|
|
# 1254| ValueCategory = prvalue
|
|
# 1255| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1255| getExpr(): [AssignExpr] ... = ...
|
|
# 1255| Type = [IntType] int
|
|
# 1255| ValueCategory = lvalue
|
|
# 1255| getLValue(): [VariableAccess] y
|
|
# 1255| Type = [IntType] int
|
|
# 1255| ValueCategory = lvalue
|
|
# 1255| getRValue(): [Literal] 2
|
|
# 1255| Type = [IntType] int
|
|
# 1255| Value = [Literal] 2
|
|
# 1255| ValueCategory = prvalue
|
|
# 1256| getStmt(2): [BreakStmt] break;
|
|
# 1257| getStmt(3): [SwitchCase] case ...:
|
|
# 1257| getExpr(): [Literal] 2
|
|
# 1257| Type = [IntType] int
|
|
# 1257| Value = [Literal] 2
|
|
# 1257| ValueCategory = prvalue
|
|
# 1258| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1258| getExpr(): [AssignExpr] ... = ...
|
|
# 1258| Type = [IntType] int
|
|
# 1258| ValueCategory = lvalue
|
|
# 1258| getLValue(): [VariableAccess] y
|
|
# 1258| Type = [IntType] int
|
|
# 1258| ValueCategory = lvalue
|
|
# 1258| getRValue(): [Literal] 3
|
|
# 1258| Type = [IntType] int
|
|
# 1258| Value = [Literal] 3
|
|
# 1258| ValueCategory = prvalue
|
|
# 1259| getStmt(2): [LabelStmt] label ...:
|
|
# 1260| getStmt(3): [DeclStmt] declaration
|
|
# 1260| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 1260| Type = [IntType] int
|
|
# 1260| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 1260| getExpr(): [VariableAccess] y
|
|
# 1260| Type = [IntType] int
|
|
# 1260| ValueCategory = prvalue(load)
|
|
# 1261| getStmt(4): [ReturnStmt] return ...
|
|
# 1263| [TopLevelFunction] void switch2Case_default(int)
|
|
# 1263| <params>:
|
|
# 1263| getParameter(0): [Parameter] x
|
|
# 1263| Type = [IntType] int
|
|
# 1263| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1264| getStmt(0): [DeclStmt] declaration
|
|
# 1264| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1264| Type = [IntType] int
|
|
# 1264| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 1264| getExpr(): [Literal] 0
|
|
# 1264| Type = [IntType] int
|
|
# 1264| Value = [Literal] 0
|
|
# 1264| ValueCategory = prvalue
|
|
# 1265| getStmt(1): [SwitchStmt] switch (...) ...
|
|
# 1265| getExpr(): [VariableAccess] x
|
|
# 1265| Type = [IntType] int
|
|
# 1265| ValueCategory = prvalue(load)
|
|
# 1265| getStmt(): [BlockStmt] { ... }
|
|
# 1266| getStmt(0): [SwitchCase] case ...:
|
|
# 1266| getExpr(): [Literal] 1
|
|
# 1266| Type = [IntType] int
|
|
# 1266| Value = [Literal] 1
|
|
# 1266| ValueCategory = prvalue
|
|
# 1267| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1267| getExpr(): [AssignExpr] ... = ...
|
|
# 1267| Type = [IntType] int
|
|
# 1267| ValueCategory = lvalue
|
|
# 1267| getLValue(): [VariableAccess] y
|
|
# 1267| Type = [IntType] int
|
|
# 1267| ValueCategory = lvalue
|
|
# 1267| getRValue(): [Literal] 2
|
|
# 1267| Type = [IntType] int
|
|
# 1267| Value = [Literal] 2
|
|
# 1267| ValueCategory = prvalue
|
|
# 1268| getStmt(2): [BreakStmt] break;
|
|
# 1270| getStmt(3): [SwitchCase] case ...:
|
|
# 1270| getExpr(): [Literal] 2
|
|
# 1270| Type = [IntType] int
|
|
# 1270| Value = [Literal] 2
|
|
# 1270| ValueCategory = prvalue
|
|
# 1271| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1271| getExpr(): [AssignExpr] ... = ...
|
|
# 1271| Type = [IntType] int
|
|
# 1271| ValueCategory = lvalue
|
|
# 1271| getLValue(): [VariableAccess] y
|
|
# 1271| Type = [IntType] int
|
|
# 1271| ValueCategory = lvalue
|
|
# 1271| getRValue(): [Literal] 3
|
|
# 1271| Type = [IntType] int
|
|
# 1271| Value = [Literal] 3
|
|
# 1271| ValueCategory = prvalue
|
|
# 1272| getStmt(5): [BreakStmt] break;
|
|
# 1274| getStmt(6): [SwitchCase] default:
|
|
# 1275| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1275| getExpr(): [AssignExpr] ... = ...
|
|
# 1275| Type = [IntType] int
|
|
# 1275| ValueCategory = lvalue
|
|
# 1275| getLValue(): [VariableAccess] y
|
|
# 1275| Type = [IntType] int
|
|
# 1275| ValueCategory = lvalue
|
|
# 1275| getRValue(): [Literal] 4
|
|
# 1275| Type = [IntType] int
|
|
# 1275| Value = [Literal] 4
|
|
# 1275| ValueCategory = prvalue
|
|
# 1276| getStmt(2): [LabelStmt] label ...:
|
|
# 1277| getStmt(3): [DeclStmt] declaration
|
|
# 1277| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 1277| Type = [IntType] int
|
|
# 1277| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 1277| getExpr(): [VariableAccess] y
|
|
# 1277| Type = [IntType] int
|
|
# 1277| ValueCategory = prvalue(load)
|
|
# 1278| getStmt(4): [ReturnStmt] return ...
|
|
# 1280| [TopLevelFunction] int staticLocalInit(int)
|
|
# 1280| <params>:
|
|
# 1280| getParameter(0): [Parameter] x
|
|
# 1280| Type = [IntType] int
|
|
# 1280| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1281| getStmt(0): [DeclStmt] declaration
|
|
# 1281| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 1281| Type = [IntType] int
|
|
# 1281| getVariable().getInitializer(): [Initializer] initializer for a
|
|
# 1281| getExpr(): [Literal] 0
|
|
# 1281| Type = [IntType] int
|
|
# 1281| Value = [Literal] 0
|
|
# 1281| ValueCategory = prvalue
|
|
# 1282| getStmt(1): [DeclStmt] declaration
|
|
# 1282| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 1282| Type = [IntType] int
|
|
# 1282| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 1282| getExpr(): [SizeofExprOperator] sizeof(<expr>)
|
|
# 1282| Type = [LongType] unsigned long
|
|
# 1282| Value = [SizeofExprOperator] 4
|
|
# 1282| ValueCategory = prvalue
|
|
# 1282| getExprOperand(): [VariableAccess] x
|
|
# 1282| Type = [IntType] int
|
|
# 1282| ValueCategory = lvalue
|
|
# 1282| getExprOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 1282| Type = [IntType] int
|
|
# 1282| ValueCategory = lvalue
|
|
# 1282| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 1282| Conversion = [IntegralConversion] integral conversion
|
|
# 1282| Type = [IntType] int
|
|
# 1282| Value = [CStyleCast] 4
|
|
# 1282| ValueCategory = prvalue
|
|
# 1283| getStmt(2): [DeclStmt] declaration
|
|
# 1283| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 1283| Type = [IntType] int
|
|
# 1283| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 1283| getExpr(): [VariableAccess] x
|
|
# 1283| Type = [IntType] int
|
|
# 1283| ValueCategory = prvalue(load)
|
|
# 1284| getStmt(3): [DeclStmt] declaration
|
|
# 1284| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 1284| Type = [IntType] int
|
|
# 1286| getStmt(4): [ReturnStmt] return ...
|
|
# 1286| getExpr(): [AddExpr] ... + ...
|
|
# 1286| Type = [IntType] int
|
|
# 1286| ValueCategory = prvalue
|
|
# 1286| getLeftOperand(): [AddExpr] ... + ...
|
|
# 1286| Type = [IntType] int
|
|
# 1286| ValueCategory = prvalue
|
|
# 1286| getLeftOperand(): [AddExpr] ... + ...
|
|
# 1286| Type = [IntType] int
|
|
# 1286| ValueCategory = prvalue
|
|
# 1286| getLeftOperand(): [VariableAccess] a
|
|
# 1286| Type = [IntType] int
|
|
# 1286| ValueCategory = prvalue(load)
|
|
# 1286| getRightOperand(): [VariableAccess] b
|
|
# 1286| Type = [IntType] int
|
|
# 1286| ValueCategory = prvalue(load)
|
|
# 1286| getRightOperand(): [VariableAccess] c
|
|
# 1286| Type = [IntType] int
|
|
# 1286| ValueCategory = prvalue(load)
|
|
# 1286| getRightOperand(): [VariableAccess] d
|
|
# 1286| Type = [IntType] int
|
|
# 1286| ValueCategory = prvalue(load)
|
|
# 1289| [TopLevelFunction] void staticLocalWithConstructor(char const*)
|
|
# 1289| <params>:
|
|
# 1289| getParameter(0): [Parameter] dynamic
|
|
# 1289| Type = [PointerType] const char *
|
|
# 1289| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1290| getStmt(0): [DeclStmt] declaration
|
|
# 1290| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 1290| Type = [Struct] String
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for a
|
|
#-----| getExpr(): [ConstructorCall] call to String
|
|
#-----| Type = [VoidType] void
|
|
#-----| ValueCategory = prvalue
|
|
# 1291| getStmt(1): [DeclStmt] declaration
|
|
# 1291| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 1291| Type = [Struct] String
|
|
# 1291| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 1291| getExpr(): [ConstructorCall] call to String
|
|
# 1291| Type = [VoidType] void
|
|
# 1291| ValueCategory = prvalue
|
|
# 1291| getArgument(0): static
|
|
# 1291| Type = [ArrayType] const char[7]
|
|
# 1291| Value = [StringLiteral] "static"
|
|
# 1291| ValueCategory = lvalue
|
|
# 1291| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1291| Type = [PointerType] const char *
|
|
# 1291| ValueCategory = prvalue
|
|
# 1292| getStmt(2): [DeclStmt] declaration
|
|
# 1292| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 1292| Type = [Struct] String
|
|
# 1292| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 1292| getExpr(): [ConstructorCall] call to String
|
|
# 1292| Type = [VoidType] void
|
|
# 1292| ValueCategory = prvalue
|
|
# 1292| getArgument(0): [VariableAccess] dynamic
|
|
# 1292| Type = [PointerType] const char *
|
|
# 1292| ValueCategory = prvalue(load)
|
|
# 1293| getStmt(3): [ReturnStmt] return ...
|
|
# 1297| [TopLevelFunction] char* strcpy(char*, char const*)
|
|
# 1297| <params>:
|
|
# 1297| getParameter(0): [Parameter] destination
|
|
# 1297| Type = [CharPointerType] char *
|
|
# 1297| getParameter(1): [Parameter] source
|
|
# 1297| Type = [PointerType] const char *
|
|
# 1298| [TopLevelFunction] char* strcat(char*, char const*)
|
|
# 1298| <params>:
|
|
# 1298| getParameter(0): [Parameter] destination
|
|
# 1298| Type = [CharPointerType] char *
|
|
# 1298| getParameter(1): [Parameter] source
|
|
# 1298| Type = [PointerType] const char *
|
|
# 1300| [TopLevelFunction] void test_strings(char*, char*)
|
|
# 1300| <params>:
|
|
# 1300| getParameter(0): [Parameter] s1
|
|
# 1300| Type = [CharPointerType] char *
|
|
# 1300| getParameter(1): [Parameter] s2
|
|
# 1300| Type = [CharPointerType] char *
|
|
# 1300| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1301| getStmt(0): [DeclStmt] declaration
|
|
# 1301| getDeclarationEntry(0): [VariableDeclarationEntry] definition of buffer
|
|
# 1301| Type = [ArrayType] char[1024]
|
|
# 1301| getVariable().getInitializer(): [Initializer] initializer for buffer
|
|
# 1301| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 1301| Type = [ArrayType] char[1024]
|
|
# 1301| ValueCategory = prvalue
|
|
# 1301| getAnElementExpr(0): [Literal] 0
|
|
# 1301| Type = [IntType] int
|
|
# 1301| Value = [Literal] 0
|
|
# 1301| ValueCategory = prvalue
|
|
# 1301| getAnElementExpr(0).getFullyConverted(): [CStyleCast] (char)...
|
|
# 1301| Conversion = [IntegralConversion] integral conversion
|
|
# 1301| Type = [PlainCharType] char
|
|
# 1301| Value = [CStyleCast] 0
|
|
# 1301| ValueCategory = prvalue
|
|
# 1303| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1303| getExpr(): [FunctionCall] call to strcpy
|
|
# 1303| Type = [CharPointerType] char *
|
|
# 1303| ValueCategory = prvalue
|
|
# 1303| getArgument(0): [VariableAccess] buffer
|
|
# 1303| Type = [ArrayType] char[1024]
|
|
# 1303| ValueCategory = lvalue
|
|
# 1303| getArgument(1): [VariableAccess] s1
|
|
# 1303| Type = [CharPointerType] char *
|
|
# 1303| ValueCategory = prvalue(load)
|
|
# 1303| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1303| Type = [CharPointerType] char *
|
|
# 1303| ValueCategory = prvalue
|
|
# 1303| getArgument(1).getFullyConverted(): [CStyleCast] (const char *)...
|
|
# 1303| Conversion = [PointerConversion] pointer conversion
|
|
# 1303| Type = [PointerType] const char *
|
|
# 1303| ValueCategory = prvalue
|
|
# 1304| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1304| getExpr(): [FunctionCall] call to strcat
|
|
# 1304| Type = [CharPointerType] char *
|
|
# 1304| ValueCategory = prvalue
|
|
# 1304| getArgument(0): [VariableAccess] buffer
|
|
# 1304| Type = [ArrayType] char[1024]
|
|
# 1304| ValueCategory = lvalue
|
|
# 1304| getArgument(1): [VariableAccess] s2
|
|
# 1304| Type = [CharPointerType] char *
|
|
# 1304| ValueCategory = prvalue(load)
|
|
# 1304| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1304| Type = [CharPointerType] char *
|
|
# 1304| ValueCategory = prvalue
|
|
# 1304| getArgument(1).getFullyConverted(): [CStyleCast] (const char *)...
|
|
# 1304| Conversion = [PointerConversion] pointer conversion
|
|
# 1304| Type = [PointerType] const char *
|
|
# 1304| ValueCategory = prvalue
|
|
# 1305| getStmt(3): [ReturnStmt] return ...
|
|
# 1307| [CopyAssignmentOperator] A& A::operator=(A const&)
|
|
# 1307| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const A &
|
|
# 1307| [MoveAssignmentOperator] A& A::operator=(A&&)
|
|
# 1307| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] A &&
|
|
# 1310| [MemberFunction] void A::static_member(A*, int)
|
|
# 1310| <params>:
|
|
# 1310| getParameter(0): [Parameter] a
|
|
# 1310| Type = [PointerType] A *
|
|
# 1310| getParameter(1): [Parameter] x
|
|
# 1310| Type = [IntType] int
|
|
# 1310| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1311| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1311| getExpr(): [AssignExpr] ... = ...
|
|
# 1311| Type = [IntType] int
|
|
# 1311| ValueCategory = lvalue
|
|
# 1311| getLValue(): [PointerFieldAccess] member
|
|
# 1311| Type = [IntType] int
|
|
# 1311| ValueCategory = lvalue
|
|
# 1311| getQualifier(): [VariableAccess] a
|
|
# 1311| Type = [PointerType] A *
|
|
# 1311| ValueCategory = prvalue(load)
|
|
# 1311| getRValue(): [VariableAccess] x
|
|
# 1311| Type = [IntType] int
|
|
# 1311| ValueCategory = prvalue(load)
|
|
# 1312| getStmt(1): [ReturnStmt] return ...
|
|
# 1314| [MemberFunction] void A::static_member_without_def()
|
|
# 1314| <params>:
|
|
# 1317| [TopLevelFunction] A* getAnInstanceOfA()
|
|
# 1317| <params>:
|
|
# 1319| [TopLevelFunction] void test_static_member_functions(int, A*)
|
|
# 1319| <params>:
|
|
# 1319| getParameter(0): [Parameter] int_arg
|
|
# 1319| Type = [IntType] int
|
|
# 1319| getParameter(1): [Parameter] a_arg
|
|
# 1319| Type = [PointerType] A *
|
|
# 1319| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1320| getStmt(0): [DeclStmt] declaration
|
|
# 1320| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 1320| Type = [Class] C
|
|
# 1320| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 1320| getExpr(): [ConstructorCall] call to C
|
|
# 1320| Type = [VoidType] void
|
|
# 1320| ValueCategory = prvalue
|
|
# 1321| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1321| getExpr(): [FunctionCall] call to StaticMemberFunction
|
|
# 1321| Type = [IntType] int
|
|
# 1321| ValueCategory = prvalue
|
|
# 1321| getQualifier(): [VariableAccess] c
|
|
# 1321| Type = [Class] C
|
|
# 1321| ValueCategory = lvalue
|
|
# 1321| getArgument(0): [Literal] 10
|
|
# 1321| Type = [IntType] int
|
|
# 1321| Value = [Literal] 10
|
|
# 1321| ValueCategory = prvalue
|
|
# 1322| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1322| getExpr(): [FunctionCall] call to StaticMemberFunction
|
|
# 1322| Type = [IntType] int
|
|
# 1322| ValueCategory = prvalue
|
|
# 1322| getArgument(0): [Literal] 10
|
|
# 1322| Type = [IntType] int
|
|
# 1322| Value = [Literal] 10
|
|
# 1322| ValueCategory = prvalue
|
|
# 1324| getStmt(3): [DeclStmt] declaration
|
|
# 1324| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 1324| Type = [Struct] A
|
|
# 1325| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1325| getExpr(): [FunctionCall] call to static_member
|
|
# 1325| Type = [VoidType] void
|
|
# 1325| ValueCategory = prvalue
|
|
# 1325| getQualifier(): [VariableAccess] a
|
|
# 1325| Type = [Struct] A
|
|
# 1325| ValueCategory = lvalue
|
|
# 1325| getArgument(0): [AddressOfExpr] & ...
|
|
# 1325| Type = [PointerType] A *
|
|
# 1325| ValueCategory = prvalue
|
|
# 1325| getOperand(): [VariableAccess] a
|
|
# 1325| Type = [Struct] A
|
|
# 1325| ValueCategory = lvalue
|
|
# 1325| getArgument(1): [VariableAccess] int_arg
|
|
# 1325| Type = [IntType] int
|
|
# 1325| ValueCategory = prvalue(load)
|
|
# 1326| getStmt(5): [ExprStmt] ExprStmt
|
|
# 1326| getExpr(): [FunctionCall] call to static_member
|
|
# 1326| Type = [VoidType] void
|
|
# 1326| ValueCategory = prvalue
|
|
# 1326| getArgument(0): [AddressOfExpr] & ...
|
|
# 1326| Type = [PointerType] A *
|
|
# 1326| ValueCategory = prvalue
|
|
# 1326| getOperand(): [VariableAccess] a
|
|
# 1326| Type = [Struct] A
|
|
# 1326| ValueCategory = lvalue
|
|
# 1326| getArgument(1): [VariableAccess] int_arg
|
|
# 1326| Type = [IntType] int
|
|
# 1326| ValueCategory = prvalue(load)
|
|
# 1328| getStmt(6): [ExprStmt] ExprStmt
|
|
# 1328| getExpr(): [FunctionCall] call to static_member
|
|
# 1328| Type = [VoidType] void
|
|
# 1328| ValueCategory = prvalue
|
|
# 1328| getQualifier(): [AddressOfExpr] & ...
|
|
# 1328| Type = [PointerType] A *
|
|
# 1328| ValueCategory = prvalue
|
|
# 1328| getOperand(): [VariableAccess] a
|
|
# 1328| Type = [Struct] A
|
|
# 1328| ValueCategory = lvalue
|
|
# 1328| getArgument(0): [VariableAccess] a_arg
|
|
# 1328| Type = [PointerType] A *
|
|
# 1328| ValueCategory = prvalue(load)
|
|
# 1328| getArgument(1): [AddExpr] ... + ...
|
|
# 1328| Type = [IntType] int
|
|
# 1328| ValueCategory = prvalue
|
|
# 1328| getLeftOperand(): [VariableAccess] int_arg
|
|
# 1328| Type = [IntType] int
|
|
# 1328| ValueCategory = prvalue(load)
|
|
# 1328| getRightOperand(): [Literal] 2
|
|
# 1328| Type = [IntType] int
|
|
# 1328| Value = [Literal] 2
|
|
# 1328| ValueCategory = prvalue
|
|
# 1328| getQualifier().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 1328| Type = [PointerType] A *
|
|
# 1328| ValueCategory = prvalue
|
|
# 1329| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1329| getExpr(): [FunctionCall] call to static_member
|
|
# 1329| Type = [VoidType] void
|
|
# 1329| ValueCategory = prvalue
|
|
# 1329| getQualifier(): [PointerDereferenceExpr] * ...
|
|
# 1329| Type = [Struct] A
|
|
# 1329| ValueCategory = lvalue
|
|
# 1329| getOperand(): [VariableAccess] a_arg
|
|
# 1329| Type = [PointerType] A *
|
|
# 1329| ValueCategory = prvalue(load)
|
|
# 1329| getArgument(0): [AddressOfExpr] & ...
|
|
# 1329| Type = [PointerType] A *
|
|
# 1329| ValueCategory = prvalue
|
|
# 1329| getOperand(): [VariableAccess] a
|
|
# 1329| Type = [Struct] A
|
|
# 1329| ValueCategory = lvalue
|
|
# 1329| getArgument(1): [Literal] 99
|
|
# 1329| Type = [IntType] int
|
|
# 1329| Value = [Literal] 99
|
|
# 1329| ValueCategory = prvalue
|
|
# 1329| getQualifier().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 1329| Type = [Struct] A
|
|
# 1329| ValueCategory = lvalue
|
|
# 1330| getStmt(8): [ExprStmt] ExprStmt
|
|
# 1330| getExpr(): [FunctionCall] call to static_member
|
|
# 1330| Type = [VoidType] void
|
|
# 1330| ValueCategory = prvalue
|
|
# 1330| getQualifier(): [VariableAccess] a_arg
|
|
# 1330| Type = [PointerType] A *
|
|
# 1330| ValueCategory = prvalue(load)
|
|
# 1330| getArgument(0): [VariableAccess] a_arg
|
|
# 1330| Type = [PointerType] A *
|
|
# 1330| ValueCategory = prvalue(load)
|
|
# 1330| getArgument(1): [UnaryMinusExpr] - ...
|
|
# 1330| Type = [IntType] int
|
|
# 1330| Value = [UnaryMinusExpr] -1
|
|
# 1330| ValueCategory = prvalue
|
|
# 1330| getOperand(): [Literal] 1
|
|
# 1330| Type = [IntType] int
|
|
# 1330| Value = [Literal] 1
|
|
# 1330| ValueCategory = prvalue
|
|
# 1332| getStmt(9): [ExprStmt] ExprStmt
|
|
# 1332| getExpr(): [FunctionCall] call to static_member_without_def
|
|
# 1332| Type = [VoidType] void
|
|
# 1332| ValueCategory = prvalue
|
|
# 1332| getQualifier(): [VariableAccess] a
|
|
# 1332| Type = [Struct] A
|
|
# 1332| ValueCategory = lvalue
|
|
# 1333| getStmt(10): [ExprStmt] ExprStmt
|
|
# 1333| getExpr(): [FunctionCall] call to static_member_without_def
|
|
# 1333| Type = [VoidType] void
|
|
# 1333| ValueCategory = prvalue
|
|
# 1335| getStmt(11): [ExprStmt] ExprStmt
|
|
# 1335| getExpr(): [FunctionCall] call to static_member_without_def
|
|
# 1335| Type = [VoidType] void
|
|
# 1335| ValueCategory = prvalue
|
|
# 1335| getQualifier(): [FunctionCall] call to getAnInstanceOfA
|
|
# 1335| Type = [PointerType] A *
|
|
# 1335| ValueCategory = prvalue
|
|
# 1336| getStmt(12): [ReturnStmt] return ...
|
|
# 1336| getImplicitDestructorCall(0): [DestructorCall] call to ~C
|
|
# 1336| Type = [VoidType] void
|
|
# 1336| ValueCategory = prvalue
|
|
# 1336| getQualifier(): [VariableAccess] c
|
|
# 1336| Type = [Class] C
|
|
# 1336| ValueCategory = lvalue
|
|
# 1338| [TopLevelFunction] int missingReturnValue(bool, int)
|
|
# 1338| <params>:
|
|
# 1338| getParameter(0): [Parameter] b
|
|
# 1338| Type = [BoolType] bool
|
|
# 1338| getParameter(1): [Parameter] x
|
|
# 1338| Type = [IntType] int
|
|
# 1338| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1339| getStmt(0): [IfStmt] if (...) ...
|
|
# 1339| getCondition(): [VariableAccess] b
|
|
# 1339| Type = [BoolType] bool
|
|
# 1339| ValueCategory = prvalue(load)
|
|
# 1339| getThen(): [BlockStmt] { ... }
|
|
# 1340| getStmt(0): [ReturnStmt] return ...
|
|
# 1340| getExpr(): [VariableAccess] x
|
|
# 1340| Type = [IntType] int
|
|
# 1340| ValueCategory = prvalue(load)
|
|
# 1342| getStmt(1): [ReturnStmt] return ...
|
|
# 1344| [TopLevelFunction] void returnVoid(int, int)
|
|
# 1344| <params>:
|
|
# 1344| getParameter(0): [Parameter] x
|
|
# 1344| Type = [IntType] int
|
|
# 1344| getParameter(1): [Parameter] y
|
|
# 1344| Type = [IntType] int
|
|
# 1344| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1345| getStmt(0): [ReturnStmt] return ...
|
|
# 1345| getExpr(): [FunctionCall] call to IntegerOps
|
|
# 1345| Type = [VoidType] void
|
|
# 1345| ValueCategory = prvalue
|
|
# 1345| getArgument(0): [VariableAccess] x
|
|
# 1345| Type = [IntType] int
|
|
# 1345| ValueCategory = prvalue(load)
|
|
# 1345| getArgument(1): [VariableAccess] y
|
|
# 1345| Type = [IntType] int
|
|
# 1345| ValueCategory = prvalue(load)
|
|
# 1348| [TopLevelFunction] void gccBinaryConditional(bool, int, long)
|
|
# 1348| <params>:
|
|
# 1348| getParameter(0): [Parameter] b
|
|
# 1348| Type = [BoolType] bool
|
|
# 1348| getParameter(1): [Parameter] x
|
|
# 1348| Type = [IntType] int
|
|
# 1348| getParameter(2): [Parameter] y
|
|
# 1348| Type = [LongType] long
|
|
# 1348| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1349| getStmt(0): [DeclStmt] declaration
|
|
# 1349| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 1349| Type = [IntType] int
|
|
# 1349| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 1349| getExpr(): [VariableAccess] x
|
|
# 1349| Type = [IntType] int
|
|
# 1349| ValueCategory = prvalue(load)
|
|
# 1350| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1350| getExpr(): [AssignExpr] ... = ...
|
|
# 1350| Type = [IntType] int
|
|
# 1350| ValueCategory = lvalue
|
|
# 1350| getLValue(): [VariableAccess] z
|
|
# 1350| Type = [IntType] int
|
|
# 1350| ValueCategory = lvalue
|
|
# 1350| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 1350| Type = [IntType] int
|
|
# 1350| ValueCategory = prvalue(load)
|
|
# 1350| getCondition(): [VariableAccess] b
|
|
# 1350| Type = [BoolType] bool
|
|
# 1350| ValueCategory = prvalue(load)
|
|
# 1350| getElse(): [VariableAccess] x
|
|
# 1350| Type = [IntType] int
|
|
# 1350| ValueCategory = prvalue(load)
|
|
# 1351| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1351| getExpr(): [AssignExpr] ... = ...
|
|
# 1351| Type = [IntType] int
|
|
# 1351| ValueCategory = lvalue
|
|
# 1351| getLValue(): [VariableAccess] z
|
|
# 1351| Type = [IntType] int
|
|
# 1351| ValueCategory = lvalue
|
|
# 1351| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 1351| Type = [LongType] long
|
|
# 1351| ValueCategory = prvalue(load)
|
|
# 1351| getCondition(): [VariableAccess] b
|
|
# 1351| Type = [BoolType] bool
|
|
# 1351| ValueCategory = prvalue(load)
|
|
# 1351| getElse(): [VariableAccess] y
|
|
# 1351| Type = [LongType] long
|
|
# 1351| ValueCategory = prvalue(load)
|
|
# 1351| getRValue().getFullyConverted(): [CStyleCast] (int)...
|
|
# 1351| Conversion = [IntegralConversion] integral conversion
|
|
# 1351| Type = [IntType] int
|
|
# 1351| ValueCategory = prvalue
|
|
# 1352| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1352| getExpr(): [AssignExpr] ... = ...
|
|
# 1352| Type = [IntType] int
|
|
# 1352| ValueCategory = lvalue
|
|
# 1352| getLValue(): [VariableAccess] z
|
|
# 1352| Type = [IntType] int
|
|
# 1352| ValueCategory = lvalue
|
|
# 1352| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 1352| Type = [IntType] int
|
|
# 1352| ValueCategory = prvalue(load)
|
|
# 1352| getCondition(): [VariableAccess] x
|
|
# 1352| Type = [IntType] int
|
|
# 1352| ValueCategory = prvalue(load)
|
|
# 1352| getElse(): [VariableAccess] x
|
|
# 1352| Type = [IntType] int
|
|
# 1352| ValueCategory = prvalue(load)
|
|
# 1352| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1352| Conversion = [BoolConversion] conversion to bool
|
|
# 1352| Type = [BoolType] bool
|
|
# 1352| ValueCategory = prvalue
|
|
# 1353| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1353| getExpr(): [AssignExpr] ... = ...
|
|
# 1353| Type = [IntType] int
|
|
# 1353| ValueCategory = lvalue
|
|
# 1353| getLValue(): [VariableAccess] z
|
|
# 1353| Type = [IntType] int
|
|
# 1353| ValueCategory = lvalue
|
|
# 1353| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 1353| Type = [LongType] long
|
|
# 1353| ValueCategory = prvalue(load)
|
|
# 1353| getCondition(): [VariableAccess] x
|
|
# 1353| Type = [IntType] int
|
|
# 1353| ValueCategory = prvalue(load)
|
|
# 1353| getElse(): [VariableAccess] y
|
|
# 1353| Type = [LongType] long
|
|
# 1353| ValueCategory = prvalue(load)
|
|
# 1353| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1353| Conversion = [BoolConversion] conversion to bool
|
|
# 1353| Type = [BoolType] bool
|
|
# 1353| ValueCategory = prvalue
|
|
# 1353| getRValue().getFullyConverted(): [CStyleCast] (int)...
|
|
# 1353| Conversion = [IntegralConversion] integral conversion
|
|
# 1353| Type = [IntType] int
|
|
# 1353| ValueCategory = prvalue
|
|
# 1354| getStmt(5): [ExprStmt] ExprStmt
|
|
# 1354| getExpr(): [AssignExpr] ... = ...
|
|
# 1354| Type = [IntType] int
|
|
# 1354| ValueCategory = lvalue
|
|
# 1354| getLValue(): [VariableAccess] z
|
|
# 1354| Type = [IntType] int
|
|
# 1354| ValueCategory = lvalue
|
|
# 1354| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 1354| Type = [LongType] long
|
|
# 1354| ValueCategory = prvalue(load)
|
|
# 1354| getCondition(): [VariableAccess] y
|
|
# 1354| Type = [LongType] long
|
|
# 1354| ValueCategory = prvalue(load)
|
|
# 1354| getElse(): [VariableAccess] x
|
|
# 1354| Type = [IntType] int
|
|
# 1354| ValueCategory = prvalue(load)
|
|
# 1354| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1354| Conversion = [BoolConversion] conversion to bool
|
|
# 1354| Type = [BoolType] bool
|
|
# 1354| ValueCategory = prvalue
|
|
# 1354| getElse().getFullyConverted(): [CStyleCast] (long)...
|
|
# 1354| Conversion = [IntegralConversion] integral conversion
|
|
# 1354| Type = [LongType] long
|
|
# 1354| ValueCategory = prvalue
|
|
# 1354| getRValue().getFullyConverted(): [CStyleCast] (int)...
|
|
# 1354| Conversion = [IntegralConversion] integral conversion
|
|
# 1354| Type = [IntType] int
|
|
# 1354| ValueCategory = prvalue
|
|
# 1355| getStmt(6): [ExprStmt] ExprStmt
|
|
# 1355| getExpr(): [AssignExpr] ... = ...
|
|
# 1355| Type = [IntType] int
|
|
# 1355| ValueCategory = lvalue
|
|
# 1355| getLValue(): [VariableAccess] z
|
|
# 1355| Type = [IntType] int
|
|
# 1355| ValueCategory = lvalue
|
|
# 1355| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 1355| Type = [LongType] long
|
|
# 1355| ValueCategory = prvalue(load)
|
|
# 1355| getCondition(): [VariableAccess] y
|
|
# 1355| Type = [LongType] long
|
|
# 1355| ValueCategory = prvalue(load)
|
|
# 1355| getElse(): [VariableAccess] y
|
|
# 1355| Type = [LongType] long
|
|
# 1355| ValueCategory = prvalue(load)
|
|
# 1355| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1355| Conversion = [BoolConversion] conversion to bool
|
|
# 1355| Type = [BoolType] bool
|
|
# 1355| ValueCategory = prvalue
|
|
# 1355| getRValue().getFullyConverted(): [CStyleCast] (int)...
|
|
# 1355| Conversion = [IntegralConversion] integral conversion
|
|
# 1355| Type = [IntType] int
|
|
# 1355| ValueCategory = prvalue
|
|
# 1357| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1357| getExpr(): [AssignExpr] ... = ...
|
|
# 1357| Type = [IntType] int
|
|
# 1357| ValueCategory = lvalue
|
|
# 1357| getLValue(): [VariableAccess] z
|
|
# 1357| Type = [IntType] int
|
|
# 1357| ValueCategory = lvalue
|
|
# 1357| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 1357| Type = [IntType] int
|
|
# 1357| ValueCategory = prvalue(load)
|
|
# 1357| getCondition(): [LogicalOrExpr] ... || ...
|
|
# 1357| Type = [BoolType] bool
|
|
# 1357| ValueCategory = prvalue
|
|
# 1357| getLeftOperand(): [LogicalAndExpr] ... && ...
|
|
# 1357| Type = [BoolType] bool
|
|
# 1357| ValueCategory = prvalue
|
|
# 1357| getLeftOperand(): [VariableAccess] x
|
|
# 1357| Type = [IntType] int
|
|
# 1357| ValueCategory = prvalue(load)
|
|
# 1357| getRightOperand(): [VariableAccess] b
|
|
# 1357| Type = [BoolType] bool
|
|
# 1357| ValueCategory = prvalue(load)
|
|
# 1357| getLeftOperand().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1357| Conversion = [BoolConversion] conversion to bool
|
|
# 1357| Type = [BoolType] bool
|
|
# 1357| ValueCategory = prvalue
|
|
# 1357| getRightOperand(): [VariableAccess] y
|
|
# 1357| Type = [LongType] long
|
|
# 1357| ValueCategory = prvalue(load)
|
|
# 1357| getRightOperand().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1357| Conversion = [BoolConversion] conversion to bool
|
|
# 1357| Type = [BoolType] bool
|
|
# 1357| ValueCategory = prvalue
|
|
# 1357| getElse(): [VariableAccess] x
|
|
# 1357| Type = [IntType] int
|
|
# 1357| ValueCategory = prvalue(load)
|
|
# 1357| getCondition().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 1357| Type = [BoolType] bool
|
|
# 1357| ValueCategory = prvalue
|
|
# 1358| getStmt(8): [ReturnStmt] return ...
|
|
# 1360| [TopLevelFunction] bool predicateA()
|
|
# 1360| <params>:
|
|
# 1361| [TopLevelFunction] bool predicateB()
|
|
# 1361| <params>:
|
|
# 1363| [TopLevelFunction] int shortCircuitConditional(int, int)
|
|
# 1363| <params>:
|
|
# 1363| getParameter(0): [Parameter] x
|
|
# 1363| Type = [IntType] int
|
|
# 1363| getParameter(1): [Parameter] y
|
|
# 1363| Type = [IntType] int
|
|
# 1363| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1364| getStmt(0): [ReturnStmt] return ...
|
|
# 1364| getExpr(): [ConditionalExpr] ... ? ... : ...
|
|
# 1364| Type = [IntType] int
|
|
# 1364| ValueCategory = prvalue(load)
|
|
# 1364| getCondition(): [LogicalAndExpr] ... && ...
|
|
# 1364| Type = [BoolType] bool
|
|
# 1364| ValueCategory = prvalue
|
|
# 1364| getLeftOperand(): [FunctionCall] call to predicateA
|
|
# 1364| Type = [BoolType] bool
|
|
# 1364| ValueCategory = prvalue
|
|
# 1364| getRightOperand(): [FunctionCall] call to predicateB
|
|
# 1364| Type = [BoolType] bool
|
|
# 1364| ValueCategory = prvalue
|
|
# 1364| getThen(): [VariableAccess] x
|
|
# 1364| Type = [IntType] int
|
|
# 1364| ValueCategory = prvalue(load)
|
|
# 1364| getElse(): [VariableAccess] y
|
|
# 1364| Type = [IntType] int
|
|
# 1364| ValueCategory = prvalue(load)
|
|
# 1367| [Operator,TopLevelFunction] void* operator new(size_t, void*)
|
|
# 1367| <params>:
|
|
# 1367| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1367| Type = [CTypedefType,Size_t] size_t
|
|
# 1367| getParameter(1): [Parameter] (unnamed parameter 1)
|
|
# 1367| Type = [VoidPointerType] void *
|
|
# 1369| [TopLevelFunction] void f(int*)
|
|
# 1369| <params>:
|
|
# 1369| getParameter(0): [Parameter] p
|
|
# 1369| Type = [IntPointerType] int *
|
|
# 1370| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1371| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1371| getExpr(): [NewExpr] new
|
|
# 1371| Type = [IntPointerType] int *
|
|
# 1371| ValueCategory = prvalue
|
|
# 1371| getAllocatorCall(): [FunctionCall] call to operator new
|
|
# 1371| Type = [VoidPointerType] void *
|
|
# 1371| ValueCategory = prvalue
|
|
# 1371| getArgument(0): [ErrorExpr] <error expr>
|
|
# 1371| Type = [LongType] unsigned long
|
|
# 1371| ValueCategory = prvalue
|
|
# 1371| getArgument(1): [VariableAccess] p
|
|
# 1371| Type = [IntPointerType] int *
|
|
# 1371| ValueCategory = prvalue(load)
|
|
# 1371| getArgument(1).getFullyConverted(): [CStyleCast] (void *)...
|
|
# 1371| Conversion = [PointerConversion] pointer conversion
|
|
# 1371| Type = [VoidPointerType] void *
|
|
# 1371| ValueCategory = prvalue
|
|
# 1372| getStmt(1): [ReturnStmt] return ...
|
|
# 1375| [FunctionTemplateInstantiation,TopLevelFunction] Point defaultConstruct<Point>()
|
|
# 1375| <params>:
|
|
# 1375| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1376| getStmt(0): [ReturnStmt] return ...
|
|
# 1376| getExpr(): [Literal] 0
|
|
# 1376| Type = [Struct] Point
|
|
# 1376| Value = [Literal] 0
|
|
# 1376| ValueCategory = prvalue
|
|
# 1375| [FunctionTemplateInstantiation,TopLevelFunction] String defaultConstruct<String>()
|
|
# 1375| <params>:
|
|
# 1375| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1376| getStmt(0): [ReturnStmt] return ...
|
|
# 1376| getExpr(): [ConstructorCall] call to String
|
|
# 1376| Type = [VoidType] void
|
|
# 1376| ValueCategory = prvalue
|
|
# 1375| [TemplateFunction,TopLevelFunction] T defaultConstruct<T>()
|
|
# 1375| <params>:
|
|
# 1375| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1376| getStmt(0): [ReturnStmt] return ...
|
|
# 1376| getExpr(): [Literal] 0
|
|
# 1376| Type = [TemplateParameter] T
|
|
# 1376| Value = [Literal] 0
|
|
# 1376| ValueCategory = prvalue
|
|
# 1376| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1376| Type = [TemplateParameter] T
|
|
# 1376| ValueCategory = prvalue(load)
|
|
# 1375| [FunctionTemplateInstantiation,TopLevelFunction] copy_constructor defaultConstruct<copy_constructor>()
|
|
# 1375| <params>:
|
|
# 1375| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1376| getStmt(0): [ReturnStmt] return ...
|
|
# 1376| getExpr(): [ConstructorCall] call to copy_constructor
|
|
# 1376| Type = [VoidType] void
|
|
# 1376| ValueCategory = prvalue
|
|
# 1375| [FunctionTemplateInstantiation,TopLevelFunction] destructor_only defaultConstruct<destructor_only>()
|
|
# 1375| <params>:
|
|
# 1375| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1376| getStmt(0): [ReturnStmt] return ...
|
|
# 1376| getExpr(): [Literal] 0
|
|
# 1376| Type = [Class] destructor_only
|
|
# 1376| Value = [Literal] 0
|
|
# 1376| ValueCategory = prvalue
|
|
# 1379| [CopyAssignmentOperator] constructor_only& constructor_only::operator=(constructor_only const&)
|
|
# 1379| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const constructor_only &
|
|
# 1379| [MoveAssignmentOperator] constructor_only& constructor_only::operator=(constructor_only&&)
|
|
# 1379| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] constructor_only &&
|
|
# 1379| [CopyConstructor] void constructor_only::constructor_only(constructor_only const&)
|
|
# 1379| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const constructor_only &
|
|
# 1379| [MoveConstructor] void constructor_only::constructor_only(constructor_only&&)
|
|
# 1379| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] constructor_only &&
|
|
# 1384| [Constructor] void constructor_only::constructor_only(int)
|
|
# 1384| <params>:
|
|
# 1384| getParameter(0): [Parameter] x
|
|
# 1384| Type = [IntType] int
|
|
# 1387| [CopyAssignmentOperator] copy_constructor& copy_constructor::operator=(copy_constructor const&)
|
|
# 1387| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const copy_constructor &
|
|
# 1392| [Constructor] void copy_constructor::copy_constructor()
|
|
# 1392| <params>:
|
|
# 1393| [CopyConstructor] void copy_constructor::copy_constructor(copy_constructor const&)
|
|
# 1393| <params>:
|
|
# 1393| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1393| Type = [LValueReferenceType] const copy_constructor &
|
|
# 1395| [MemberFunction] void copy_constructor::method()
|
|
# 1395| <params>:
|
|
# 1398| [CopyAssignmentOperator] destructor_only& destructor_only::operator=(destructor_only const&)
|
|
# 1398| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const destructor_only &
|
|
# 1398| [Constructor] void destructor_only::destructor_only()
|
|
# 1398| <params>:
|
|
# 1400| [Destructor] void destructor_only::~destructor_only()
|
|
# 1400| <params>:
|
|
# 1402| [MemberFunction] void destructor_only::method()
|
|
# 1402| <params>:
|
|
# 1406| [FunctionTemplateInstantiation,TopLevelFunction] void acceptRef<Point>(Point const&)
|
|
# 1406| <params>:
|
|
# 1406| getParameter(0): [Parameter] v
|
|
# 1406| Type = [LValueReferenceType] const Point &
|
|
# 1406| [FunctionTemplateInstantiation,TopLevelFunction] void acceptRef<String>(String const&)
|
|
# 1406| <params>:
|
|
# 1406| getParameter(0): [Parameter] v
|
|
# 1406| Type = [LValueReferenceType] const String &
|
|
# 1406| [TemplateFunction,TopLevelFunction] void acceptRef<T>(T const&)
|
|
# 1406| <params>:
|
|
# 1406| getParameter(0): [Parameter] v
|
|
# 1406| Type = [LValueReferenceType] const T &
|
|
# 1406| [FunctionTemplateInstantiation,TopLevelFunction] void acceptRef<copy_constructor>(copy_constructor const&)
|
|
# 1406| <params>:
|
|
# 1406| getParameter(0): [Parameter] v
|
|
# 1406| Type = [LValueReferenceType] const copy_constructor &
|
|
# 1406| [FunctionTemplateInstantiation,TopLevelFunction] void acceptRef<destructor_only>(destructor_only const&)
|
|
# 1406| <params>:
|
|
# 1406| getParameter(0): [Parameter] v
|
|
# 1406| Type = [LValueReferenceType] const destructor_only &
|
|
# 1409| [FunctionTemplateInstantiation,TopLevelFunction] void acceptValue<Point>(Point)
|
|
# 1409| <params>:
|
|
# 1409| getParameter(0): [Parameter] v
|
|
# 1409| Type = [Struct] Point
|
|
# 1409| [FunctionTemplateInstantiation,TopLevelFunction] void acceptValue<String>(String)
|
|
# 1409| <params>:
|
|
# 1409| getParameter(0): [Parameter] v
|
|
# 1409| Type = [Struct] String
|
|
# 1409| [TemplateFunction,TopLevelFunction] void acceptValue<T>(T)
|
|
# 1409| <params>:
|
|
# 1409| getParameter(0): [Parameter] v
|
|
# 1409| Type = [TemplateParameter] T
|
|
# 1409| [FunctionTemplateInstantiation,TopLevelFunction] void acceptValue<copy_constructor>(copy_constructor)
|
|
# 1409| <params>:
|
|
# 1409| getParameter(0): [Parameter] v
|
|
# 1409| Type = [Class] copy_constructor
|
|
# 1409| [FunctionTemplateInstantiation,TopLevelFunction] void acceptValue<destructor_only>(destructor_only)
|
|
# 1409| <params>:
|
|
# 1409| getParameter(0): [Parameter] v
|
|
# 1409| Type = [Class] destructor_only
|
|
# 1412| [FunctionTemplateInstantiation,TopLevelFunction] POD_Derived returnValue<POD_Derived>()
|
|
# 1412| <params>:
|
|
# 1412| [FunctionTemplateInstantiation,TopLevelFunction] POD_Middle returnValue<POD_Middle>()
|
|
# 1412| <params>:
|
|
# 1412| [FunctionTemplateInstantiation,TopLevelFunction] Point returnValue<Point>()
|
|
# 1412| <params>:
|
|
# 1412| [FunctionTemplateInstantiation,TopLevelFunction] String returnValue<String>()
|
|
# 1412| <params>:
|
|
# 1412| [TemplateFunction,TopLevelFunction] T returnValue<T>()
|
|
# 1412| <params>:
|
|
# 1412| [FunctionTemplateInstantiation,TopLevelFunction] UnusualFields returnValue<UnusualFields>()
|
|
# 1412| <params>:
|
|
# 1412| [FunctionTemplateInstantiation,TopLevelFunction] copy_constructor returnValue<copy_constructor>()
|
|
# 1412| <params>:
|
|
# 1412| [FunctionTemplateInstantiation,TopLevelFunction] destructor_only returnValue<destructor_only>()
|
|
# 1412| <params>:
|
|
# 1414| [TopLevelFunction] void temporary_string()
|
|
# 1414| <params>:
|
|
# 1414| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1415| getStmt(0): [DeclStmt] declaration
|
|
# 1415| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 1415| Type = [Struct] String
|
|
# 1415| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 1415| getExpr(): [FunctionCall] call to returnValue
|
|
# 1415| Type = [Struct] String
|
|
# 1415| ValueCategory = prvalue
|
|
# 1416| getStmt(1): [DeclStmt] declaration
|
|
# 1416| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rs
|
|
# 1416| Type = [LValueReferenceType] const String &
|
|
# 1416| getVariable().getInitializer(): [Initializer] initializer for rs
|
|
# 1416| getExpr(): [FunctionCall] call to returnValue
|
|
# 1416| Type = [Struct] String
|
|
# 1416| ValueCategory = prvalue
|
|
# 1416| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1416| Type = [LValueReferenceType] const String &
|
|
# 1416| ValueCategory = prvalue
|
|
# 1416| getExpr(): [CStyleCast] (const String)...
|
|
# 1416| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1416| Type = [SpecifiedType] const String
|
|
# 1416| ValueCategory = lvalue
|
|
# 1416| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1416| Type = [Struct] String
|
|
# 1416| ValueCategory = lvalue
|
|
# 1418| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1418| getExpr(): [FunctionCall] call to acceptRef
|
|
# 1418| Type = [VoidType] void
|
|
# 1418| ValueCategory = prvalue
|
|
# 1418| getArgument(0): [VariableAccess] s
|
|
# 1418| Type = [Struct] String
|
|
# 1418| ValueCategory = lvalue
|
|
# 1418| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1418| Type = [LValueReferenceType] const String &
|
|
# 1418| ValueCategory = prvalue
|
|
# 1418| getExpr(): [CStyleCast] (const String)...
|
|
# 1418| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1418| Type = [SpecifiedType] const String
|
|
# 1418| ValueCategory = lvalue
|
|
# 1419| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1419| getExpr(): [FunctionCall] call to acceptRef
|
|
# 1419| Type = [VoidType] void
|
|
# 1419| ValueCategory = prvalue
|
|
# 1419| getArgument(0): [ConstructorCall] call to String
|
|
# 1419| Type = [VoidType] void
|
|
# 1419| ValueCategory = prvalue
|
|
# 1419| getArgument(0): foo
|
|
# 1419| Type = [ArrayType] const char[4]
|
|
# 1419| Value = [StringLiteral] "foo"
|
|
# 1419| ValueCategory = lvalue
|
|
# 1419| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1419| Type = [PointerType] const char *
|
|
# 1419| ValueCategory = prvalue
|
|
# 1419| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 1419| Type = [VoidType] void
|
|
# 1419| ValueCategory = prvalue
|
|
# 1419| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1419| Type = [SpecifiedType] const String
|
|
# 1419| ValueCategory = xvalue
|
|
# 1419| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1419| Type = [LValueReferenceType] const String &
|
|
# 1419| ValueCategory = prvalue
|
|
# 1419| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1419| Type = [SpecifiedType] const String
|
|
# 1419| ValueCategory = lvalue
|
|
# 1420| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1420| getExpr(): [FunctionCall] call to acceptValue
|
|
# 1420| Type = [VoidType] void
|
|
# 1420| ValueCategory = prvalue
|
|
# 1420| getArgument(0): [ConstructorCall] call to String
|
|
# 1420| Type = [VoidType] void
|
|
# 1420| ValueCategory = prvalue
|
|
# 1420| getArgument(0): [VariableAccess] s
|
|
# 1420| Type = [Struct] String
|
|
# 1420| ValueCategory = lvalue
|
|
# 1420| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1420| Type = [LValueReferenceType] const String &
|
|
# 1420| ValueCategory = prvalue
|
|
# 1420| getExpr(): [CStyleCast] (const String)...
|
|
# 1420| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1420| Type = [SpecifiedType] const String
|
|
# 1420| ValueCategory = lvalue
|
|
# 1420| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 1420| Type = [VoidType] void
|
|
# 1420| ValueCategory = prvalue
|
|
# 1420| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1420| Type = [Struct] String
|
|
# 1420| ValueCategory = xvalue
|
|
# 1420| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1420| Type = [Struct] String
|
|
# 1420| ValueCategory = lvalue
|
|
# 1421| getStmt(5): [ExprStmt] ExprStmt
|
|
# 1421| getExpr(): [FunctionCall] call to acceptValue
|
|
# 1421| Type = [VoidType] void
|
|
# 1421| ValueCategory = prvalue
|
|
# 1421| getArgument(0): [ConstructorCall] call to String
|
|
# 1421| Type = [VoidType] void
|
|
# 1421| ValueCategory = prvalue
|
|
# 1421| getArgument(0): foo
|
|
# 1421| Type = [ArrayType] const char[4]
|
|
# 1421| Value = [StringLiteral] "foo"
|
|
# 1421| ValueCategory = lvalue
|
|
# 1421| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1421| Type = [PointerType] const char *
|
|
# 1421| ValueCategory = prvalue
|
|
# 1421| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 1421| Type = [VoidType] void
|
|
# 1421| ValueCategory = prvalue
|
|
# 1421| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1421| Type = [Struct] String
|
|
# 1421| ValueCategory = xvalue
|
|
# 1421| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1421| Type = [Struct] String
|
|
# 1421| ValueCategory = lvalue
|
|
# 1422| getStmt(6): [ExprStmt] ExprStmt
|
|
# 1422| getExpr(): [FunctionCall] call to c_str
|
|
# 1422| Type = [PointerType] const char *
|
|
# 1422| ValueCategory = prvalue
|
|
# 1422| getQualifier(): [ConstructorCall] call to String
|
|
# 1422| Type = [VoidType] void
|
|
# 1422| ValueCategory = prvalue
|
|
# 1422| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 1422| Type = [VoidType] void
|
|
# 1422| ValueCategory = prvalue
|
|
# 1422| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1422| Type = [Struct] String
|
|
# 1422| ValueCategory = xvalue
|
|
# 1422| getQualifier().getFullyConverted(): [CStyleCast] (const String)...
|
|
# 1422| Conversion = [PrvalueAdjustmentConversion] prvalue adjustment conversion
|
|
# 1422| Type = [SpecifiedType] const String
|
|
# 1422| ValueCategory = prvalue
|
|
# 1422| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1422| Type = [Struct] String
|
|
# 1422| ValueCategory = prvalue(load)
|
|
# 1423| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1423| getExpr(): [FunctionCall] call to c_str
|
|
# 1423| Type = [PointerType] const char *
|
|
# 1423| ValueCategory = prvalue
|
|
# 1423| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1423| Type = [Struct] String
|
|
# 1423| ValueCategory = prvalue
|
|
# 1423| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 1423| Type = [VoidType] void
|
|
# 1423| ValueCategory = prvalue
|
|
# 1423| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1423| Type = [Struct] String
|
|
# 1423| ValueCategory = xvalue
|
|
# 1423| getQualifier().getFullyConverted(): [CStyleCast] (const String)...
|
|
# 1423| Conversion = [PrvalueAdjustmentConversion] prvalue adjustment conversion
|
|
# 1423| Type = [SpecifiedType] const String
|
|
# 1423| ValueCategory = prvalue
|
|
# 1423| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1423| Type = [Struct] String
|
|
# 1423| ValueCategory = prvalue(load)
|
|
# 1425| getStmt(8): [ExprStmt] ExprStmt
|
|
# 1425| getExpr(): [FunctionCall] call to defaultConstruct
|
|
# 1425| Type = [Struct] String
|
|
# 1425| ValueCategory = prvalue
|
|
# 1425| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 1425| Type = [VoidType] void
|
|
# 1425| ValueCategory = prvalue
|
|
# 1425| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1425| Type = [Struct] String
|
|
# 1425| ValueCategory = xvalue
|
|
# 1425| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1425| Type = [Struct] String
|
|
# 1425| ValueCategory = prvalue
|
|
# 1426| getStmt(9): [ReturnStmt] return ...
|
|
# 1426| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 1426| Type = [VoidType] void
|
|
# 1426| ValueCategory = prvalue
|
|
# 1426| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1426| Type = [Struct] String
|
|
# 1426| ValueCategory = xvalue
|
|
# 1426| getImplicitDestructorCall(1): [DestructorCall] call to ~String
|
|
# 1426| Type = [VoidType] void
|
|
# 1426| ValueCategory = prvalue
|
|
# 1426| getQualifier(): [VariableAccess] s
|
|
# 1426| Type = [Struct] String
|
|
# 1426| ValueCategory = lvalue
|
|
# 1428| [TopLevelFunction] void temporary_destructor_only()
|
|
# 1428| <params>:
|
|
# 1428| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1429| getStmt(0): [DeclStmt] declaration
|
|
# 1429| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 1429| Type = [Class] destructor_only
|
|
# 1429| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 1429| getExpr(): [FunctionCall] call to returnValue
|
|
# 1429| Type = [Class] destructor_only
|
|
# 1429| ValueCategory = prvalue
|
|
# 1430| getStmt(1): [DeclStmt] declaration
|
|
# 1430| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rd
|
|
# 1430| Type = [LValueReferenceType] const destructor_only &
|
|
# 1430| getVariable().getInitializer(): [Initializer] initializer for rd
|
|
# 1430| getExpr(): [FunctionCall] call to returnValue
|
|
# 1430| Type = [Class] destructor_only
|
|
# 1430| ValueCategory = prvalue
|
|
# 1430| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1430| Type = [LValueReferenceType] const destructor_only &
|
|
# 1430| ValueCategory = prvalue
|
|
# 1430| getExpr(): [CStyleCast] (const destructor_only)...
|
|
# 1430| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1430| Type = [SpecifiedType] const destructor_only
|
|
# 1430| ValueCategory = lvalue
|
|
# 1430| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1430| Type = [Class] destructor_only
|
|
# 1430| ValueCategory = lvalue
|
|
# 1431| getStmt(2): [DeclStmt] declaration
|
|
# 1431| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d2
|
|
# 1431| Type = [Class] destructor_only
|
|
# 1432| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1432| getExpr(): [FunctionCall] call to acceptRef
|
|
# 1432| Type = [VoidType] void
|
|
# 1432| ValueCategory = prvalue
|
|
# 1432| getArgument(0): [VariableAccess] d
|
|
# 1432| Type = [Class] destructor_only
|
|
# 1432| ValueCategory = lvalue
|
|
# 1432| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1432| Type = [LValueReferenceType] const destructor_only &
|
|
# 1432| ValueCategory = prvalue
|
|
# 1432| getExpr(): [CStyleCast] (const destructor_only)...
|
|
# 1432| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1432| Type = [SpecifiedType] const destructor_only
|
|
# 1432| ValueCategory = lvalue
|
|
# 1433| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1433| getExpr(): [FunctionCall] call to acceptValue
|
|
# 1433| Type = [VoidType] void
|
|
# 1433| ValueCategory = prvalue
|
|
# 1433| getArgument(0): [VariableAccess] d
|
|
# 1433| Type = [Class] destructor_only
|
|
# 1433| ValueCategory = prvalue(load)
|
|
# 1433| getImplicitDestructorCall(0): [DestructorCall] call to ~destructor_only
|
|
# 1433| Type = [VoidType] void
|
|
# 1433| ValueCategory = prvalue
|
|
# 1433| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1433| Type = [Class] destructor_only
|
|
# 1433| ValueCategory = xvalue
|
|
# 1433| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1433| Type = [Class] destructor_only
|
|
# 1433| ValueCategory = lvalue
|
|
# 1434| getStmt(5): [ExprStmt] ExprStmt
|
|
# 1434| getExpr(): [FunctionCall] call to method
|
|
# 1434| Type = [VoidType] void
|
|
# 1434| ValueCategory = prvalue
|
|
# 1434| getQualifier(): [Literal] 0
|
|
# 1434| Type = [Class] destructor_only
|
|
# 1434| Value = [Literal] 0
|
|
# 1434| ValueCategory = prvalue
|
|
# 1434| getImplicitDestructorCall(0): [DestructorCall] call to ~destructor_only
|
|
# 1434| Type = [VoidType] void
|
|
# 1434| ValueCategory = prvalue
|
|
# 1434| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1434| Type = [Class] destructor_only
|
|
# 1434| ValueCategory = xvalue
|
|
# 1434| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1434| Type = [Class] destructor_only
|
|
# 1434| ValueCategory = prvalue(load)
|
|
# 1435| getStmt(6): [ExprStmt] ExprStmt
|
|
# 1435| getExpr(): [FunctionCall] call to method
|
|
# 1435| Type = [VoidType] void
|
|
# 1435| ValueCategory = prvalue
|
|
# 1435| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1435| Type = [Class] destructor_only
|
|
# 1435| ValueCategory = prvalue
|
|
# 1435| getImplicitDestructorCall(0): [DestructorCall] call to ~destructor_only
|
|
# 1435| Type = [VoidType] void
|
|
# 1435| ValueCategory = prvalue
|
|
# 1435| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1435| Type = [Class] destructor_only
|
|
# 1435| ValueCategory = xvalue
|
|
# 1435| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1435| Type = [Class] destructor_only
|
|
# 1435| ValueCategory = prvalue(load)
|
|
# 1437| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1437| getExpr(): [FunctionCall] call to defaultConstruct
|
|
# 1437| Type = [Class] destructor_only
|
|
# 1437| ValueCategory = prvalue
|
|
# 1437| getImplicitDestructorCall(0): [DestructorCall] call to ~destructor_only
|
|
# 1437| Type = [VoidType] void
|
|
# 1437| ValueCategory = prvalue
|
|
# 1437| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1437| Type = [Class] destructor_only
|
|
# 1437| ValueCategory = xvalue
|
|
# 1437| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1437| Type = [Class] destructor_only
|
|
# 1437| ValueCategory = prvalue
|
|
# 1438| getStmt(8): [ReturnStmt] return ...
|
|
# 1438| getImplicitDestructorCall(0): [DestructorCall] call to ~destructor_only
|
|
# 1438| Type = [VoidType] void
|
|
# 1438| ValueCategory = prvalue
|
|
# 1438| getQualifier(): [VariableAccess] d2
|
|
# 1438| Type = [Class] destructor_only
|
|
# 1438| ValueCategory = lvalue
|
|
# 1438| getImplicitDestructorCall(1): [DestructorCall] call to ~destructor_only
|
|
# 1438| Type = [VoidType] void
|
|
# 1438| ValueCategory = prvalue
|
|
# 1438| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 1438| Type = [Class] destructor_only
|
|
# 1438| ValueCategory = xvalue
|
|
# 1438| getImplicitDestructorCall(2): [DestructorCall] call to ~destructor_only
|
|
# 1438| Type = [VoidType] void
|
|
# 1438| ValueCategory = prvalue
|
|
# 1438| getQualifier(): [VariableAccess] d
|
|
# 1438| Type = [Class] destructor_only
|
|
# 1438| ValueCategory = lvalue
|
|
# 1440| [TopLevelFunction] void temporary_copy_constructor()
|
|
# 1440| <params>:
|
|
# 1440| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1441| getStmt(0): [DeclStmt] declaration
|
|
# 1441| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 1441| Type = [Class] copy_constructor
|
|
# 1441| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 1441| getExpr(): [FunctionCall] call to returnValue
|
|
# 1441| Type = [Class] copy_constructor
|
|
# 1441| ValueCategory = prvalue
|
|
# 1442| getStmt(1): [DeclStmt] declaration
|
|
# 1442| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rd
|
|
# 1442| Type = [LValueReferenceType] const copy_constructor &
|
|
# 1442| getVariable().getInitializer(): [Initializer] initializer for rd
|
|
# 1442| getExpr(): [FunctionCall] call to returnValue
|
|
# 1442| Type = [Class] copy_constructor
|
|
# 1442| ValueCategory = prvalue
|
|
# 1442| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1442| Type = [LValueReferenceType] const copy_constructor &
|
|
# 1442| ValueCategory = prvalue
|
|
# 1442| getExpr(): [CStyleCast] (const copy_constructor)...
|
|
# 1442| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1442| Type = [SpecifiedType] const copy_constructor
|
|
# 1442| ValueCategory = lvalue
|
|
# 1442| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1442| Type = [Class] copy_constructor
|
|
# 1442| ValueCategory = lvalue
|
|
# 1443| getStmt(2): [DeclStmt] declaration
|
|
# 1443| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d2
|
|
# 1443| Type = [Class] copy_constructor
|
|
# 1443| getVariable().getInitializer(): [Initializer] initializer for d2
|
|
# 1443| getExpr(): [ConstructorCall] call to copy_constructor
|
|
# 1443| Type = [VoidType] void
|
|
# 1443| ValueCategory = prvalue
|
|
# 1444| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1444| getExpr(): [FunctionCall] call to acceptRef
|
|
# 1444| Type = [VoidType] void
|
|
# 1444| ValueCategory = prvalue
|
|
# 1444| getArgument(0): [VariableAccess] d
|
|
# 1444| Type = [Class] copy_constructor
|
|
# 1444| ValueCategory = lvalue
|
|
# 1444| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1444| Type = [LValueReferenceType] const copy_constructor &
|
|
# 1444| ValueCategory = prvalue
|
|
# 1444| getExpr(): [CStyleCast] (const copy_constructor)...
|
|
# 1444| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1444| Type = [SpecifiedType] const copy_constructor
|
|
# 1444| ValueCategory = lvalue
|
|
# 1445| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1445| getExpr(): [FunctionCall] call to acceptValue
|
|
# 1445| Type = [VoidType] void
|
|
# 1445| ValueCategory = prvalue
|
|
# 1445| getArgument(0): [ConstructorCall] call to copy_constructor
|
|
# 1445| Type = [VoidType] void
|
|
# 1445| ValueCategory = prvalue
|
|
# 1445| getArgument(0): [VariableAccess] d
|
|
# 1445| Type = [Class] copy_constructor
|
|
# 1445| ValueCategory = lvalue
|
|
# 1445| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1445| Type = [LValueReferenceType] const copy_constructor &
|
|
# 1445| ValueCategory = prvalue
|
|
# 1445| getExpr(): [CStyleCast] (const copy_constructor)...
|
|
# 1445| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1445| Type = [SpecifiedType] const copy_constructor
|
|
# 1445| ValueCategory = lvalue
|
|
# 1445| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1445| Type = [Class] copy_constructor
|
|
# 1445| ValueCategory = lvalue
|
|
# 1446| getStmt(5): [ExprStmt] ExprStmt
|
|
# 1446| getExpr(): [FunctionCall] call to method
|
|
# 1446| Type = [VoidType] void
|
|
# 1446| ValueCategory = prvalue
|
|
# 1446| getQualifier(): [ConstructorCall] call to copy_constructor
|
|
# 1446| Type = [VoidType] void
|
|
# 1446| ValueCategory = prvalue
|
|
# 1446| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1446| Type = [Class] copy_constructor
|
|
# 1446| ValueCategory = prvalue(load)
|
|
# 1447| getStmt(6): [ExprStmt] ExprStmt
|
|
# 1447| getExpr(): [FunctionCall] call to method
|
|
# 1447| Type = [VoidType] void
|
|
# 1447| ValueCategory = prvalue
|
|
# 1447| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1447| Type = [Class] copy_constructor
|
|
# 1447| ValueCategory = prvalue
|
|
# 1447| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1447| Type = [Class] copy_constructor
|
|
# 1447| ValueCategory = prvalue(load)
|
|
# 1448| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1448| getExpr(): [FunctionCall] call to defaultConstruct
|
|
# 1448| Type = [Class] copy_constructor
|
|
# 1448| ValueCategory = prvalue
|
|
# 1448| getExpr().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1448| Type = [Class] copy_constructor
|
|
# 1448| ValueCategory = prvalue
|
|
# 1450| getStmt(8): [DeclStmt] declaration
|
|
# 1450| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1450| Type = [IntType] int
|
|
# 1450| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 1450| getExpr(): [ValueFieldAccess] y
|
|
# 1450| Type = [IntType] int
|
|
# 1450| ValueCategory = prvalue
|
|
# 1450| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1450| Type = [Class] copy_constructor
|
|
# 1450| ValueCategory = prvalue
|
|
# 1450| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1450| Type = [Class] copy_constructor
|
|
# 1450| ValueCategory = prvalue(load)
|
|
# 1451| getStmt(9): [ReturnStmt] return ...
|
|
# 1453| [TopLevelFunction] void temporary_point()
|
|
# 1453| <params>:
|
|
# 1453| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1454| getStmt(0): [DeclStmt] declaration
|
|
# 1454| getDeclarationEntry(0): [VariableDeclarationEntry] definition of p
|
|
# 1454| Type = [Struct] Point
|
|
# 1454| getVariable().getInitializer(): [Initializer] initializer for p
|
|
# 1454| getExpr(): [FunctionCall] call to returnValue
|
|
# 1454| Type = [Struct] Point
|
|
# 1454| ValueCategory = prvalue
|
|
# 1455| getStmt(1): [DeclStmt] declaration
|
|
# 1455| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rp
|
|
# 1455| Type = [LValueReferenceType] const Point &
|
|
# 1455| getVariable().getInitializer(): [Initializer] initializer for rp
|
|
# 1455| getExpr(): [FunctionCall] call to returnValue
|
|
# 1455| Type = [Struct] Point
|
|
# 1455| ValueCategory = prvalue
|
|
# 1455| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1455| Type = [LValueReferenceType] const Point &
|
|
# 1455| ValueCategory = prvalue
|
|
# 1455| getExpr(): [CStyleCast] (const Point)...
|
|
# 1455| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1455| Type = [SpecifiedType] const Point
|
|
# 1455| ValueCategory = lvalue
|
|
# 1455| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1455| Type = [Struct] Point
|
|
# 1455| ValueCategory = lvalue
|
|
# 1457| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1457| getExpr(): [FunctionCall] call to acceptRef
|
|
# 1457| Type = [VoidType] void
|
|
# 1457| ValueCategory = prvalue
|
|
# 1457| getArgument(0): [VariableAccess] p
|
|
# 1457| Type = [Struct] Point
|
|
# 1457| ValueCategory = lvalue
|
|
# 1457| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1457| Type = [LValueReferenceType] const Point &
|
|
# 1457| ValueCategory = prvalue
|
|
# 1457| getExpr(): [CStyleCast] (const Point)...
|
|
# 1457| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1457| Type = [SpecifiedType] const Point
|
|
# 1457| ValueCategory = lvalue
|
|
# 1458| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1458| getExpr(): [FunctionCall] call to acceptValue
|
|
# 1458| Type = [VoidType] void
|
|
# 1458| ValueCategory = prvalue
|
|
# 1458| getArgument(0): [VariableAccess] p
|
|
# 1458| Type = [Struct] Point
|
|
# 1458| ValueCategory = prvalue(load)
|
|
# 1459| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1459| getExpr(): [ValueFieldAccess] x
|
|
# 1459| Type = [IntType] int
|
|
# 1459| Value = [ValueFieldAccess] 0
|
|
# 1459| ValueCategory = prvalue
|
|
# 1459| getQualifier(): [Literal] 0
|
|
# 1459| Type = [Struct] Point
|
|
# 1459| Value = [Literal] 0
|
|
# 1459| ValueCategory = prvalue
|
|
# 1459| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 1459| Type = [Struct] Point
|
|
# 1459| ValueCategory = prvalue(load)
|
|
# 1460| getStmt(5): [DeclStmt] declaration
|
|
# 1460| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1460| Type = [IntType] int
|
|
# 1460| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 1460| getExpr(): [ValueFieldAccess] y
|
|
# 1460| Type = [IntType] int
|
|
# 1460| ValueCategory = prvalue
|
|
# 1460| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1460| Type = [Struct] Point
|
|
# 1460| ValueCategory = prvalue
|
|
# 1462| getStmt(6): [ExprStmt] ExprStmt
|
|
# 1462| getExpr(): [FunctionCall] call to defaultConstruct
|
|
# 1462| Type = [Struct] Point
|
|
# 1462| ValueCategory = prvalue
|
|
# 1463| getStmt(7): [ReturnStmt] return ...
|
|
# 1465| [CopyAssignmentOperator] UnusualFields& UnusualFields::operator=(UnusualFields const&)
|
|
# 1465| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const UnusualFields &
|
|
# 1465| [Constructor] void UnusualFields::UnusualFields()
|
|
# 1465| <params>:
|
|
# 1465| [CopyConstructor] void UnusualFields::UnusualFields(UnusualFields const&)
|
|
# 1465| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const UnusualFields &
|
|
# 1465| [MoveConstructor] void UnusualFields::UnusualFields(UnusualFields&&)
|
|
# 1465| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] UnusualFields &&
|
|
# 1470| [TopLevelFunction] void temporary_unusual_fields()
|
|
# 1470| <params>:
|
|
# 1470| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1471| getStmt(0): [DeclStmt] declaration
|
|
# 1471| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rx
|
|
# 1471| Type = [LValueReferenceType] const int &
|
|
# 1471| getVariable().getInitializer(): [Initializer] initializer for rx
|
|
# 1471| getExpr(): [ValueFieldAccess] r
|
|
# 1471| Type = [LValueReferenceType] int &
|
|
# 1471| ValueCategory = prvalue
|
|
# 1471| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1471| Type = [Struct] UnusualFields
|
|
# 1471| ValueCategory = prvalue
|
|
# 1471| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1471| Type = [LValueReferenceType] const int &
|
|
# 1471| ValueCategory = prvalue
|
|
# 1471| getExpr(): [CStyleCast] (const int)...
|
|
# 1471| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1471| Type = [SpecifiedType] const int
|
|
# 1471| ValueCategory = lvalue
|
|
# 1471| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1471| Type = [IntType] int
|
|
# 1471| ValueCategory = lvalue
|
|
# 1472| getStmt(1): [DeclStmt] declaration
|
|
# 1472| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1472| Type = [IntType] int
|
|
# 1472| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 1472| getExpr(): [ValueFieldAccess] r
|
|
# 1472| Type = [LValueReferenceType] int &
|
|
# 1472| ValueCategory = prvalue
|
|
# 1472| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1472| Type = [Struct] UnusualFields
|
|
# 1472| ValueCategory = prvalue
|
|
# 1472| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1472| Type = [IntType] int
|
|
# 1472| ValueCategory = prvalue(load)
|
|
# 1474| getStmt(2): [DeclStmt] declaration
|
|
# 1474| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rf
|
|
# 1474| Type = [LValueReferenceType] const float &
|
|
# 1474| getVariable().getInitializer(): [Initializer] initializer for rf
|
|
# 1474| getExpr(): [ArrayExpr] access to array
|
|
# 1474| Type = [FloatType] float
|
|
# 1474| ValueCategory = lvalue
|
|
# 1474| getArrayBase(): [ValueFieldAccess] a
|
|
# 1474| Type = [ArrayType] float[10]
|
|
# 1474| ValueCategory = prvalue
|
|
# 1474| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1474| Type = [Struct] UnusualFields
|
|
# 1474| ValueCategory = prvalue
|
|
# 1474| getArrayOffset(): [Literal] 3
|
|
# 1474| Type = [IntType] int
|
|
# 1474| Value = [Literal] 3
|
|
# 1474| ValueCategory = prvalue
|
|
# 1474| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1474| Type = [PointerType] float *
|
|
# 1474| ValueCategory = prvalue
|
|
# 1474| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1474| Type = [LValueReferenceType] const float &
|
|
# 1474| ValueCategory = prvalue
|
|
# 1474| getExpr(): [CStyleCast] (const float)...
|
|
# 1474| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1474| Type = [SpecifiedType] const float
|
|
# 1474| ValueCategory = lvalue
|
|
# 1475| getStmt(3): [DeclStmt] declaration
|
|
# 1475| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f
|
|
# 1475| Type = [FloatType] float
|
|
# 1475| getVariable().getInitializer(): [Initializer] initializer for f
|
|
# 1475| getExpr(): [ArrayExpr] access to array
|
|
# 1475| Type = [FloatType] float
|
|
# 1475| ValueCategory = prvalue(load)
|
|
# 1475| getArrayBase(): [ValueFieldAccess] a
|
|
# 1475| Type = [ArrayType] float[10]
|
|
# 1475| ValueCategory = prvalue
|
|
# 1475| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1475| Type = [Struct] UnusualFields
|
|
# 1475| ValueCategory = prvalue
|
|
# 1475| getArrayOffset(): [Literal] 5
|
|
# 1475| Type = [IntType] int
|
|
# 1475| Value = [Literal] 5
|
|
# 1475| ValueCategory = prvalue
|
|
# 1475| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1475| Type = [PointerType] float *
|
|
# 1475| ValueCategory = prvalue
|
|
# 1476| getStmt(4): [ReturnStmt] return ...
|
|
# 1478| [CopyAssignmentOperator] POD_Base& POD_Base::operator=(POD_Base const&)
|
|
# 1478| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const POD_Base &
|
|
# 1478| [MoveAssignmentOperator] POD_Base& POD_Base::operator=(POD_Base&&)
|
|
# 1478| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] POD_Base &&
|
|
# 1481| [ConstMemberFunction] float POD_Base::f() const
|
|
# 1481| <params>:
|
|
# 1484| [CopyAssignmentOperator] POD_Middle& POD_Middle::operator=(POD_Middle const&)
|
|
# 1484| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const POD_Middle &
|
|
# 1484| [MoveAssignmentOperator] POD_Middle& POD_Middle::operator=(POD_Middle&&)
|
|
# 1484| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] POD_Middle &&
|
|
# 1484| [Constructor] void POD_Middle::POD_Middle()
|
|
# 1484| <params>:
|
|
# 1488| [CopyAssignmentOperator] POD_Derived& POD_Derived::operator=(POD_Derived const&)
|
|
# 1488| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const POD_Derived &
|
|
# 1488| [MoveAssignmentOperator] POD_Derived& POD_Derived::operator=(POD_Derived&&)
|
|
# 1488| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] POD_Derived &&
|
|
# 1488| [Constructor] void POD_Derived::POD_Derived()
|
|
# 1488| <params>:
|
|
# 1492| [TopLevelFunction] void temporary_hierarchy()
|
|
# 1492| <params>:
|
|
# 1492| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1493| getStmt(0): [DeclStmt] declaration
|
|
# 1493| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 1493| Type = [Struct] POD_Base
|
|
# 1493| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 1493| getExpr(): [FunctionCall] call to returnValue
|
|
# 1493| Type = [Struct] POD_Middle
|
|
# 1493| ValueCategory = prvalue
|
|
#-----| getExpr().getFullyConverted(): [CStyleCast] (POD_Base)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [Struct] POD_Base
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getExpr(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] POD_Middle
|
|
#-----| ValueCategory = xvalue
|
|
# 1494| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1494| getExpr(): [AssignExpr] ... = ...
|
|
# 1494| Type = [Struct] POD_Base
|
|
# 1494| ValueCategory = lvalue
|
|
# 1494| getLValue(): [VariableAccess] b
|
|
# 1494| Type = [Struct] POD_Base
|
|
# 1494| ValueCategory = lvalue
|
|
# 1494| getRValue(): [FunctionCall] call to returnValue
|
|
# 1494| Type = [Struct] POD_Derived
|
|
# 1494| ValueCategory = prvalue
|
|
# 1494| getRValue().getFullyConverted(): [CStyleCast] (POD_Base)...
|
|
# 1494| Conversion = [BaseClassConversion] base class conversion
|
|
# 1494| Type = [Struct] POD_Base
|
|
# 1494| ValueCategory = prvalue(load)
|
|
# 1494| getExpr(): [CStyleCast] (POD_Middle)...
|
|
# 1494| Conversion = [BaseClassConversion] base class conversion
|
|
# 1494| Type = [Struct] POD_Middle
|
|
# 1494| ValueCategory = lvalue
|
|
# 1494| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1494| Type = [Struct] POD_Derived
|
|
# 1494| ValueCategory = lvalue
|
|
# 1494| getExpr(): [ParenthesisExpr] (...)
|
|
# 1494| Type = [Struct] POD_Derived
|
|
# 1494| ValueCategory = prvalue
|
|
# 1495| getStmt(2): [DeclStmt] declaration
|
|
# 1495| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1495| Type = [IntType] int
|
|
# 1495| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 1495| getExpr(): [ValueFieldAccess] x
|
|
# 1495| Type = [IntType] int
|
|
# 1495| ValueCategory = prvalue(load)
|
|
# 1495| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1495| Type = [Struct] POD_Derived
|
|
# 1495| ValueCategory = prvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (POD_Base)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [Struct] POD_Base
|
|
#-----| ValueCategory = xvalue
|
|
#-----| getExpr(): [CStyleCast] (POD_Middle)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [Struct] POD_Middle
|
|
#-----| ValueCategory = xvalue
|
|
#-----| getExpr(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] POD_Derived
|
|
#-----| ValueCategory = xvalue
|
|
# 1496| getStmt(3): [DeclStmt] declaration
|
|
# 1496| getDeclarationEntry(0): [VariableDeclarationEntry] definition of f
|
|
# 1496| Type = [FloatType] float
|
|
# 1496| getVariable().getInitializer(): [Initializer] initializer for f
|
|
# 1496| getExpr(): [FunctionCall] call to f
|
|
# 1496| Type = [FloatType] float
|
|
# 1496| ValueCategory = prvalue
|
|
# 1496| getQualifier(): [FunctionCall] call to returnValue
|
|
# 1496| Type = [Struct] POD_Derived
|
|
# 1496| ValueCategory = prvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const POD_Base)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const POD_Base
|
|
#-----| ValueCategory = xvalue
|
|
#-----| getExpr(): [CStyleCast] (POD_Base)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [Struct] POD_Base
|
|
#-----| ValueCategory = xvalue
|
|
#-----| getExpr(): [CStyleCast] (POD_Middle)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [Struct] POD_Middle
|
|
#-----| ValueCategory = xvalue
|
|
#-----| getExpr(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] POD_Derived
|
|
#-----| ValueCategory = xvalue
|
|
# 1496| getExpr(): [ParenthesisExpr] (...)
|
|
# 1496| Type = [Struct] POD_Derived
|
|
# 1496| ValueCategory = prvalue
|
|
# 1497| getStmt(4): [ReturnStmt] return ...
|
|
# 1499| [CopyAssignmentOperator] Inheritance_Test_B& Inheritance_Test_B::operator=(Inheritance_Test_B const&)
|
|
# 1499| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Inheritance_Test_B &
|
|
# 1499| [Constructor] void Inheritance_Test_B::Inheritance_Test_B()
|
|
# 1499| <params>:
|
|
# 1500| [Destructor] void Inheritance_Test_B::~Inheritance_Test_B()
|
|
# 1500| <params>:
|
|
# 1500| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1500| getStmt(0): [ReturnStmt] return ...
|
|
# 1500| <destructions>:
|
|
# 1503| [CopyAssignmentOperator] Inheritance_Test_A& Inheritance_Test_A::operator=(Inheritance_Test_A const&)
|
|
# 1503| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Inheritance_Test_A &
|
|
# 1503| [MoveAssignmentOperator] Inheritance_Test_A& Inheritance_Test_A::operator=(Inheritance_Test_A&&)
|
|
# 1503| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Inheritance_Test_A &&
|
|
# 1503| [CopyConstructor] void Inheritance_Test_A::Inheritance_Test_A(Inheritance_Test_A const&)
|
|
# 1503| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Inheritance_Test_A &
|
|
# 1503| [MoveConstructor] void Inheritance_Test_A::Inheritance_Test_A(Inheritance_Test_A&&)
|
|
# 1503| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Inheritance_Test_A &&
|
|
# 1503| [Destructor] void Inheritance_Test_A::~Inheritance_Test_A()
|
|
# 1503| <params>:
|
|
# 1506| [Constructor] void Inheritance_Test_A::Inheritance_Test_A()
|
|
# 1506| <params>:
|
|
# 1506| <initializations>:
|
|
# 1506| getInitializer(0): (no string representation)
|
|
# 1506| Type = [Struct] Inheritance_Test_B
|
|
# 1506| ValueCategory = prvalue
|
|
# 1506| getInitializer(1): [ConstructorFieldInit] constructor init of field x
|
|
# 1506| Type = [IntType] int
|
|
# 1506| ValueCategory = prvalue
|
|
# 1506| getExpr(): [Literal] 42
|
|
# 1506| Type = [IntType] int
|
|
# 1506| Value = [Literal] 42
|
|
# 1506| ValueCategory = prvalue
|
|
# 1506| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1507| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1507| getExpr(): [AssignExpr] ... = ...
|
|
# 1507| Type = [IntType] int
|
|
# 1507| ValueCategory = lvalue
|
|
# 1507| getLValue(): [ImplicitThisFieldAccess,PointerFieldAccess] y
|
|
# 1507| Type = [IntType] int
|
|
# 1507| ValueCategory = lvalue
|
|
# 1507| getQualifier(): [ThisExpr] this
|
|
# 1507| Type = [PointerType] Inheritance_Test_A *
|
|
# 1507| ValueCategory = prvalue(load)
|
|
# 1507| getRValue(): [Literal] 3
|
|
# 1507| Type = [IntType] int
|
|
# 1507| Value = [Literal] 3
|
|
# 1507| ValueCategory = prvalue
|
|
# 1508| getStmt(1): [ReturnStmt] return ...
|
|
# 1511| [TopLevelFunction] void array_structured_binding()
|
|
# 1511| <params>:
|
|
# 1511| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1512| getStmt(0): [DeclStmt] declaration
|
|
# 1512| getDeclarationEntry(0): [VariableDeclarationEntry] definition of xs
|
|
# 1512| Type = [ArrayType] int[2]
|
|
# 1512| getVariable().getInitializer(): [Initializer] initializer for xs
|
|
# 1512| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 1512| Type = [ArrayType] int[2]
|
|
# 1512| ValueCategory = prvalue
|
|
# 1512| getAnElementExpr(0): [Literal] 1
|
|
# 1512| Type = [IntType] int
|
|
# 1512| Value = [Literal] 1
|
|
# 1512| ValueCategory = prvalue
|
|
# 1512| getAnElementExpr(1): [Literal] 2
|
|
# 1512| Type = [IntType] int
|
|
# 1512| Value = [Literal] 2
|
|
# 1512| ValueCategory = prvalue
|
|
# 1514| getStmt(1): [BlockStmt] { ... }
|
|
# 1515| getStmt(0): [DeclStmt] declaration
|
|
# 1515| getDeclarationEntry(0): [VariableDeclarationEntry] definition of (unnamed local variable)
|
|
# 1515| Type = [LValueReferenceType] int(&)[2]
|
|
# 1515| getVariable().getInitializer(): [Initializer] initializer for (unnamed local variable)
|
|
# 1515| getExpr(): [VariableAccess] xs
|
|
# 1515| Type = [ArrayType] int[2]
|
|
# 1515| ValueCategory = lvalue
|
|
# 1515| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1515| Type = [LValueReferenceType] int(&)[2]
|
|
# 1515| ValueCategory = prvalue
|
|
# 1515| getDeclarationEntry(1): [VariableDeclarationEntry] definition of x0
|
|
# 1515| Type = [IntType] int
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for x0
|
|
#-----| getExpr(): [ArrayExpr] access to array
|
|
#-----| Type = [IntType] int
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArrayBase(): [VariableAccess] (unnamed local variable)
|
|
#-----| Type = [LValueReferenceType] int(&)[2]
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getArrayOffset(): [Literal] 0
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| Value = [Literal] 0
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
#-----| Type = [IntPointerType] int *
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ArrayType] int[2]
|
|
#-----| ValueCategory = lvalue
|
|
# 1515| getDeclarationEntry(2): [VariableDeclarationEntry] definition of x1
|
|
# 1515| Type = [IntType] int
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for x1
|
|
#-----| getExpr(): [ArrayExpr] access to array
|
|
#-----| Type = [IntType] int
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArrayBase(): [VariableAccess] (unnamed local variable)
|
|
#-----| Type = [LValueReferenceType] int(&)[2]
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getArrayOffset(): [Literal] 1
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| Value = [Literal] 1
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
#-----| Type = [IntPointerType] int *
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ArrayType] int[2]
|
|
#-----| ValueCategory = lvalue
|
|
# 1516| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1516| getExpr(): [AssignExpr] ... = ...
|
|
# 1516| Type = [IntType] int
|
|
# 1516| ValueCategory = lvalue
|
|
# 1516| getLValue(): [VariableAccess] x1
|
|
# 1516| Type = [IntType] int
|
|
# 1516| ValueCategory = lvalue
|
|
# 1516| getRValue(): [Literal] 3
|
|
# 1516| Type = [IntType] int
|
|
# 1516| Value = [Literal] 3
|
|
# 1516| ValueCategory = prvalue
|
|
# 1517| getStmt(2): [DeclStmt] declaration
|
|
# 1517| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rx1
|
|
# 1517| Type = [LValueReferenceType] int &
|
|
# 1517| getVariable().getInitializer(): [Initializer] initializer for rx1
|
|
# 1517| getExpr(): [VariableAccess] x1
|
|
# 1517| Type = [IntType] int
|
|
# 1517| ValueCategory = lvalue
|
|
# 1517| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1517| Type = [LValueReferenceType] int &
|
|
# 1517| ValueCategory = prvalue
|
|
# 1518| getStmt(3): [DeclStmt] declaration
|
|
# 1518| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1518| Type = [IntType] int
|
|
# 1518| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 1518| getExpr(): [VariableAccess] x1
|
|
# 1518| Type = [IntType] int
|
|
# 1518| ValueCategory = prvalue(load)
|
|
# 1521| getStmt(2): [BlockStmt] { ... }
|
|
# 1522| getStmt(0): [DeclStmt] declaration
|
|
# 1522| getDeclarationEntry(0): [VariableDeclarationEntry] definition of unnamed_local_variable
|
|
# 1522| Type = [LValueReferenceType] int(&)[2]
|
|
# 1522| getVariable().getInitializer(): [Initializer] initializer for unnamed_local_variable
|
|
# 1522| getExpr(): [VariableAccess] xs
|
|
# 1522| Type = [ArrayType] int[2]
|
|
# 1522| ValueCategory = lvalue
|
|
# 1522| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1522| Type = [LValueReferenceType] int(&)[2]
|
|
# 1522| ValueCategory = prvalue
|
|
# 1523| getStmt(1): [DeclStmt] declaration
|
|
# 1523| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x0
|
|
# 1523| Type = [LValueReferenceType] int &
|
|
# 1523| getVariable().getInitializer(): [Initializer] initializer for x0
|
|
# 1523| getExpr(): [ArrayExpr] access to array
|
|
# 1523| Type = [IntType] int
|
|
# 1523| ValueCategory = lvalue
|
|
# 1523| getArrayBase(): [VariableAccess] unnamed_local_variable
|
|
# 1523| Type = [LValueReferenceType] int(&)[2]
|
|
# 1523| ValueCategory = prvalue(load)
|
|
# 1523| getArrayOffset(): [Literal] 0
|
|
# 1523| Type = [IntType] int
|
|
# 1523| Value = [Literal] 0
|
|
# 1523| ValueCategory = prvalue
|
|
# 1523| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1523| Type = [IntPointerType] int *
|
|
# 1523| ValueCategory = prvalue
|
|
# 1523| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1523| Type = [ArrayType] int[2]
|
|
# 1523| ValueCategory = lvalue
|
|
# 1523| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1523| Type = [LValueReferenceType] int &
|
|
# 1523| ValueCategory = prvalue
|
|
# 1524| getStmt(2): [DeclStmt] declaration
|
|
# 1524| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x1
|
|
# 1524| Type = [LValueReferenceType] int &
|
|
# 1524| getVariable().getInitializer(): [Initializer] initializer for x1
|
|
# 1524| getExpr(): [ArrayExpr] access to array
|
|
# 1524| Type = [IntType] int
|
|
# 1524| ValueCategory = lvalue
|
|
# 1524| getArrayBase(): [VariableAccess] unnamed_local_variable
|
|
# 1524| Type = [LValueReferenceType] int(&)[2]
|
|
# 1524| ValueCategory = prvalue(load)
|
|
# 1524| getArrayOffset(): [Literal] 1
|
|
# 1524| Type = [IntType] int
|
|
# 1524| Value = [Literal] 1
|
|
# 1524| ValueCategory = prvalue
|
|
# 1524| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1524| Type = [IntPointerType] int *
|
|
# 1524| ValueCategory = prvalue
|
|
# 1524| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1524| Type = [ArrayType] int[2]
|
|
# 1524| ValueCategory = lvalue
|
|
# 1524| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1524| Type = [LValueReferenceType] int &
|
|
# 1524| ValueCategory = prvalue
|
|
# 1525| getStmt(3): [ExprStmt] ExprStmt
|
|
# 1525| getExpr(): [AssignExpr] ... = ...
|
|
# 1525| Type = [IntType] int
|
|
# 1525| ValueCategory = lvalue
|
|
# 1525| getLValue(): [VariableAccess] x1
|
|
# 1525| Type = [LValueReferenceType] int &
|
|
# 1525| ValueCategory = prvalue(load)
|
|
# 1525| getRValue(): [Literal] 3
|
|
# 1525| Type = [IntType] int
|
|
# 1525| Value = [Literal] 3
|
|
# 1525| ValueCategory = prvalue
|
|
# 1525| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1525| Type = [IntType] int
|
|
# 1525| ValueCategory = lvalue
|
|
# 1526| getStmt(4): [DeclStmt] declaration
|
|
# 1526| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rx1
|
|
# 1526| Type = [LValueReferenceType] int &
|
|
# 1526| getVariable().getInitializer(): [Initializer] initializer for rx1
|
|
# 1526| getExpr(): [VariableAccess] x1
|
|
# 1526| Type = [LValueReferenceType] int &
|
|
# 1526| ValueCategory = prvalue(load)
|
|
# 1526| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1526| Type = [LValueReferenceType] int &
|
|
# 1526| ValueCategory = prvalue
|
|
# 1526| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1526| Type = [IntType] int
|
|
# 1526| ValueCategory = lvalue
|
|
# 1527| getStmt(5): [DeclStmt] declaration
|
|
# 1527| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1527| Type = [IntType] int
|
|
# 1527| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 1527| getExpr(): [VariableAccess] x1
|
|
# 1527| Type = [LValueReferenceType] int &
|
|
# 1527| ValueCategory = prvalue(load)
|
|
# 1527| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1527| Type = [IntType] int
|
|
# 1527| ValueCategory = prvalue(load)
|
|
# 1529| getStmt(3): [ReturnStmt] return ...
|
|
# 1531| [CopyAssignmentOperator] StructuredBindingDataMemberMemberStruct& StructuredBindingDataMemberMemberStruct::operator=(StructuredBindingDataMemberMemberStruct const&)
|
|
# 1531| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const StructuredBindingDataMemberMemberStruct &
|
|
# 1531| [MoveAssignmentOperator] StructuredBindingDataMemberMemberStruct& StructuredBindingDataMemberMemberStruct::operator=(StructuredBindingDataMemberMemberStruct&&)
|
|
# 1531| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] StructuredBindingDataMemberMemberStruct &&
|
|
# 1531| [Constructor] void StructuredBindingDataMemberMemberStruct::StructuredBindingDataMemberMemberStruct()
|
|
# 1531| <params>:
|
|
# 1531| <initializations>:
|
|
# 1531| getInitializer(0): [ConstructorFieldInit] constructor init of field x
|
|
# 1531| Type = [IntType] int
|
|
# 1531| ValueCategory = prvalue
|
|
# 1531| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1531| getStmt(0): [ReturnStmt] return ...
|
|
# 1531| [CopyConstructor] void StructuredBindingDataMemberMemberStruct::StructuredBindingDataMemberMemberStruct(StructuredBindingDataMemberMemberStruct const&)
|
|
# 1531| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const StructuredBindingDataMemberMemberStruct &
|
|
# 1531| [MoveConstructor] void StructuredBindingDataMemberMemberStruct::StructuredBindingDataMemberMemberStruct(StructuredBindingDataMemberMemberStruct&&)
|
|
# 1531| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] StructuredBindingDataMemberMemberStruct &&
|
|
# 1535| [CopyAssignmentOperator] StructuredBindingDataMemberStruct& StructuredBindingDataMemberStruct::operator=(StructuredBindingDataMemberStruct const&)
|
|
# 1535| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| [Constructor] void StructuredBindingDataMemberStruct::StructuredBindingDataMemberStruct()
|
|
# 1535| <params>:
|
|
# 1535| <initializations>:
|
|
# 1535| getInitializer(0): [ConstructorFieldInit] constructor init of field i
|
|
# 1535| Type = [IntType] int
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getInitializer(1): [ConstructorFieldInit] constructor init of field d
|
|
# 1535| Type = [DoubleType] double
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getInitializer(2): [ConstructorFieldInit] constructor init of field r
|
|
# 1535| Type = [LValueReferenceType] int &
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getInitializer(3): [ConstructorFieldInit] constructor init of field p
|
|
# 1535| Type = [IntPointerType] int *
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getInitializer(4): [ConstructorFieldInit] constructor init of field xs
|
|
# 1535| Type = [CTypedefType,NestedTypedefType] ArrayType
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getInitializer(5): [ConstructorFieldInit] constructor init of field r_alt
|
|
# 1535| Type = [CTypedefType,NestedTypedefType] RefType
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getInitializer(6): [ConstructorFieldInit] constructor init of field m
|
|
# 1535| Type = [Struct] StructuredBindingDataMemberMemberStruct
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ConstructorCall] call to StructuredBindingDataMemberMemberStruct
|
|
# 1535| Type = [VoidType] void
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1535| getStmt(0): [ReturnStmt] return ...
|
|
# 1535| [CopyConstructor] void StructuredBindingDataMemberStruct::StructuredBindingDataMemberStruct(StructuredBindingDataMemberStruct const&)
|
|
# 1535| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| <initializations>:
|
|
# 1535| getInitializer(0): [ConstructorFieldInit] constructor init of field i
|
|
# 1535| Type = [IntType] int
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ReferenceFieldAccess] i
|
|
# 1535| Type = [IntType] int
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1535| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1535| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
|
|
# 1535| ValueCategory = lvalue
|
|
# 1535| getInitializer(1): [ConstructorFieldInit] constructor init of field d
|
|
# 1535| Type = [DoubleType] double
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ReferenceFieldAccess] d
|
|
# 1535| Type = [DoubleType] double
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1535| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1535| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
|
|
# 1535| ValueCategory = lvalue
|
|
# 1535| getInitializer(2): [ConstructorFieldInit] constructor init of field b
|
|
# 1535| Type = [IntType] unsigned int
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ReferenceFieldAccess] b
|
|
# 1535| Type = [IntType] unsigned int
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1535| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1535| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
|
|
# 1535| ValueCategory = lvalue
|
|
# 1535| getInitializer(3): [ConstructorFieldInit] constructor init of field r
|
|
# 1535| Type = [LValueReferenceType] int &
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ReferenceFieldAccess] r
|
|
# 1535| Type = [LValueReferenceType] int &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1535| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1535| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
|
|
# 1535| ValueCategory = lvalue
|
|
# 1535| getInitializer(4): [ConstructorFieldInit] constructor init of field p
|
|
# 1535| Type = [IntPointerType] int *
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ReferenceFieldAccess] p
|
|
# 1535| Type = [IntPointerType] int *
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1535| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1535| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
|
|
# 1535| ValueCategory = lvalue
|
|
# 1535| getInitializer(5): [ConstructorFieldInit] constructor init of field xs
|
|
# 1535| Type = [CTypedefType,NestedTypedefType] ArrayType
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ReferenceFieldAccess] xs
|
|
# 1535| Type = [CTypedefType,NestedTypedefType] ArrayType
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1535| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1535| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
|
|
# 1535| ValueCategory = lvalue
|
|
# 1535| getInitializer(6): [ConstructorFieldInit] constructor init of field r_alt
|
|
# 1535| Type = [CTypedefType,NestedTypedefType] RefType
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ReferenceFieldAccess] r_alt
|
|
# 1535| Type = [CTypedefType,NestedTypedefType] RefType
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1535| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1535| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
|
|
# 1535| ValueCategory = lvalue
|
|
# 1535| getInitializer(7): [ConstructorFieldInit] constructor init of field m
|
|
# 1535| Type = [Struct] StructuredBindingDataMemberMemberStruct
|
|
# 1535| ValueCategory = prvalue
|
|
# 1535| getExpr(): [ReferenceFieldAccess] m
|
|
# 1535| Type = [Struct] StructuredBindingDataMemberMemberStruct
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1535| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
|
|
# 1535| ValueCategory = prvalue(load)
|
|
# 1535| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1535| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
|
|
# 1535| ValueCategory = lvalue
|
|
# 1535| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1535| getStmt(0): [ReturnStmt] return ...
|
|
# 1535| [MoveConstructor] void StructuredBindingDataMemberStruct::StructuredBindingDataMemberStruct(StructuredBindingDataMemberStruct&&)
|
|
# 1535| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] StructuredBindingDataMemberStruct &&
|
|
# 1548| [TopLevelFunction] void data_member_structured_binding()
|
|
# 1548| <params>:
|
|
# 1548| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1549| getStmt(0): [DeclStmt] declaration
|
|
# 1549| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 1549| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1549| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 1549| getExpr(): [ConstructorCall] call to StructuredBindingDataMemberStruct
|
|
# 1549| Type = [VoidType] void
|
|
# 1549| ValueCategory = prvalue
|
|
# 1551| getStmt(1): [BlockStmt] { ... }
|
|
# 1552| getStmt(0): [DeclStmt] declaration
|
|
# 1552| getDeclarationEntry(0): [VariableDeclarationEntry] definition of (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| getVariable().getInitializer(): [Initializer] initializer for (unnamed local variable)
|
|
# 1552| getExpr(): [VariableAccess] s
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = prvalue(load)
|
|
# 1552| getDeclarationEntry(1): [VariableDeclarationEntry] definition of i
|
|
# 1552| Type = [IntType] int
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 1552| getExpr(): [ValueFieldAccess] i
|
|
# 1552| Type = [IntType] int
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getDeclarationEntry(2): [VariableDeclarationEntry] definition of d
|
|
# 1552| Type = [DoubleType] double
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 1552| getExpr(): [ValueFieldAccess] d
|
|
# 1552| Type = [DoubleType] double
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getDeclarationEntry(3): [VariableDeclarationEntry] definition of b
|
|
# 1552| Type = [IntType] unsigned int
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 1552| getExpr(): [ValueFieldAccess] b
|
|
# 1552| Type = [IntType] unsigned int
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getDeclarationEntry(4): [VariableDeclarationEntry] definition of r
|
|
# 1552| Type = [IntType] int
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for r
|
|
# 1552| getExpr(): [ValueFieldAccess] r
|
|
# 1552| Type = [LValueReferenceType] int &
|
|
# 1552| ValueCategory = prvalue(load)
|
|
# 1552| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1552| Type = [IntType] int
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getDeclarationEntry(5): [VariableDeclarationEntry] definition of p
|
|
# 1552| Type = [IntPointerType] int *
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for p
|
|
# 1552| getExpr(): [ValueFieldAccess] p
|
|
# 1552| Type = [IntPointerType] int *
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getDeclarationEntry(6): [VariableDeclarationEntry] definition of xs
|
|
# 1552| Type = [CTypedefType,NestedTypedefType] ArrayType
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for xs
|
|
# 1552| getExpr(): [ValueFieldAccess] xs
|
|
# 1552| Type = [CTypedefType,NestedTypedefType] ArrayType
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getDeclarationEntry(7): [VariableDeclarationEntry] definition of r_alt
|
|
# 1552| Type = [IntType] int
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for r_alt
|
|
# 1552| getExpr(): [ValueFieldAccess] r_alt
|
|
# 1552| Type = [CTypedefType,NestedTypedefType] RefType
|
|
# 1552| ValueCategory = prvalue(load)
|
|
# 1552| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1552| Type = [IntType] int
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getDeclarationEntry(8): [VariableDeclarationEntry] definition of m
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberMemberStruct
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for m
|
|
# 1552| getExpr(): [ValueFieldAccess] m
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1552| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1552| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1552| ValueCategory = lvalue
|
|
# 1553| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1553| getExpr(): [AssignExpr] ... = ...
|
|
# 1553| Type = [DoubleType] double
|
|
# 1553| ValueCategory = lvalue
|
|
# 1553| getLValue(): [VariableAccess] d
|
|
# 1553| Type = [DoubleType] double
|
|
# 1553| ValueCategory = lvalue
|
|
# 1553| getRValue(): [Literal] 4.0
|
|
# 1553| Type = [DoubleType] double
|
|
# 1553| Value = [Literal] 4.0
|
|
# 1553| ValueCategory = prvalue
|
|
# 1554| getStmt(2): [DeclStmt] declaration
|
|
# 1554| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rd
|
|
# 1554| Type = [LValueReferenceType] double &
|
|
# 1554| getVariable().getInitializer(): [Initializer] initializer for rd
|
|
# 1554| getExpr(): [VariableAccess] d
|
|
# 1554| Type = [DoubleType] double
|
|
# 1554| ValueCategory = lvalue
|
|
# 1554| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1554| Type = [LValueReferenceType] double &
|
|
# 1554| ValueCategory = prvalue
|
|
# 1555| getStmt(3): [DeclStmt] declaration
|
|
# 1555| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1555| Type = [IntType] int
|
|
# 1555| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1555| getExpr(): [VariableAccess] i
|
|
# 1555| Type = [IntType] int
|
|
# 1555| ValueCategory = prvalue(load)
|
|
# 1556| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1556| getExpr(): [AssignExpr] ... = ...
|
|
# 1556| Type = [IntType] int
|
|
# 1556| ValueCategory = lvalue
|
|
# 1556| getLValue(): [VariableAccess] r
|
|
# 1556| Type = [IntType] int
|
|
# 1556| ValueCategory = lvalue
|
|
# 1556| getRValue(): [Literal] 5
|
|
# 1556| Type = [IntType] int
|
|
# 1556| Value = [Literal] 5
|
|
# 1556| ValueCategory = prvalue
|
|
# 1557| getStmt(5): [ExprStmt] ExprStmt
|
|
# 1557| getExpr(): [AssignExpr] ... = ...
|
|
# 1557| Type = [IntType] int
|
|
# 1557| ValueCategory = lvalue
|
|
# 1557| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 1557| Type = [IntType] int
|
|
# 1557| ValueCategory = lvalue
|
|
# 1557| getOperand(): [VariableAccess] p
|
|
# 1557| Type = [IntPointerType] int *
|
|
# 1557| ValueCategory = prvalue(load)
|
|
# 1557| getRValue(): [Literal] 6
|
|
# 1557| Type = [IntType] int
|
|
# 1557| Value = [Literal] 6
|
|
# 1557| ValueCategory = prvalue
|
|
# 1558| getStmt(6): [DeclStmt] declaration
|
|
# 1558| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rr
|
|
# 1558| Type = [LValueReferenceType] int &
|
|
# 1558| getVariable().getInitializer(): [Initializer] initializer for rr
|
|
# 1558| getExpr(): [VariableAccess] r
|
|
# 1558| Type = [IntType] int
|
|
# 1558| ValueCategory = lvalue
|
|
# 1558| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1558| Type = [LValueReferenceType] int &
|
|
# 1558| ValueCategory = prvalue
|
|
# 1559| getStmt(7): [DeclStmt] declaration
|
|
# 1559| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pr
|
|
# 1559| Type = [IntPointerType] int *
|
|
# 1559| getVariable().getInitializer(): [Initializer] initializer for pr
|
|
# 1559| getExpr(): [AddressOfExpr] & ...
|
|
# 1559| Type = [IntPointerType] int *
|
|
# 1559| ValueCategory = prvalue
|
|
# 1559| getOperand(): [VariableAccess] r
|
|
# 1559| Type = [IntType] int
|
|
# 1559| ValueCategory = lvalue
|
|
# 1560| getStmt(8): [DeclStmt] declaration
|
|
# 1560| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1560| Type = [IntType] int
|
|
# 1560| getVariable().getInitializer(): [Initializer] initializer for w
|
|
# 1560| getExpr(): [VariableAccess] r
|
|
# 1560| Type = [IntType] int
|
|
# 1560| ValueCategory = prvalue(load)
|
|
# 1563| getStmt(2): [BlockStmt] { ... }
|
|
# 1564| getStmt(0): [DeclStmt] declaration
|
|
# 1564| getDeclarationEntry(0): [VariableDeclarationEntry] definition of unnamed_local_variable
|
|
# 1564| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1564| getVariable().getInitializer(): [Initializer] initializer for unnamed_local_variable
|
|
# 1564| getExpr(): [VariableAccess] s
|
|
# 1564| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1564| ValueCategory = prvalue(load)
|
|
# 1565| getStmt(1): [DeclStmt] declaration
|
|
# 1565| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 1565| Type = [LValueReferenceType] int &
|
|
# 1565| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 1565| getExpr(): [ValueFieldAccess] i
|
|
# 1565| Type = [IntType] int
|
|
# 1565| ValueCategory = lvalue
|
|
# 1565| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1565| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1565| ValueCategory = lvalue
|
|
# 1565| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1565| Type = [LValueReferenceType] int &
|
|
# 1565| ValueCategory = prvalue
|
|
# 1566| getStmt(2): [DeclStmt] declaration
|
|
# 1566| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 1566| Type = [LValueReferenceType] double &
|
|
# 1566| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 1566| getExpr(): [ValueFieldAccess] d
|
|
# 1566| Type = [DoubleType] double
|
|
# 1566| ValueCategory = lvalue
|
|
# 1566| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1566| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1566| ValueCategory = lvalue
|
|
# 1566| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1566| Type = [LValueReferenceType] double &
|
|
# 1566| ValueCategory = prvalue
|
|
# 1568| getStmt(3): [DeclStmt] declaration
|
|
# 1568| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r
|
|
# 1568| Type = [LValueReferenceType] int &
|
|
# 1568| getVariable().getInitializer(): [Initializer] initializer for r
|
|
# 1568| getExpr(): [ValueFieldAccess] r
|
|
# 1568| Type = [LValueReferenceType] int &
|
|
# 1568| ValueCategory = prvalue(load)
|
|
# 1568| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1568| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1568| ValueCategory = lvalue
|
|
# 1568| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1568| Type = [LValueReferenceType] int &
|
|
# 1568| ValueCategory = prvalue
|
|
# 1568| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1568| Type = [IntType] int
|
|
# 1568| ValueCategory = lvalue
|
|
# 1569| getStmt(4): [DeclStmt] declaration
|
|
# 1569| getDeclarationEntry(0): [VariableDeclarationEntry] definition of p
|
|
# 1569| Type = [LValueReferenceType] int *&
|
|
# 1569| getVariable().getInitializer(): [Initializer] initializer for p
|
|
# 1569| getExpr(): [ValueFieldAccess] p
|
|
# 1569| Type = [IntPointerType] int *
|
|
# 1569| ValueCategory = lvalue
|
|
# 1569| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1569| Type = [Struct] StructuredBindingDataMemberStruct
|
|
# 1569| ValueCategory = lvalue
|
|
# 1569| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1569| Type = [LValueReferenceType] int *&
|
|
# 1569| ValueCategory = prvalue
|
|
# 1570| getStmt(5): [ExprStmt] ExprStmt
|
|
# 1570| getExpr(): [AssignExpr] ... = ...
|
|
# 1570| Type = [DoubleType] double
|
|
# 1570| ValueCategory = lvalue
|
|
# 1570| getLValue(): [VariableAccess] d
|
|
# 1570| Type = [LValueReferenceType] double &
|
|
# 1570| ValueCategory = prvalue(load)
|
|
# 1570| getRValue(): [Literal] 4.0
|
|
# 1570| Type = [DoubleType] double
|
|
# 1570| Value = [Literal] 4.0
|
|
# 1570| ValueCategory = prvalue
|
|
# 1570| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1570| Type = [DoubleType] double
|
|
# 1570| ValueCategory = lvalue
|
|
# 1571| getStmt(6): [DeclStmt] declaration
|
|
# 1571| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rd
|
|
# 1571| Type = [LValueReferenceType] double &
|
|
# 1571| getVariable().getInitializer(): [Initializer] initializer for rd
|
|
# 1571| getExpr(): [VariableAccess] d
|
|
# 1571| Type = [LValueReferenceType] double &
|
|
# 1571| ValueCategory = prvalue(load)
|
|
# 1571| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1571| Type = [LValueReferenceType] double &
|
|
# 1571| ValueCategory = prvalue
|
|
# 1571| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1571| Type = [DoubleType] double
|
|
# 1571| ValueCategory = lvalue
|
|
# 1572| getStmt(7): [DeclStmt] declaration
|
|
# 1572| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1572| Type = [IntType] int
|
|
# 1572| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1572| getExpr(): [VariableAccess] i
|
|
# 1572| Type = [LValueReferenceType] int &
|
|
# 1572| ValueCategory = prvalue(load)
|
|
# 1572| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1572| Type = [IntType] int
|
|
# 1572| ValueCategory = prvalue(load)
|
|
# 1573| getStmt(8): [ExprStmt] ExprStmt
|
|
# 1573| getExpr(): [AssignExpr] ... = ...
|
|
# 1573| Type = [IntType] int
|
|
# 1573| ValueCategory = lvalue
|
|
# 1573| getLValue(): [VariableAccess] r
|
|
# 1573| Type = [LValueReferenceType] int &
|
|
# 1573| ValueCategory = prvalue(load)
|
|
# 1573| getRValue(): [Literal] 5
|
|
# 1573| Type = [IntType] int
|
|
# 1573| Value = [Literal] 5
|
|
# 1573| ValueCategory = prvalue
|
|
# 1573| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1573| Type = [IntType] int
|
|
# 1573| ValueCategory = lvalue
|
|
# 1574| getStmt(9): [ExprStmt] ExprStmt
|
|
# 1574| getExpr(): [AssignExpr] ... = ...
|
|
# 1574| Type = [IntType] int
|
|
# 1574| ValueCategory = lvalue
|
|
# 1574| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 1574| Type = [IntType] int
|
|
# 1574| ValueCategory = lvalue
|
|
# 1574| getOperand(): [VariableAccess] p
|
|
# 1574| Type = [LValueReferenceType] int *&
|
|
# 1574| ValueCategory = prvalue(load)
|
|
# 1574| getOperand().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1574| Type = [IntPointerType] int *
|
|
# 1574| ValueCategory = prvalue(load)
|
|
# 1574| getRValue(): [Literal] 6
|
|
# 1574| Type = [IntType] int
|
|
# 1574| Value = [Literal] 6
|
|
# 1574| ValueCategory = prvalue
|
|
# 1575| getStmt(10): [DeclStmt] declaration
|
|
# 1575| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rr
|
|
# 1575| Type = [LValueReferenceType] int &
|
|
# 1575| getVariable().getInitializer(): [Initializer] initializer for rr
|
|
# 1575| getExpr(): [VariableAccess] r
|
|
# 1575| Type = [LValueReferenceType] int &
|
|
# 1575| ValueCategory = prvalue(load)
|
|
# 1575| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1575| Type = [LValueReferenceType] int &
|
|
# 1575| ValueCategory = prvalue
|
|
# 1575| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1575| Type = [IntType] int
|
|
# 1575| ValueCategory = lvalue
|
|
# 1576| getStmt(11): [DeclStmt] declaration
|
|
# 1576| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pr
|
|
# 1576| Type = [IntPointerType] int *
|
|
# 1576| getVariable().getInitializer(): [Initializer] initializer for pr
|
|
# 1576| getExpr(): [AddressOfExpr] & ...
|
|
# 1576| Type = [IntPointerType] int *
|
|
# 1576| ValueCategory = prvalue
|
|
# 1576| getOperand(): [VariableAccess] r
|
|
# 1576| Type = [LValueReferenceType] int &
|
|
# 1576| ValueCategory = prvalue(load)
|
|
# 1576| getOperand().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1576| Type = [IntType] int
|
|
# 1576| ValueCategory = lvalue
|
|
# 1577| getStmt(12): [DeclStmt] declaration
|
|
# 1577| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1577| Type = [IntType] int
|
|
# 1577| getVariable().getInitializer(): [Initializer] initializer for w
|
|
# 1577| getExpr(): [VariableAccess] r
|
|
# 1577| Type = [LValueReferenceType] int &
|
|
# 1577| ValueCategory = prvalue(load)
|
|
# 1577| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1577| Type = [IntType] int
|
|
# 1577| ValueCategory = prvalue(load)
|
|
# 1579| getStmt(3): [ReturnStmt] return ...
|
|
# 1588| [CopyAssignmentOperator] StructuredBindingTupleRefGet& StructuredBindingTupleRefGet::operator=(StructuredBindingTupleRefGet const&)
|
|
# 1588| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const StructuredBindingTupleRefGet &
|
|
# 1588| [Constructor] void StructuredBindingTupleRefGet::StructuredBindingTupleRefGet()
|
|
# 1588| <params>:
|
|
# 1588| <initializations>:
|
|
# 1588| getInitializer(0): [ConstructorFieldInit] constructor init of field i
|
|
# 1588| Type = [IntType] int
|
|
# 1588| ValueCategory = prvalue
|
|
# 1588| getInitializer(1): [ConstructorFieldInit] constructor init of field d
|
|
# 1588| Type = [DoubleType] double
|
|
# 1588| ValueCategory = prvalue
|
|
# 1588| getInitializer(2): [ConstructorFieldInit] constructor init of field r
|
|
# 1588| Type = [LValueReferenceType] int &
|
|
# 1588| ValueCategory = prvalue
|
|
# 1588| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1588| getStmt(0): [ReturnStmt] return ...
|
|
# 1588| [CopyConstructor] void StructuredBindingTupleRefGet::StructuredBindingTupleRefGet(StructuredBindingTupleRefGet const&)
|
|
# 1588| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const StructuredBindingTupleRefGet &
|
|
# 1588| <initializations>:
|
|
# 1588| getInitializer(0): [ConstructorFieldInit] constructor init of field i
|
|
# 1588| Type = [IntType] int
|
|
# 1588| ValueCategory = prvalue
|
|
# 1588| getExpr(): [ReferenceFieldAccess] i
|
|
# 1588| Type = [IntType] int
|
|
# 1588| ValueCategory = prvalue(load)
|
|
# 1588| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1588| Type = [LValueReferenceType] const StructuredBindingTupleRefGet &
|
|
# 1588| ValueCategory = prvalue(load)
|
|
# 1588| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1588| Type = [SpecifiedType] const StructuredBindingTupleRefGet
|
|
# 1588| ValueCategory = lvalue
|
|
# 1588| getInitializer(1): [ConstructorFieldInit] constructor init of field d
|
|
# 1588| Type = [DoubleType] double
|
|
# 1588| ValueCategory = prvalue
|
|
# 1588| getExpr(): [ReferenceFieldAccess] d
|
|
# 1588| Type = [DoubleType] double
|
|
# 1588| ValueCategory = prvalue(load)
|
|
# 1588| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1588| Type = [LValueReferenceType] const StructuredBindingTupleRefGet &
|
|
# 1588| ValueCategory = prvalue(load)
|
|
# 1588| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1588| Type = [SpecifiedType] const StructuredBindingTupleRefGet
|
|
# 1588| ValueCategory = lvalue
|
|
# 1588| getInitializer(2): [ConstructorFieldInit] constructor init of field r
|
|
# 1588| Type = [LValueReferenceType] int &
|
|
# 1588| ValueCategory = prvalue
|
|
# 1588| getExpr(): [ReferenceFieldAccess] r
|
|
# 1588| Type = [LValueReferenceType] int &
|
|
# 1588| ValueCategory = prvalue(load)
|
|
# 1588| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 1588| Type = [LValueReferenceType] const StructuredBindingTupleRefGet &
|
|
# 1588| ValueCategory = prvalue(load)
|
|
# 1588| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1588| Type = [SpecifiedType] const StructuredBindingTupleRefGet
|
|
# 1588| ValueCategory = lvalue
|
|
# 1588| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1588| getStmt(0): [ReturnStmt] return ...
|
|
# 1588| [MoveConstructor] void StructuredBindingTupleRefGet::StructuredBindingTupleRefGet(StructuredBindingTupleRefGet&&)
|
|
# 1588| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] StructuredBindingTupleRefGet &&
|
|
# 1594| [MemberFunction,TemplateFunction] type& StructuredBindingTupleRefGet::get<int i>()
|
|
# 1594| <params>:
|
|
# 1598| [CopyAssignmentOperator] std::tuple_size<StructuredBindingTupleRefGet>& std::tuple_size<StructuredBindingTupleRefGet>::operator=(std::tuple_size<StructuredBindingTupleRefGet> const&)
|
|
# 1598| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const tuple_size<StructuredBindingTupleRefGet> &
|
|
# 1598| [MoveAssignmentOperator] std::tuple_size<StructuredBindingTupleRefGet>& std::tuple_size<StructuredBindingTupleRefGet>::operator=(std::tuple_size<StructuredBindingTupleRefGet>&&)
|
|
# 1598| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] tuple_size<StructuredBindingTupleRefGet> &&
|
|
# 1603| [CopyAssignmentOperator] std::tuple_element<int 0, StructuredBindingTupleRefGet>& std::tuple_element<int 0, StructuredBindingTupleRefGet>::operator=(std::tuple_element<int 0, StructuredBindingTupleRefGet> const&)
|
|
# 1603| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const tuple_element<0, StructuredBindingTupleRefGet> &
|
|
# 1603| [MoveAssignmentOperator] std::tuple_element<int 0, StructuredBindingTupleRefGet>& std::tuple_element<int 0, StructuredBindingTupleRefGet>::operator=(std::tuple_element<int 0, StructuredBindingTupleRefGet>&&)
|
|
# 1603| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] tuple_element<0, StructuredBindingTupleRefGet> &&
|
|
# 1607| [CopyAssignmentOperator] std::tuple_element<int 1, StructuredBindingTupleRefGet>& std::tuple_element<int 1, StructuredBindingTupleRefGet>::operator=(std::tuple_element<int 1, StructuredBindingTupleRefGet> const&)
|
|
# 1607| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const tuple_element<1, StructuredBindingTupleRefGet> &
|
|
# 1607| [MoveAssignmentOperator] std::tuple_element<int 1, StructuredBindingTupleRefGet>& std::tuple_element<int 1, StructuredBindingTupleRefGet>::operator=(std::tuple_element<int 1, StructuredBindingTupleRefGet>&&)
|
|
# 1607| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] tuple_element<1, StructuredBindingTupleRefGet> &&
|
|
# 1611| [CopyAssignmentOperator] std::tuple_element<int 2, StructuredBindingTupleRefGet>& std::tuple_element<int 2, StructuredBindingTupleRefGet>::operator=(std::tuple_element<int 2, StructuredBindingTupleRefGet> const&)
|
|
# 1611| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const tuple_element<2, StructuredBindingTupleRefGet> &
|
|
# 1611| [MoveAssignmentOperator] std::tuple_element<int 2, StructuredBindingTupleRefGet>& std::tuple_element<int 2, StructuredBindingTupleRefGet>::operator=(std::tuple_element<int 2, StructuredBindingTupleRefGet>&&)
|
|
# 1611| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] tuple_element<2, StructuredBindingTupleRefGet> &&
|
|
# 1616| [FunctionTemplateSpecialization,MemberFunction] std::tuple_element<int 0, StructuredBindingTupleRefGet>::type& StructuredBindingTupleRefGet::get<int 0>()
|
|
# 1616| <params>:
|
|
# 1616| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1617| getStmt(0): [ReturnStmt] return ...
|
|
# 1617| getExpr(): [ImplicitThisFieldAccess,PointerFieldAccess] i
|
|
# 1617| Type = [IntType] int
|
|
# 1617| ValueCategory = lvalue
|
|
# 1617| getQualifier(): [ThisExpr] this
|
|
# 1617| Type = [PointerType] StructuredBindingTupleRefGet *
|
|
# 1617| ValueCategory = prvalue(load)
|
|
#-----| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] int &
|
|
#-----| ValueCategory = prvalue
|
|
# 1620| [FunctionTemplateSpecialization,MemberFunction] std::tuple_element<int 1, StructuredBindingTupleRefGet>::type& StructuredBindingTupleRefGet::get<int 1>()
|
|
# 1620| <params>:
|
|
# 1620| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1621| getStmt(0): [ReturnStmt] return ...
|
|
# 1621| getExpr(): [ImplicitThisFieldAccess,PointerFieldAccess] d
|
|
# 1621| Type = [DoubleType] double
|
|
# 1621| ValueCategory = lvalue
|
|
# 1621| getQualifier(): [ThisExpr] this
|
|
# 1621| Type = [PointerType] StructuredBindingTupleRefGet *
|
|
# 1621| ValueCategory = prvalue(load)
|
|
#-----| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] double &
|
|
#-----| ValueCategory = prvalue
|
|
# 1624| [FunctionTemplateSpecialization,MemberFunction] std::tuple_element<int 2, StructuredBindingTupleRefGet>::type StructuredBindingTupleRefGet::get<int 2>()
|
|
# 1624| <params>:
|
|
# 1624| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1625| getStmt(0): [ReturnStmt] return ...
|
|
# 1625| getExpr(): [ImplicitThisFieldAccess,PointerFieldAccess] r
|
|
# 1625| Type = [LValueReferenceType] int &
|
|
# 1625| ValueCategory = prvalue(load)
|
|
# 1625| getQualifier(): [ThisExpr] this
|
|
# 1625| Type = [PointerType] StructuredBindingTupleRefGet *
|
|
# 1625| ValueCategory = prvalue(load)
|
|
# 1625| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1625| Type = [LValueReferenceType] int &
|
|
# 1625| ValueCategory = prvalue
|
|
# 1625| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1625| Type = [IntType] int
|
|
# 1625| ValueCategory = lvalue
|
|
# 1628| [TopLevelFunction] void tuple_structured_binding_ref_get()
|
|
# 1628| <params>:
|
|
# 1628| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1629| getStmt(0): [DeclStmt] declaration
|
|
# 1629| getDeclarationEntry(0): [VariableDeclarationEntry] definition of t
|
|
# 1629| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1629| getVariable().getInitializer(): [Initializer] initializer for t
|
|
# 1629| getExpr(): [ConstructorCall] call to StructuredBindingTupleRefGet
|
|
# 1629| Type = [VoidType] void
|
|
# 1629| ValueCategory = prvalue
|
|
# 1631| getStmt(1): [BlockStmt] { ... }
|
|
# 1632| getStmt(0): [DeclStmt] declaration
|
|
# 1632| getDeclarationEntry(0): [VariableDeclarationEntry] definition of (unnamed local variable)
|
|
# 1632| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1632| getVariable().getInitializer(): [Initializer] initializer for (unnamed local variable)
|
|
# 1632| getExpr(): [VariableAccess] t
|
|
# 1632| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1632| ValueCategory = prvalue(load)
|
|
# 1632| getDeclarationEntry(1): [VariableDeclarationEntry] definition of i
|
|
# 1632| Type = [LValueReferenceType] type &
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 1632| getExpr(): [FunctionCall] call to get
|
|
# 1632| Type = [LValueReferenceType] type &
|
|
# 1632| ValueCategory = prvalue
|
|
# 1632| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1632| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1632| ValueCategory = xvalue
|
|
# 1632| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1632| Type = [LValueReferenceType] type &
|
|
# 1632| ValueCategory = prvalue
|
|
# 1632| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1632| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1632| ValueCategory = lvalue
|
|
# 1632| getDeclarationEntry(2): [VariableDeclarationEntry] definition of d
|
|
# 1632| Type = [LValueReferenceType] type &
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 1632| getExpr(): [FunctionCall] call to get
|
|
# 1632| Type = [LValueReferenceType] type &
|
|
# 1632| ValueCategory = prvalue
|
|
# 1632| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1632| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1632| ValueCategory = xvalue
|
|
# 1632| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1632| Type = [LValueReferenceType] type &
|
|
# 1632| ValueCategory = prvalue
|
|
# 1632| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1632| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1632| ValueCategory = lvalue
|
|
# 1632| getDeclarationEntry(3): [VariableDeclarationEntry] definition of r
|
|
# 1632| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for r
|
|
# 1632| getExpr(): [FunctionCall] call to get
|
|
# 1632| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1632| ValueCategory = prvalue
|
|
# 1632| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1632| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1632| ValueCategory = xvalue
|
|
# 1632| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1632| Type = [LValueReferenceType] int &
|
|
# 1632| ValueCategory = prvalue
|
|
# 1632| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1632| Type = [IntType] int
|
|
# 1632| ValueCategory = lvalue
|
|
# 1633| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1633| getExpr(): [AssignExpr] ... = ...
|
|
# 1633| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1633| ValueCategory = lvalue
|
|
# 1633| getLValue(): [VariableAccess] d
|
|
# 1633| Type = [LValueReferenceType] type &
|
|
# 1633| ValueCategory = prvalue(load)
|
|
# 1633| getRValue(): [Literal] 4.0
|
|
# 1633| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1633| Value = [Literal] 4.0
|
|
# 1633| ValueCategory = prvalue
|
|
# 1633| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1633| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1633| ValueCategory = lvalue
|
|
# 1634| getStmt(2): [DeclStmt] declaration
|
|
# 1634| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rd
|
|
# 1634| Type = [LValueReferenceType] double &
|
|
# 1634| getVariable().getInitializer(): [Initializer] initializer for rd
|
|
# 1634| getExpr(): [VariableAccess] d
|
|
# 1634| Type = [LValueReferenceType] type &
|
|
# 1634| ValueCategory = prvalue(load)
|
|
# 1634| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1634| Type = [LValueReferenceType] type &
|
|
# 1634| ValueCategory = prvalue
|
|
# 1634| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1634| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1634| ValueCategory = lvalue
|
|
# 1635| getStmt(3): [DeclStmt] declaration
|
|
# 1635| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1635| Type = [IntType] int
|
|
# 1635| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1635| getExpr(): [VariableAccess] i
|
|
# 1635| Type = [LValueReferenceType] type &
|
|
# 1635| ValueCategory = prvalue(load)
|
|
# 1635| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1635| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1635| ValueCategory = prvalue(load)
|
|
# 1636| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1636| getExpr(): [AssignExpr] ... = ...
|
|
# 1636| Type = [IntType] int
|
|
# 1636| ValueCategory = lvalue
|
|
# 1636| getLValue(): [VariableAccess] r
|
|
# 1636| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1636| ValueCategory = prvalue(load)
|
|
# 1636| getRValue(): [Literal] 5
|
|
# 1636| Type = [IntType] int
|
|
# 1636| Value = [Literal] 5
|
|
# 1636| ValueCategory = prvalue
|
|
# 1636| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1636| Type = [IntType] int
|
|
# 1636| ValueCategory = lvalue
|
|
# 1637| getStmt(5): [DeclStmt] declaration
|
|
# 1637| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rr
|
|
# 1637| Type = [LValueReferenceType] int &
|
|
# 1637| getVariable().getInitializer(): [Initializer] initializer for rr
|
|
# 1637| getExpr(): [VariableAccess] r
|
|
# 1637| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1637| ValueCategory = prvalue(load)
|
|
# 1637| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1637| Type = [LValueReferenceType] int &
|
|
# 1637| ValueCategory = prvalue
|
|
# 1637| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1637| Type = [IntType] int
|
|
# 1637| ValueCategory = lvalue
|
|
# 1638| getStmt(6): [DeclStmt] declaration
|
|
# 1638| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1638| Type = [IntType] int
|
|
# 1638| getVariable().getInitializer(): [Initializer] initializer for w
|
|
# 1638| getExpr(): [VariableAccess] r
|
|
# 1638| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1638| ValueCategory = prvalue(load)
|
|
# 1638| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1638| Type = [IntType] int
|
|
# 1638| ValueCategory = prvalue(load)
|
|
# 1641| getStmt(2): [BlockStmt] { ... }
|
|
# 1642| getStmt(0): [DeclStmt] declaration
|
|
# 1642| getDeclarationEntry(0): [VariableDeclarationEntry] definition of unnamed_local_variable
|
|
# 1642| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1642| getVariable().getInitializer(): [Initializer] initializer for unnamed_local_variable
|
|
# 1642| getExpr(): [VariableAccess] t
|
|
# 1642| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1642| ValueCategory = prvalue(load)
|
|
# 1643| getStmt(1): [DeclStmt] declaration
|
|
# 1643| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 1643| Type = [LValueReferenceType] type &
|
|
# 1643| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 1643| getExpr(): [FunctionCall] call to get
|
|
# 1643| Type = [LValueReferenceType] type &
|
|
# 1643| ValueCategory = prvalue
|
|
# 1643| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1643| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1643| ValueCategory = lvalue
|
|
# 1643| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1643| Type = [LValueReferenceType] type &
|
|
# 1643| ValueCategory = prvalue
|
|
# 1643| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1643| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1643| ValueCategory = lvalue
|
|
# 1644| getStmt(2): [DeclStmt] declaration
|
|
# 1644| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 1644| Type = [LValueReferenceType] type &
|
|
# 1644| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 1644| getExpr(): [FunctionCall] call to get
|
|
# 1644| Type = [LValueReferenceType] type &
|
|
# 1644| ValueCategory = prvalue
|
|
# 1644| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1644| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1644| ValueCategory = lvalue
|
|
# 1644| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1644| Type = [LValueReferenceType] type &
|
|
# 1644| ValueCategory = prvalue
|
|
# 1644| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1644| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1644| ValueCategory = lvalue
|
|
# 1645| getStmt(3): [DeclStmt] declaration
|
|
# 1645| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r
|
|
# 1645| Type = [LValueReferenceType] int &
|
|
# 1645| getVariable().getInitializer(): [Initializer] initializer for r
|
|
# 1645| getExpr(): [FunctionCall] call to get
|
|
# 1645| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1645| ValueCategory = prvalue
|
|
# 1645| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1645| Type = [Struct] StructuredBindingTupleRefGet
|
|
# 1645| ValueCategory = lvalue
|
|
# 1645| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1645| Type = [LValueReferenceType] int &
|
|
# 1645| ValueCategory = prvalue
|
|
# 1645| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1645| Type = [IntType] int
|
|
# 1645| ValueCategory = lvalue
|
|
# 1646| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1646| getExpr(): [AssignExpr] ... = ...
|
|
# 1646| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1646| ValueCategory = lvalue
|
|
# 1646| getLValue(): [VariableAccess] d
|
|
# 1646| Type = [LValueReferenceType] type &
|
|
# 1646| ValueCategory = prvalue(load)
|
|
# 1646| getRValue(): [Literal] 4.0
|
|
# 1646| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1646| Value = [Literal] 4.0
|
|
# 1646| ValueCategory = prvalue
|
|
# 1646| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1646| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1646| ValueCategory = lvalue
|
|
# 1647| getStmt(5): [DeclStmt] declaration
|
|
# 1647| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rd
|
|
# 1647| Type = [LValueReferenceType] double &
|
|
# 1647| getVariable().getInitializer(): [Initializer] initializer for rd
|
|
# 1647| getExpr(): [VariableAccess] d
|
|
# 1647| Type = [LValueReferenceType] type &
|
|
# 1647| ValueCategory = prvalue(load)
|
|
# 1647| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1647| Type = [LValueReferenceType] type &
|
|
# 1647| ValueCategory = prvalue
|
|
# 1647| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1647| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1647| ValueCategory = lvalue
|
|
# 1648| getStmt(6): [DeclStmt] declaration
|
|
# 1648| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1648| Type = [IntType] int
|
|
# 1648| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1648| getExpr(): [VariableAccess] i
|
|
# 1648| Type = [LValueReferenceType] type &
|
|
# 1648| ValueCategory = prvalue(load)
|
|
# 1648| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1648| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1648| ValueCategory = prvalue(load)
|
|
# 1649| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1649| getExpr(): [AssignExpr] ... = ...
|
|
# 1649| Type = [IntType] int
|
|
# 1649| ValueCategory = lvalue
|
|
# 1649| getLValue(): [VariableAccess] r
|
|
# 1649| Type = [LValueReferenceType] int &
|
|
# 1649| ValueCategory = prvalue(load)
|
|
# 1649| getRValue(): [Literal] 5
|
|
# 1649| Type = [IntType] int
|
|
# 1649| Value = [Literal] 5
|
|
# 1649| ValueCategory = prvalue
|
|
# 1649| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1649| Type = [IntType] int
|
|
# 1649| ValueCategory = lvalue
|
|
# 1650| getStmt(8): [DeclStmt] declaration
|
|
# 1650| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rr
|
|
# 1650| Type = [LValueReferenceType] int &
|
|
# 1650| getVariable().getInitializer(): [Initializer] initializer for rr
|
|
# 1650| getExpr(): [VariableAccess] r
|
|
# 1650| Type = [LValueReferenceType] int &
|
|
# 1650| ValueCategory = prvalue(load)
|
|
# 1650| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1650| Type = [LValueReferenceType] int &
|
|
# 1650| ValueCategory = prvalue
|
|
# 1650| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1650| Type = [IntType] int
|
|
# 1650| ValueCategory = lvalue
|
|
# 1651| getStmt(9): [DeclStmt] declaration
|
|
# 1651| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1651| Type = [IntType] int
|
|
# 1651| getVariable().getInitializer(): [Initializer] initializer for w
|
|
# 1651| getExpr(): [VariableAccess] r
|
|
# 1651| Type = [LValueReferenceType] int &
|
|
# 1651| ValueCategory = prvalue(load)
|
|
# 1651| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1651| Type = [IntType] int
|
|
# 1651| ValueCategory = prvalue(load)
|
|
# 1653| getStmt(3): [ReturnStmt] return ...
|
|
# 1655| [CopyAssignmentOperator] StructuredBindingTupleNoRefGet& StructuredBindingTupleNoRefGet::operator=(StructuredBindingTupleNoRefGet const&)
|
|
# 1655| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const StructuredBindingTupleNoRefGet &
|
|
# 1655| [Constructor] void StructuredBindingTupleNoRefGet::StructuredBindingTupleNoRefGet()
|
|
# 1655| <params>:
|
|
# 1655| <initializations>:
|
|
# 1655| getInitializer(0): [ConstructorFieldInit] constructor init of field i
|
|
# 1655| Type = [IntType] int
|
|
# 1655| ValueCategory = prvalue
|
|
# 1655| getInitializer(1): [ConstructorFieldInit] constructor init of field r
|
|
# 1655| Type = [LValueReferenceType] int &
|
|
# 1655| ValueCategory = prvalue
|
|
# 1655| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1655| getStmt(0): [ReturnStmt] return ...
|
|
# 1655| [CopyConstructor] void StructuredBindingTupleNoRefGet::StructuredBindingTupleNoRefGet(StructuredBindingTupleNoRefGet const&)
|
|
# 1655| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const StructuredBindingTupleNoRefGet &
|
|
# 1655| [MoveConstructor] void StructuredBindingTupleNoRefGet::StructuredBindingTupleNoRefGet(StructuredBindingTupleNoRefGet&&)
|
|
# 1655| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] StructuredBindingTupleNoRefGet &&
|
|
# 1660| [MemberFunction,TemplateFunction] type StructuredBindingTupleNoRefGet::get<int i>()
|
|
# 1660| <params>:
|
|
# 1664| [CopyAssignmentOperator] std::tuple_size<StructuredBindingTupleNoRefGet>& std::tuple_size<StructuredBindingTupleNoRefGet>::operator=(std::tuple_size<StructuredBindingTupleNoRefGet> const&)
|
|
# 1664| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const tuple_size<StructuredBindingTupleNoRefGet> &
|
|
# 1664| [MoveAssignmentOperator] std::tuple_size<StructuredBindingTupleNoRefGet>& std::tuple_size<StructuredBindingTupleNoRefGet>::operator=(std::tuple_size<StructuredBindingTupleNoRefGet>&&)
|
|
# 1664| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] tuple_size<StructuredBindingTupleNoRefGet> &&
|
|
# 1669| [CopyAssignmentOperator] std::tuple_element<int 0, StructuredBindingTupleNoRefGet>& std::tuple_element<int 0, StructuredBindingTupleNoRefGet>::operator=(std::tuple_element<int 0, StructuredBindingTupleNoRefGet> const&)
|
|
# 1669| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const tuple_element<0, StructuredBindingTupleNoRefGet> &
|
|
# 1669| [MoveAssignmentOperator] std::tuple_element<int 0, StructuredBindingTupleNoRefGet>& std::tuple_element<int 0, StructuredBindingTupleNoRefGet>::operator=(std::tuple_element<int 0, StructuredBindingTupleNoRefGet>&&)
|
|
# 1669| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] tuple_element<0, StructuredBindingTupleNoRefGet> &&
|
|
# 1673| [CopyAssignmentOperator] std::tuple_element<int 1, StructuredBindingTupleNoRefGet>& std::tuple_element<int 1, StructuredBindingTupleNoRefGet>::operator=(std::tuple_element<int 1, StructuredBindingTupleNoRefGet> const&)
|
|
# 1673| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const tuple_element<1, StructuredBindingTupleNoRefGet> &
|
|
# 1673| [MoveAssignmentOperator] std::tuple_element<int 1, StructuredBindingTupleNoRefGet>& std::tuple_element<int 1, StructuredBindingTupleNoRefGet>::operator=(std::tuple_element<int 1, StructuredBindingTupleNoRefGet>&&)
|
|
# 1673| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] tuple_element<1, StructuredBindingTupleNoRefGet> &&
|
|
# 1677| [CopyAssignmentOperator] std::tuple_element<int 2, StructuredBindingTupleNoRefGet>& std::tuple_element<int 2, StructuredBindingTupleNoRefGet>::operator=(std::tuple_element<int 2, StructuredBindingTupleNoRefGet> const&)
|
|
# 1677| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const tuple_element<2, StructuredBindingTupleNoRefGet> &
|
|
# 1677| [MoveAssignmentOperator] std::tuple_element<int 2, StructuredBindingTupleNoRefGet>& std::tuple_element<int 2, StructuredBindingTupleNoRefGet>::operator=(std::tuple_element<int 2, StructuredBindingTupleNoRefGet>&&)
|
|
# 1677| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] tuple_element<2, StructuredBindingTupleNoRefGet> &&
|
|
# 1682| [FunctionTemplateSpecialization,MemberFunction] std::tuple_element<int 0, StructuredBindingTupleNoRefGet>::type StructuredBindingTupleNoRefGet::get<int 0>()
|
|
# 1682| <params>:
|
|
# 1682| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1683| getStmt(0): [ReturnStmt] return ...
|
|
# 1683| getExpr(): [ImplicitThisFieldAccess,PointerFieldAccess] i
|
|
# 1683| Type = [IntType] int
|
|
# 1683| ValueCategory = prvalue(load)
|
|
# 1683| getQualifier(): [ThisExpr] this
|
|
# 1683| Type = [PointerType] StructuredBindingTupleNoRefGet *
|
|
# 1683| ValueCategory = prvalue(load)
|
|
# 1686| [FunctionTemplateSpecialization,MemberFunction] std::tuple_element<int 1, StructuredBindingTupleNoRefGet>::type StructuredBindingTupleNoRefGet::get<int 1>()
|
|
# 1686| <params>:
|
|
# 1686| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1687| getStmt(0): [ReturnStmt] return ...
|
|
# 1687| getExpr(): [ImplicitThisFieldAccess,PointerFieldAccess] r
|
|
# 1687| Type = [LValueReferenceType] int &
|
|
# 1687| ValueCategory = prvalue(load)
|
|
# 1687| getQualifier(): [ThisExpr] this
|
|
# 1687| Type = [PointerType] StructuredBindingTupleNoRefGet *
|
|
# 1687| ValueCategory = prvalue(load)
|
|
# 1687| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1687| Type = [LValueReferenceType] int &
|
|
# 1687| ValueCategory = prvalue
|
|
# 1687| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1687| Type = [IntType] int
|
|
# 1687| ValueCategory = lvalue
|
|
# 1690| [FunctionTemplateSpecialization,MemberFunction] std::tuple_element<int 2, StructuredBindingTupleNoRefGet>::type StructuredBindingTupleNoRefGet::get<int 2>()
|
|
# 1690| <params>:
|
|
# 1690| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1691| getStmt(0): [ReturnStmt] return ...
|
|
# 1691| getExpr(): [Literal] 5
|
|
# 1691| Type = [IntType] int
|
|
# 1691| Value = [Literal] 5
|
|
# 1691| ValueCategory = prvalue
|
|
# 1691| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1691| Type = [LValueReferenceType] int &
|
|
# 1691| ValueCategory = prvalue
|
|
# 1691| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1691| Type = [IntType] int
|
|
# 1691| ValueCategory = lvalue
|
|
# 1694| [TopLevelFunction] void tuple_structured_binding_no_ref_get()
|
|
# 1694| <params>:
|
|
# 1694| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1695| getStmt(0): [DeclStmt] declaration
|
|
# 1695| getDeclarationEntry(0): [VariableDeclarationEntry] definition of t
|
|
# 1695| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1695| getVariable().getInitializer(): [Initializer] initializer for t
|
|
# 1695| getExpr(): [ConstructorCall] call to StructuredBindingTupleNoRefGet
|
|
# 1695| Type = [VoidType] void
|
|
# 1695| ValueCategory = prvalue
|
|
# 1697| getStmt(1): [BlockStmt] { ... }
|
|
# 1698| getStmt(0): [DeclStmt] declaration
|
|
# 1698| getDeclarationEntry(0): [VariableDeclarationEntry] definition of (unnamed local variable)
|
|
# 1698| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1698| getVariable().getInitializer(): [Initializer] initializer for (unnamed local variable)
|
|
# 1698| getExpr(): [VariableAccess] t
|
|
# 1698| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1698| ValueCategory = lvalue
|
|
# 1698| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1698| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1698| ValueCategory = prvalue
|
|
# 1698| getDeclarationEntry(1): [VariableDeclarationEntry] definition of i
|
|
# 1698| Type = [RValueReferenceType] type &&
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 1698| getExpr(): [FunctionCall] call to get
|
|
# 1698| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1698| ValueCategory = prvalue
|
|
# 1698| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1698| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1698| ValueCategory = prvalue(load)
|
|
# 1698| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1698| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1698| ValueCategory = lvalue
|
|
# 1698| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1698| Type = [LValueReferenceType] type &
|
|
# 1698| ValueCategory = prvalue
|
|
# 1698| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1698| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1698| ValueCategory = lvalue
|
|
# 1698| getDeclarationEntry(2): [VariableDeclarationEntry] definition of r
|
|
# 1698| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for r
|
|
# 1698| getExpr(): [FunctionCall] call to get
|
|
# 1698| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1698| ValueCategory = prvalue
|
|
# 1698| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1698| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1698| ValueCategory = prvalue(load)
|
|
# 1698| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1698| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1698| ValueCategory = lvalue
|
|
# 1698| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1698| Type = [LValueReferenceType] int &
|
|
# 1698| ValueCategory = prvalue
|
|
# 1698| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1698| Type = [IntType] int
|
|
# 1698| ValueCategory = lvalue
|
|
# 1698| getDeclarationEntry(3): [VariableDeclarationEntry] definition of rv
|
|
# 1698| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for rv
|
|
# 1698| getExpr(): [FunctionCall] call to get
|
|
# 1698| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1698| ValueCategory = prvalue
|
|
# 1698| getQualifier(): [VariableAccess] (unnamed local variable)
|
|
# 1698| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1698| ValueCategory = prvalue(load)
|
|
# 1698| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1698| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1698| ValueCategory = lvalue
|
|
# 1698| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1698| Type = [LValueReferenceType] int &
|
|
# 1698| ValueCategory = prvalue
|
|
# 1698| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1698| Type = [IntType] int
|
|
# 1698| ValueCategory = xvalue
|
|
# 1699| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1699| getExpr(): [AssignExpr] ... = ...
|
|
# 1699| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1699| ValueCategory = lvalue
|
|
# 1699| getLValue(): [VariableAccess] i
|
|
# 1699| Type = [RValueReferenceType] type &&
|
|
# 1699| ValueCategory = prvalue(load)
|
|
# 1699| getRValue(): [Literal] 4
|
|
# 1699| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1699| Value = [Literal] 4
|
|
# 1699| ValueCategory = prvalue
|
|
# 1699| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1699| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1699| ValueCategory = lvalue
|
|
# 1700| getStmt(2): [DeclStmt] declaration
|
|
# 1700| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ri
|
|
# 1700| Type = [LValueReferenceType] int &
|
|
# 1700| getVariable().getInitializer(): [Initializer] initializer for ri
|
|
# 1700| getExpr(): [VariableAccess] i
|
|
# 1700| Type = [RValueReferenceType] type &&
|
|
# 1700| ValueCategory = prvalue(load)
|
|
# 1700| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1700| Type = [LValueReferenceType] type &
|
|
# 1700| ValueCategory = prvalue
|
|
# 1700| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1700| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1700| ValueCategory = lvalue
|
|
# 1701| getStmt(3): [DeclStmt] declaration
|
|
# 1701| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1701| Type = [IntType] int
|
|
# 1701| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1701| getExpr(): [VariableAccess] i
|
|
# 1701| Type = [RValueReferenceType] type &&
|
|
# 1701| ValueCategory = prvalue(load)
|
|
# 1701| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1701| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1701| ValueCategory = prvalue(load)
|
|
# 1702| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1702| getExpr(): [AssignExpr] ... = ...
|
|
# 1702| Type = [IntType] int
|
|
# 1702| ValueCategory = lvalue
|
|
# 1702| getLValue(): [VariableAccess] r
|
|
# 1702| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1702| ValueCategory = prvalue(load)
|
|
# 1702| getRValue(): [Literal] 5
|
|
# 1702| Type = [IntType] int
|
|
# 1702| Value = [Literal] 5
|
|
# 1702| ValueCategory = prvalue
|
|
# 1702| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1702| Type = [IntType] int
|
|
# 1702| ValueCategory = lvalue
|
|
# 1703| getStmt(5): [DeclStmt] declaration
|
|
# 1703| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rr
|
|
# 1703| Type = [LValueReferenceType] int &
|
|
# 1703| getVariable().getInitializer(): [Initializer] initializer for rr
|
|
# 1703| getExpr(): [VariableAccess] r
|
|
# 1703| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1703| ValueCategory = prvalue(load)
|
|
# 1703| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1703| Type = [LValueReferenceType] int &
|
|
# 1703| ValueCategory = prvalue
|
|
# 1703| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1703| Type = [IntType] int
|
|
# 1703| ValueCategory = lvalue
|
|
# 1704| getStmt(6): [DeclStmt] declaration
|
|
# 1704| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1704| Type = [IntType] int
|
|
# 1704| getVariable().getInitializer(): [Initializer] initializer for w
|
|
# 1704| getExpr(): [VariableAccess] r
|
|
# 1704| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1704| ValueCategory = prvalue(load)
|
|
# 1704| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1704| Type = [IntType] int
|
|
# 1704| ValueCategory = prvalue(load)
|
|
# 1707| getStmt(2): [BlockStmt] { ... }
|
|
# 1708| getStmt(0): [DeclStmt] declaration
|
|
# 1708| getDeclarationEntry(0): [VariableDeclarationEntry] definition of unnamed_local_variable
|
|
# 1708| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1708| getVariable().getInitializer(): [Initializer] initializer for unnamed_local_variable
|
|
# 1708| getExpr(): [VariableAccess] t
|
|
# 1708| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1708| ValueCategory = lvalue
|
|
# 1708| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1708| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1708| ValueCategory = prvalue
|
|
# 1709| getStmt(1): [DeclStmt] declaration
|
|
# 1709| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 1709| Type = [RValueReferenceType] type &&
|
|
# 1709| getVariable().getInitializer(): [Initializer] initializer for i
|
|
# 1709| getExpr(): [FunctionCall] call to get
|
|
# 1709| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1709| ValueCategory = prvalue
|
|
# 1709| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1709| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1709| ValueCategory = prvalue(load)
|
|
# 1709| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1709| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1709| ValueCategory = lvalue
|
|
# 1709| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1709| Type = [LValueReferenceType] type &
|
|
# 1709| ValueCategory = prvalue
|
|
# 1709| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1709| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1709| ValueCategory = lvalue
|
|
# 1710| getStmt(2): [DeclStmt] declaration
|
|
# 1710| getDeclarationEntry(0): [VariableDeclarationEntry] definition of r
|
|
# 1710| Type = [LValueReferenceType] int &
|
|
# 1710| getVariable().getInitializer(): [Initializer] initializer for r
|
|
# 1710| getExpr(): [FunctionCall] call to get
|
|
# 1710| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1710| ValueCategory = prvalue
|
|
# 1710| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1710| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1710| ValueCategory = prvalue(load)
|
|
# 1710| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1710| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1710| ValueCategory = lvalue
|
|
# 1710| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1710| Type = [LValueReferenceType] int &
|
|
# 1710| ValueCategory = prvalue
|
|
# 1710| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1710| Type = [IntType] int
|
|
# 1710| ValueCategory = lvalue
|
|
# 1711| getStmt(3): [DeclStmt] declaration
|
|
# 1711| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rv
|
|
# 1711| Type = [RValueReferenceType] int &&
|
|
# 1711| getVariable().getInitializer(): [Initializer] initializer for rv
|
|
# 1711| getExpr(): [FunctionCall] call to get
|
|
# 1711| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1711| ValueCategory = prvalue
|
|
# 1711| getQualifier(): [VariableAccess] unnamed_local_variable
|
|
# 1711| Type = [LValueReferenceType] StructuredBindingTupleNoRefGet &
|
|
# 1711| ValueCategory = prvalue(load)
|
|
# 1711| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1711| Type = [Struct] StructuredBindingTupleNoRefGet
|
|
# 1711| ValueCategory = lvalue
|
|
# 1711| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1711| Type = [LValueReferenceType] int &
|
|
# 1711| ValueCategory = prvalue
|
|
# 1711| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1711| Type = [IntType] int
|
|
# 1711| ValueCategory = xvalue
|
|
# 1712| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1712| getExpr(): [AssignExpr] ... = ...
|
|
# 1712| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1712| ValueCategory = lvalue
|
|
# 1712| getLValue(): [VariableAccess] i
|
|
# 1712| Type = [RValueReferenceType] type &&
|
|
# 1712| ValueCategory = prvalue(load)
|
|
# 1712| getRValue(): [Literal] 4
|
|
# 1712| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1712| Value = [Literal] 4
|
|
# 1712| ValueCategory = prvalue
|
|
# 1712| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1712| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1712| ValueCategory = lvalue
|
|
# 1713| getStmt(5): [DeclStmt] declaration
|
|
# 1713| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ri
|
|
# 1713| Type = [LValueReferenceType] int &
|
|
# 1713| getVariable().getInitializer(): [Initializer] initializer for ri
|
|
# 1713| getExpr(): [VariableAccess] i
|
|
# 1713| Type = [RValueReferenceType] type &&
|
|
# 1713| ValueCategory = prvalue(load)
|
|
# 1713| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1713| Type = [LValueReferenceType] type &
|
|
# 1713| ValueCategory = prvalue
|
|
# 1713| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1713| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1713| ValueCategory = lvalue
|
|
# 1714| getStmt(6): [DeclStmt] declaration
|
|
# 1714| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1714| Type = [IntType] int
|
|
# 1714| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1714| getExpr(): [VariableAccess] i
|
|
# 1714| Type = [RValueReferenceType] type &&
|
|
# 1714| ValueCategory = prvalue(load)
|
|
# 1714| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1714| Type = [NestedTypedefType,UsingAliasTypedefType] type
|
|
# 1714| ValueCategory = prvalue(load)
|
|
# 1715| getStmt(7): [ExprStmt] ExprStmt
|
|
# 1715| getExpr(): [AssignExpr] ... = ...
|
|
# 1715| Type = [IntType] int
|
|
# 1715| ValueCategory = lvalue
|
|
# 1715| getLValue(): [VariableAccess] r
|
|
# 1715| Type = [LValueReferenceType] int &
|
|
# 1715| ValueCategory = prvalue(load)
|
|
# 1715| getRValue(): [Literal] 5
|
|
# 1715| Type = [IntType] int
|
|
# 1715| Value = [Literal] 5
|
|
# 1715| ValueCategory = prvalue
|
|
# 1715| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1715| Type = [IntType] int
|
|
# 1715| ValueCategory = lvalue
|
|
# 1716| getStmt(8): [DeclStmt] declaration
|
|
# 1716| getDeclarationEntry(0): [VariableDeclarationEntry] definition of rr
|
|
# 1716| Type = [LValueReferenceType] int &
|
|
# 1716| getVariable().getInitializer(): [Initializer] initializer for rr
|
|
# 1716| getExpr(): [VariableAccess] r
|
|
# 1716| Type = [LValueReferenceType] int &
|
|
# 1716| ValueCategory = prvalue(load)
|
|
# 1716| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1716| Type = [LValueReferenceType] int &
|
|
# 1716| ValueCategory = prvalue
|
|
# 1716| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1716| Type = [IntType] int
|
|
# 1716| ValueCategory = lvalue
|
|
# 1717| getStmt(9): [DeclStmt] declaration
|
|
# 1717| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1717| Type = [IntType] int
|
|
# 1717| getVariable().getInitializer(): [Initializer] initializer for w
|
|
# 1717| getExpr(): [VariableAccess] r
|
|
# 1717| Type = [LValueReferenceType] int &
|
|
# 1717| ValueCategory = prvalue(load)
|
|
# 1717| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1717| Type = [IntType] int
|
|
# 1717| ValueCategory = prvalue(load)
|
|
# 1719| getStmt(3): [ReturnStmt] return ...
|
|
# 1721| [TopLevelFunction] void array_structured_binding_non_ref_init()
|
|
# 1721| <params>:
|
|
# 1721| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1722| getStmt(0): [DeclStmt] declaration
|
|
# 1722| getDeclarationEntry(0): [VariableDeclarationEntry] definition of xs
|
|
# 1722| Type = [ArrayType] int[2]
|
|
# 1722| getVariable().getInitializer(): [Initializer] initializer for xs
|
|
# 1722| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 1722| Type = [ArrayType] int[2]
|
|
# 1722| ValueCategory = prvalue
|
|
# 1722| getAnElementExpr(0): [Literal] 1
|
|
# 1722| Type = [IntType] int
|
|
# 1722| Value = [Literal] 1
|
|
# 1722| ValueCategory = prvalue
|
|
# 1722| getAnElementExpr(1): [Literal] 2
|
|
# 1722| Type = [IntType] int
|
|
# 1722| Value = [Literal] 2
|
|
# 1722| ValueCategory = prvalue
|
|
# 1723| getStmt(1): [DeclStmt] declaration
|
|
# 1723| getDeclarationEntry(0): [VariableDeclarationEntry] definition of (unnamed local variable)
|
|
# 1723| Type = [ArrayType] int[2]
|
|
# 1723| getVariable().getInitializer(): [Initializer] initializer for (unnamed local variable)
|
|
# 1723| getExpr(): [VariableAccess] xs
|
|
# 1723| Type = [ArrayType] int[2]
|
|
# 1723| ValueCategory = prvalue(load)
|
|
# 1723| getDeclarationEntry(1): [VariableDeclarationEntry] definition of x0
|
|
# 1723| Type = [IntType] int
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for x0
|
|
#-----| getExpr(): [ArrayExpr] access to array
|
|
#-----| Type = [IntType] int
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArrayBase(): [VariableAccess] (unnamed local variable)
|
|
#-----| Type = [ArrayType] int[2]
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArrayOffset(): [Literal] 0
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| Value = [Literal] 0
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
#-----| Type = [IntPointerType] int *
|
|
#-----| ValueCategory = prvalue
|
|
# 1723| getDeclarationEntry(2): [VariableDeclarationEntry] definition of x1
|
|
# 1723| Type = [IntType] int
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for x1
|
|
#-----| getExpr(): [ArrayExpr] access to array
|
|
#-----| Type = [IntType] int
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArrayBase(): [VariableAccess] (unnamed local variable)
|
|
#-----| Type = [ArrayType] int[2]
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArrayOffset(): [Literal] 1
|
|
#-----| Type = [LongType] unsigned long
|
|
#-----| Value = [Literal] 1
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getArrayBase().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
#-----| Type = [IntPointerType] int *
|
|
#-----| ValueCategory = prvalue
|
|
# 1724| getStmt(2): [ReturnStmt] return ...
|
|
# 1726| [CopyAssignmentOperator] CapturedLambdaMyObj& CapturedLambdaMyObj::operator=(CapturedLambdaMyObj const&)
|
|
# 1726| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CapturedLambdaMyObj &
|
|
# 1726| [MoveAssignmentOperator] CapturedLambdaMyObj& CapturedLambdaMyObj::operator=(CapturedLambdaMyObj&&)
|
|
# 1726| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] CapturedLambdaMyObj &&
|
|
# 1726| [CopyConstructor] void CapturedLambdaMyObj::CapturedLambdaMyObj(CapturedLambdaMyObj const&)
|
|
# 1726| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CapturedLambdaMyObj &
|
|
# 1726| [MoveConstructor] void CapturedLambdaMyObj::CapturedLambdaMyObj(CapturedLambdaMyObj&&)
|
|
# 1726| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] CapturedLambdaMyObj &&
|
|
# 1729| [Constructor] void CapturedLambdaMyObj::CapturedLambdaMyObj()
|
|
# 1729| <params>:
|
|
# 1729| <initializations>:
|
|
# 1729| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1729| getStmt(0): [ReturnStmt] return ...
|
|
# 1732| [TopLevelFunction] void captured_lambda(int, int&, int&&)
|
|
# 1732| <params>:
|
|
# 1732| getParameter(0): [Parameter] x
|
|
# 1732| Type = [IntType] int
|
|
# 1732| getParameter(1): [Parameter] y
|
|
# 1732| Type = [LValueReferenceType] int &
|
|
# 1732| getParameter(2): [Parameter] z
|
|
# 1732| Type = [RValueReferenceType] int &&
|
|
# 1733| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1734| getStmt(0): [DeclStmt] declaration
|
|
# 1734| getDeclarationEntry(0): [VariableDeclarationEntry] definition of obj1
|
|
# 1734| Type = [LValueReferenceType] const CapturedLambdaMyObj &
|
|
# 1734| getVariable().getInitializer(): [Initializer] initializer for obj1
|
|
# 1734| getExpr(): [ConstructorCall] call to CapturedLambdaMyObj
|
|
# 1734| Type = [VoidType] void
|
|
# 1734| ValueCategory = prvalue
|
|
# 1734| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1734| Type = [LValueReferenceType] const CapturedLambdaMyObj &
|
|
# 1734| ValueCategory = prvalue
|
|
# 1734| getExpr(): [CStyleCast] (const CapturedLambdaMyObj)...
|
|
# 1734| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1734| Type = [SpecifiedType] const CapturedLambdaMyObj
|
|
# 1734| ValueCategory = lvalue
|
|
# 1734| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1734| Type = [Class] CapturedLambdaMyObj
|
|
# 1734| ValueCategory = lvalue
|
|
# 1735| getStmt(1): [DeclStmt] declaration
|
|
# 1735| getDeclarationEntry(0): [VariableDeclarationEntry] definition of obj2
|
|
# 1735| Type = [Class] CapturedLambdaMyObj
|
|
# 1735| getVariable().getInitializer(): [Initializer] initializer for obj2
|
|
# 1735| getExpr(): [ConstructorCall] call to CapturedLambdaMyObj
|
|
# 1735| Type = [VoidType] void
|
|
# 1735| ValueCategory = prvalue
|
|
# 1737| getStmt(2): [DeclStmt] declaration
|
|
# 1737| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_outer
|
|
# 1737| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1737| getVariable().getInitializer(): [Initializer] initializer for lambda_outer
|
|
# 1737| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1737| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1737| ValueCategory = prvalue
|
|
# 1737| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1737| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1737| ValueCategory = prvalue
|
|
# 1737| getAFieldExpr(obj1): [VariableAccess] obj1
|
|
# 1737| Type = [LValueReferenceType] const CapturedLambdaMyObj &
|
|
# 1737| ValueCategory = prvalue(load)
|
|
# 1737| getAFieldExpr(obj2): [VariableAccess] obj2
|
|
# 1737| Type = [Class] CapturedLambdaMyObj
|
|
# 1737| ValueCategory = prvalue(load)
|
|
# 1737| getAFieldExpr(x): [VariableAccess] x
|
|
# 1737| Type = [IntType] int
|
|
# 1737| ValueCategory = prvalue(load)
|
|
# 1737| getAFieldExpr(y): [VariableAccess] y
|
|
# 1737| Type = [LValueReferenceType] int &
|
|
# 1737| ValueCategory = prvalue(load)
|
|
# 1737| getAFieldExpr(z): [VariableAccess] z
|
|
# 1737| Type = [RValueReferenceType] int &&
|
|
# 1737| ValueCategory = prvalue(load)
|
|
#-----| getAFieldExpr(obj1).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const CapturedLambdaMyObj
|
|
#-----| ValueCategory = prvalue(load)
|
|
# 1739| getAFieldExpr(y).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1739| Type = [IntType] int
|
|
# 1739| ValueCategory = prvalue(load)
|
|
# 1739| getAFieldExpr(z).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1739| Type = [IntType] int
|
|
# 1739| ValueCategory = prvalue(load)
|
|
# 1740| getStmt(3): [ReturnStmt] return ...
|
|
# 1737| [CopyAssignmentOperator] (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)& (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator=((void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25) const&)
|
|
# 1737| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1737, col. 25 &
|
|
# 1737| [CopyConstructor] void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::(unnamed constructor)((void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25) const&)
|
|
# 1737| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1737, col. 25 &
|
|
# 1737| [MoveConstructor] void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::(unnamed constructor)((void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)&&)
|
|
# 1737| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1737, col. 25 &&
|
|
# 1737| [Constructor] void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::(unnamed constructor)()
|
|
# 1737| <params>:
|
|
# 1737| [ConstMemberFunction] void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const
|
|
# 1737| <params>:
|
|
# 1737| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1738| getStmt(0): [DeclStmt] declaration
|
|
# 1738| getDeclarationEntry(0): [VariableDeclarationEntry] definition of lambda_inner
|
|
# 1738| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1738| getVariable().getInitializer(): [Initializer] initializer for lambda_inner
|
|
# 1738| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1738| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1738| ValueCategory = prvalue
|
|
# 1738| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1738| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1738| ValueCategory = prvalue
|
|
# 1738| getAFieldExpr(obj1): [PointerFieldAccess] obj1
|
|
# 1738| Type = [SpecifiedType] const CapturedLambdaMyObj
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getQualifier(): [ThisExpr] this
|
|
# 1738| Type = [PointerType] lambda [] type at line 1738, col. 29 *
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getAFieldExpr(obj2): [PointerFieldAccess] obj2
|
|
# 1738| Type = [Class] CapturedLambdaMyObj
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getQualifier(): [ThisExpr] this
|
|
# 1738| Type = [PointerType] lambda [] type at line 1738, col. 29 *
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getAFieldExpr(x): [PointerFieldAccess] x
|
|
# 1738| Type = [IntType] int
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getQualifier(): [ThisExpr] this
|
|
# 1738| Type = [PointerType] const lambda [] type at line 1737, col. 25 *
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getAFieldExpr(y): [PointerFieldAccess] y
|
|
# 1738| Type = [IntType] int
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getQualifier(): [ThisExpr] this
|
|
# 1738| Type = [PointerType] const lambda [] type at line 1737, col. 25 *
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getAFieldExpr(z): [PointerFieldAccess] z
|
|
# 1738| Type = [IntType] int
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1738| getQualifier(): [ThisExpr] this
|
|
# 1738| Type = [PointerType] const lambda [] type at line 1737, col. 25 *
|
|
# 1738| ValueCategory = prvalue(load)
|
|
# 1739| getStmt(1): [ReturnStmt] return ...
|
|
# 1738| [CopyAssignmentOperator] (void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29)& (void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29)::operator=((void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29) const&)
|
|
# 1738| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1738, col. 29 &
|
|
# 1738| [CopyConstructor] void (void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29)::(unnamed constructor)((void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29) const&)
|
|
# 1738| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1738, col. 29 &
|
|
# 1738| [MoveConstructor] void (void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29)::(unnamed constructor)((void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29)&&)
|
|
# 1738| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1738, col. 29 &&
|
|
# 1738| [Constructor] void (void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29)::(unnamed constructor)()
|
|
# 1738| <params>:
|
|
# 1738| [ConstMemberFunction] void (void (void captured_lambda(int, int&, int&&))::(lambda [] type at line 1737, col. 25)::operator()() const)::(lambda [] type at line 1738, col. 29)::operator()() const
|
|
# 1738| <params>:
|
|
# 1738| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1738| getStmt(0): [EmptyStmt] ;
|
|
# 1738| getStmt(1): [ReturnStmt] return ...
|
|
# 1742| [TopLevelFunction] int goto_on_same_line()
|
|
# 1742| <params>:
|
|
# 1742| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1743| getStmt(0): [DeclStmt] declaration
|
|
# 1743| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1743| Type = [IntType] int
|
|
# 1743| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 1743| getExpr(): [Literal] 42
|
|
# 1743| Type = [IntType] int
|
|
# 1743| Value = [Literal] 42
|
|
# 1743| ValueCategory = prvalue
|
|
# 1744| getStmt(1): [GotoStmt] goto ...
|
|
# 1744| getStmt(2): [LabelStmt] label ...:
|
|
# 1745| getStmt(3): [ReturnStmt] return ...
|
|
# 1745| getExpr(): [VariableAccess] x
|
|
# 1745| Type = [IntType] int
|
|
# 1745| ValueCategory = prvalue(load)
|
|
# 1748| [CopyAssignmentOperator] TrivialLambdaClass& TrivialLambdaClass::operator=(TrivialLambdaClass const&)
|
|
# 1748| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const TrivialLambdaClass &
|
|
# 1748| [MoveAssignmentOperator] TrivialLambdaClass& TrivialLambdaClass::operator=(TrivialLambdaClass&&)
|
|
# 1748| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] TrivialLambdaClass &&
|
|
# 1750| [ConstMemberFunction] void TrivialLambdaClass::m() const
|
|
# 1750| <params>:
|
|
# 1750| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1751| getStmt(0): [DeclStmt] declaration
|
|
# 1751| getDeclarationEntry(0): [VariableDeclarationEntry] definition of l_m_outer
|
|
# 1751| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1751| getVariable().getInitializer(): [Initializer] initializer for l_m_outer
|
|
# 1751| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1751| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1751| ValueCategory = prvalue
|
|
# 1751| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1751| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1751| ValueCategory = prvalue
|
|
# 1751| getAFieldExpr((captured this)): [PointerDereferenceExpr] * ...
|
|
# 1751| Type = [SpecifiedType] const TrivialLambdaClass
|
|
# 1751| ValueCategory = prvalue(load)
|
|
# 1751| getOperand(): [ThisExpr] this
|
|
# 1751| Type = [SpecifiedType] const TrivialLambdaClass *const
|
|
# 1751| ValueCategory = prvalue(load)
|
|
# 1758| getStmt(1): [ReturnStmt] return ...
|
|
# 1751| [CopyAssignmentOperator] (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)& (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator=((void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26) const&)
|
|
# 1751| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1751, col. 26 &
|
|
# 1751| [CopyConstructor] void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::(unnamed constructor)((void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26) const&)
|
|
# 1751| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1751, col. 26 &
|
|
# 1751| [MoveConstructor] void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::(unnamed constructor)((void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)&&)
|
|
# 1751| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1751, col. 26 &&
|
|
# 1751| [Constructor] void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::(unnamed constructor)()
|
|
# 1751| <params>:
|
|
# 1751| [ConstMemberFunction] void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const
|
|
# 1751| <params>:
|
|
# 1751| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1752| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1752| getExpr(): [FunctionCall] call to m
|
|
# 1752| Type = [VoidType] void
|
|
# 1752| ValueCategory = prvalue
|
|
# 1752| getQualifier(): [AddressOfExpr] & ...
|
|
# 1752| Type = [PointerType] const TrivialLambdaClass *
|
|
# 1752| ValueCategory = prvalue
|
|
# 1752| getOperand(): [ImplicitThisFieldAccess,PointerFieldAccess] (captured this)
|
|
# 1752| Type = [SpecifiedType] const TrivialLambdaClass
|
|
# 1752| ValueCategory = lvalue
|
|
# 1752| getQualifier(): [ThisExpr] this
|
|
# 1752| Type = [PointerType] const lambda [] type at line 1751, col. 26 *
|
|
# 1752| ValueCategory = prvalue(load)
|
|
# 1754| getStmt(1): [DeclStmt] declaration
|
|
# 1754| getDeclarationEntry(0): [VariableDeclarationEntry] definition of l_m_inner
|
|
# 1754| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1754| getVariable().getInitializer(): [Initializer] initializer for l_m_inner
|
|
# 1754| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1754| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1754| ValueCategory = prvalue
|
|
# 1754| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1754| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1754| ValueCategory = prvalue
|
|
# 1754| getAFieldExpr((captured this)): [PointerFieldAccess] (captured this)
|
|
# 1754| Type = [SpecifiedType] const TrivialLambdaClass
|
|
# 1754| ValueCategory = prvalue(load)
|
|
# 1754| getQualifier(): [ThisExpr] this
|
|
# 1754| Type = [PointerType] lambda [] type at line 1754, col. 30 *
|
|
# 1754| ValueCategory = prvalue(load)
|
|
# 1757| getStmt(2): [ReturnStmt] return ...
|
|
# 1754| [CopyAssignmentOperator] (void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30)& (void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30)::operator=((void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30) const&)
|
|
# 1754| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1754, col. 30 &
|
|
# 1754| [CopyConstructor] void (void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30)::(unnamed constructor)((void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30) const&)
|
|
# 1754| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1754, col. 30 &
|
|
# 1754| [MoveConstructor] void (void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30)::(unnamed constructor)((void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30)&&)
|
|
# 1754| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1754, col. 30 &&
|
|
# 1754| [Constructor] void (void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30)::(unnamed constructor)()
|
|
# 1754| <params>:
|
|
# 1754| [ConstMemberFunction] void (void (void TrivialLambdaClass::m() const)::(lambda [] type at line 1751, col. 26)::operator()() const)::(lambda [] type at line 1754, col. 30)::operator()() const
|
|
# 1754| <params>:
|
|
# 1754| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1755| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1755| getExpr(): [FunctionCall] call to m
|
|
# 1755| Type = [VoidType] void
|
|
# 1755| ValueCategory = prvalue
|
|
# 1755| getQualifier(): [AddressOfExpr] & ...
|
|
# 1755| Type = [PointerType] const TrivialLambdaClass *
|
|
# 1755| ValueCategory = prvalue
|
|
# 1755| getOperand(): [ImplicitThisFieldAccess,PointerFieldAccess] (captured this)
|
|
# 1755| Type = [SpecifiedType] const TrivialLambdaClass
|
|
# 1755| ValueCategory = lvalue
|
|
# 1755| getQualifier(): [ThisExpr] this
|
|
# 1755| Type = [PointerType] const lambda [] type at line 1754, col. 30 *
|
|
# 1755| ValueCategory = prvalue(load)
|
|
# 1756| getStmt(1): [ReturnStmt] return ...
|
|
# 1761| [TopLevelFunction] void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&)
|
|
# 1761| <params>:
|
|
# 1761| getParameter(0): [Parameter] p1
|
|
# 1761| Type = [Class] TrivialLambdaClass
|
|
# 1761| getParameter(1): [Parameter] p2
|
|
# 1761| Type = [LValueReferenceType] TrivialLambdaClass &
|
|
# 1761| getParameter(2): [Parameter] p3
|
|
# 1761| Type = [RValueReferenceType] TrivialLambdaClass &&
|
|
# 1761| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1762| getStmt(0): [DeclStmt] declaration
|
|
# 1762| getDeclarationEntry(0): [VariableDeclarationEntry] definition of l1
|
|
# 1762| Type = [SpecifiedType] const TrivialLambdaClass
|
|
# 1763| getStmt(1): [DeclStmt] declaration
|
|
# 1763| getDeclarationEntry(0): [VariableDeclarationEntry] definition of l2
|
|
# 1763| Type = [LValueReferenceType] const TrivialLambdaClass &
|
|
# 1763| getVariable().getInitializer(): [Initializer] initializer for l2
|
|
# 1763| getExpr(): [Literal] 0
|
|
# 1763| Type = [Class] TrivialLambdaClass
|
|
# 1763| Value = [Literal] 0
|
|
# 1763| ValueCategory = prvalue
|
|
# 1763| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1763| Type = [LValueReferenceType] const TrivialLambdaClass &
|
|
# 1763| ValueCategory = prvalue
|
|
# 1763| getExpr(): [CStyleCast] (const TrivialLambdaClass)...
|
|
# 1763| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 1763| Type = [SpecifiedType] const TrivialLambdaClass
|
|
# 1763| ValueCategory = lvalue
|
|
# 1763| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1763| Type = [Class] TrivialLambdaClass
|
|
# 1763| ValueCategory = lvalue
|
|
# 1765| getStmt(2): [DeclStmt] declaration
|
|
# 1765| getDeclarationEntry(0): [VariableDeclarationEntry] definition of l_outer1
|
|
# 1765| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1765| getVariable().getInitializer(): [Initializer] initializer for l_outer1
|
|
# 1765| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1765| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1765| ValueCategory = prvalue
|
|
# 1765| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1765| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1765| ValueCategory = prvalue
|
|
# 1765| getAFieldExpr(p1): [VariableAccess] p1
|
|
# 1765| Type = [Class] TrivialLambdaClass
|
|
# 1765| ValueCategory = prvalue(load)
|
|
# 1765| getAFieldExpr(p2): [VariableAccess] p2
|
|
# 1765| Type = [LValueReferenceType] TrivialLambdaClass &
|
|
# 1765| ValueCategory = prvalue(load)
|
|
# 1765| getAFieldExpr(p3): [VariableAccess] p3
|
|
# 1765| Type = [RValueReferenceType] TrivialLambdaClass &&
|
|
# 1765| ValueCategory = prvalue(load)
|
|
# 1765| getAFieldExpr(l1): [VariableAccess] l1
|
|
# 1765| Type = [SpecifiedType] const TrivialLambdaClass
|
|
# 1765| ValueCategory = prvalue(load)
|
|
# 1765| getAFieldExpr(l2): [VariableAccess] l2
|
|
# 1765| Type = [LValueReferenceType] const TrivialLambdaClass &
|
|
# 1765| ValueCategory = prvalue(load)
|
|
#-----| getAFieldExpr(p2).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Class] TrivialLambdaClass
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getAFieldExpr(p3).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Class] TrivialLambdaClass
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getAFieldExpr(l2).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [SpecifiedType] const TrivialLambdaClass
|
|
#-----| ValueCategory = prvalue(load)
|
|
# 1768| getStmt(3): [ReturnStmt] return ...
|
|
# 1765| [CopyAssignmentOperator] (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)& (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator=((void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21) const&)
|
|
# 1765| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1765, col. 21 &
|
|
# 1765| [CopyConstructor] void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::(unnamed constructor)((void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21) const&)
|
|
# 1765| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1765, col. 21 &
|
|
# 1765| [MoveConstructor] void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::(unnamed constructor)((void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)&&)
|
|
# 1765| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1765, col. 21 &&
|
|
# 1765| [Constructor] void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::(unnamed constructor)()
|
|
# 1765| <params>:
|
|
# 1765| [ConstMemberFunction] void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const
|
|
# 1765| <params>:
|
|
# 1765| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1766| getStmt(0): [DeclStmt] declaration
|
|
# 1766| getDeclarationEntry(0): [VariableDeclarationEntry] definition of l_inner1
|
|
# 1766| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1766| getVariable().getInitializer(): [Initializer] initializer for l_inner1
|
|
# 1766| getExpr(): [LambdaExpression] [...](...){...}
|
|
# 1766| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1766| ValueCategory = prvalue
|
|
# 1766| getInitializer(): [ClassAggregateLiteral] {...}
|
|
# 1766| Type = [Closure,LocalClass] decltype([...](...){...})
|
|
# 1766| ValueCategory = prvalue
|
|
# 1766| getAFieldExpr(p1): [PointerFieldAccess] p1
|
|
# 1766| Type = [Class] TrivialLambdaClass
|
|
# 1766| ValueCategory = prvalue(load)
|
|
# 1766| getQualifier(): [ThisExpr] this
|
|
# 1766| Type = [PointerType] lambda [] type at line 1766, col. 25 *
|
|
# 1766| ValueCategory = prvalue(load)
|
|
# 1767| getStmt(1): [ReturnStmt] return ...
|
|
# 1766| [CopyAssignmentOperator] (void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25)& (void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25)::operator=((void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25) const&)
|
|
# 1766| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1766, col. 25 &
|
|
# 1766| [CopyConstructor] void (void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25)::(unnamed constructor)((void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25) const&)
|
|
# 1766| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const lambda [] type at line 1766, col. 25 &
|
|
# 1766| [MoveConstructor] void (void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25)::(unnamed constructor)((void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25)&&)
|
|
# 1766| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] lambda [] type at line 1766, col. 25 &&
|
|
# 1766| [Constructor] void (void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25)::(unnamed constructor)()
|
|
# 1766| <params>:
|
|
# 1766| [ConstMemberFunction] void (void (void captured_lambda2(TrivialLambdaClass, TrivialLambdaClass&, TrivialLambdaClass&&))::(lambda [] type at line 1765, col. 21)::operator()() const)::(lambda [] type at line 1766, col. 25)::operator()() const
|
|
# 1766| <params>:
|
|
# 1766| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1766| getStmt(0): [ReturnStmt] return ...
|
|
# 1770| [CopyAssignmentOperator] CopyConstructorWithImplicitArgumentClass& CopyConstructorWithImplicitArgumentClass::operator=(CopyConstructorWithImplicitArgumentClass const&)
|
|
# 1770| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CopyConstructorWithImplicitArgumentClass &
|
|
# 1773| [Constructor] void CopyConstructorWithImplicitArgumentClass::CopyConstructorWithImplicitArgumentClass()
|
|
# 1773| <params>:
|
|
# 1773| <initializations>:
|
|
# 1773| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1773| getStmt(0): [ReturnStmt] return ...
|
|
# 1774| [CopyConstructor] void CopyConstructorWithImplicitArgumentClass::CopyConstructorWithImplicitArgumentClass(CopyConstructorWithImplicitArgumentClass const&)
|
|
# 1774| <params>:
|
|
# 1774| getParameter(0): [Parameter] c
|
|
# 1774| Type = [LValueReferenceType] const CopyConstructorWithImplicitArgumentClass &
|
|
# 1774| <initializations>:
|
|
# 1774| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1775| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1775| getExpr(): [AssignExpr] ... = ...
|
|
# 1775| Type = [IntType] int
|
|
# 1775| ValueCategory = lvalue
|
|
# 1775| getLValue(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 1775| Type = [IntType] int
|
|
# 1775| ValueCategory = lvalue
|
|
# 1775| getQualifier(): [ThisExpr] this
|
|
# 1775| Type = [PointerType] CopyConstructorWithImplicitArgumentClass *
|
|
# 1775| ValueCategory = prvalue(load)
|
|
# 1775| getRValue(): [ReferenceFieldAccess] x
|
|
# 1775| Type = [IntType] int
|
|
# 1775| ValueCategory = prvalue(load)
|
|
# 1775| getQualifier(): [VariableAccess] c
|
|
# 1775| Type = [LValueReferenceType] const CopyConstructorWithImplicitArgumentClass &
|
|
# 1775| ValueCategory = prvalue(load)
|
|
# 1775| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1775| Type = [SpecifiedType] const CopyConstructorWithImplicitArgumentClass
|
|
# 1775| ValueCategory = lvalue
|
|
# 1776| getStmt(1): [ReturnStmt] return ...
|
|
# 1779| [CopyAssignmentOperator] CopyConstructorWithBitwiseCopyClass& CopyConstructorWithBitwiseCopyClass::operator=(CopyConstructorWithBitwiseCopyClass const&)
|
|
# 1779| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CopyConstructorWithBitwiseCopyClass &
|
|
# 1779| [MoveAssignmentOperator] CopyConstructorWithBitwiseCopyClass& CopyConstructorWithBitwiseCopyClass::operator=(CopyConstructorWithBitwiseCopyClass&&)
|
|
# 1779| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] CopyConstructorWithBitwiseCopyClass &&
|
|
# 1779| [CopyConstructor] void CopyConstructorWithBitwiseCopyClass::CopyConstructorWithBitwiseCopyClass(CopyConstructorWithBitwiseCopyClass const&)
|
|
# 1779| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CopyConstructorWithBitwiseCopyClass &
|
|
# 1779| [MoveConstructor] void CopyConstructorWithBitwiseCopyClass::CopyConstructorWithBitwiseCopyClass(CopyConstructorWithBitwiseCopyClass&&)
|
|
# 1779| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] CopyConstructorWithBitwiseCopyClass &&
|
|
# 1782| [Constructor] void CopyConstructorWithBitwiseCopyClass::CopyConstructorWithBitwiseCopyClass()
|
|
# 1782| <params>:
|
|
# 1782| <initializations>:
|
|
# 1782| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1782| getStmt(0): [ReturnStmt] return ...
|
|
# 1785| [CopyAssignmentOperator] CopyConstructorTestNonVirtualClass& CopyConstructorTestNonVirtualClass::operator=(CopyConstructorTestNonVirtualClass const&)
|
|
# 1785| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CopyConstructorTestNonVirtualClass &
|
|
# 1785| [MoveAssignmentOperator] CopyConstructorTestNonVirtualClass& CopyConstructorTestNonVirtualClass::operator=(CopyConstructorTestNonVirtualClass&&)
|
|
# 1785| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] CopyConstructorTestNonVirtualClass &&
|
|
# 1785| [CopyConstructor] void CopyConstructorTestNonVirtualClass::CopyConstructorTestNonVirtualClass(CopyConstructorTestNonVirtualClass const&)
|
|
# 1785| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CopyConstructorTestNonVirtualClass &
|
|
# 1785| <initializations>:
|
|
# 1785| getInitializer(0): [ConstructorDirectInit] call to CopyConstructorWithImplicitArgumentClass
|
|
# 1785| Type = [VoidType] void
|
|
# 1785| ValueCategory = prvalue
|
|
# 1785| getArgument(0): [VariableAccess] (unnamed parameter 0)
|
|
# 1785| Type = [LValueReferenceType] const CopyConstructorTestNonVirtualClass &
|
|
# 1785| ValueCategory = prvalue(load)
|
|
# 1785| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1785| Type = [LValueReferenceType] const CopyConstructorWithImplicitArgumentClass &
|
|
# 1785| ValueCategory = prvalue
|
|
# 1785| getExpr(): [CStyleCast] (const CopyConstructorWithImplicitArgumentClass)...
|
|
# 1785| Conversion = [BaseClassConversion] base class conversion
|
|
# 1785| Type = [SpecifiedType] const CopyConstructorWithImplicitArgumentClass
|
|
# 1785| ValueCategory = lvalue
|
|
# 1785| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1785| Type = [SpecifiedType] const CopyConstructorTestNonVirtualClass
|
|
# 1785| ValueCategory = lvalue
|
|
# 1785| getInitializer(1): (no string representation)
|
|
# 1785| Type = [VirtualBaseClass] CopyConstructorWithBitwiseCopyClass
|
|
# 1785| ValueCategory = prvalue
|
|
# 1785| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1785| getStmt(0): [ReturnStmt] return ...
|
|
# 1785| [MoveConstructor] void CopyConstructorTestNonVirtualClass::CopyConstructorTestNonVirtualClass(CopyConstructorTestNonVirtualClass&&)
|
|
# 1785| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] CopyConstructorTestNonVirtualClass &&
|
|
# 1789| [Constructor] void CopyConstructorTestNonVirtualClass::CopyConstructorTestNonVirtualClass()
|
|
# 1789| <params>:
|
|
# 1789| <initializations>:
|
|
# 1789| getInitializer(0): [ConstructorDirectInit] call to CopyConstructorWithImplicitArgumentClass
|
|
# 1789| Type = [VoidType] void
|
|
# 1789| ValueCategory = prvalue
|
|
# 1789| getInitializer(1): [ConstructorDirectInit] call to CopyConstructorWithBitwiseCopyClass
|
|
# 1789| Type = [VoidType] void
|
|
# 1789| ValueCategory = prvalue
|
|
# 1789| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1789| getStmt(0): [ReturnStmt] return ...
|
|
# 1792| [CopyAssignmentOperator] CopyConstructorTestVirtualClass& CopyConstructorTestVirtualClass::operator=(CopyConstructorTestVirtualClass const&)
|
|
# 1792| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CopyConstructorTestVirtualClass &
|
|
# 1792| [MoveAssignmentOperator] CopyConstructorTestVirtualClass& CopyConstructorTestVirtualClass::operator=(CopyConstructorTestVirtualClass&&)
|
|
# 1792| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] CopyConstructorTestVirtualClass &&
|
|
# 1792| [CopyConstructor] void CopyConstructorTestVirtualClass::CopyConstructorTestVirtualClass(CopyConstructorTestVirtualClass const&)
|
|
# 1792| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const CopyConstructorTestVirtualClass &
|
|
# 1792| <initializations>:
|
|
# 1792| getInitializer(0): [ConstructorVirtualInit] call to CopyConstructorWithImplicitArgumentClass
|
|
# 1792| Type = [VoidType] void
|
|
# 1792| ValueCategory = prvalue
|
|
# 1792| getArgument(0): [VariableAccess] (unnamed parameter 0)
|
|
# 1792| Type = [LValueReferenceType] const CopyConstructorTestVirtualClass &
|
|
# 1792| ValueCategory = prvalue(load)
|
|
# 1792| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1792| Type = [LValueReferenceType] const CopyConstructorWithImplicitArgumentClass &
|
|
# 1792| ValueCategory = prvalue
|
|
# 1792| getExpr(): [CStyleCast] (const CopyConstructorWithImplicitArgumentClass)...
|
|
# 1792| Conversion = [BaseClassConversion] base class conversion
|
|
# 1792| Type = [SpecifiedType] const CopyConstructorWithImplicitArgumentClass
|
|
# 1792| ValueCategory = lvalue
|
|
# 1792| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1792| Type = [SpecifiedType] const CopyConstructorTestVirtualClass
|
|
# 1792| ValueCategory = lvalue
|
|
# 1792| getInitializer(1): (no string representation)
|
|
# 1792| Type = [VirtualBaseClass] CopyConstructorWithBitwiseCopyClass
|
|
# 1792| ValueCategory = prvalue
|
|
# 1792| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1792| getStmt(0): [ReturnStmt] return ...
|
|
# 1792| [MoveConstructor] void CopyConstructorTestVirtualClass::CopyConstructorTestVirtualClass(CopyConstructorTestVirtualClass&&)
|
|
# 1792| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] CopyConstructorTestVirtualClass &&
|
|
# 1796| [Constructor] void CopyConstructorTestVirtualClass::CopyConstructorTestVirtualClass()
|
|
# 1796| <params>:
|
|
# 1796| <initializations>:
|
|
# 1796| getInitializer(0): [ConstructorVirtualInit] call to CopyConstructorWithImplicitArgumentClass
|
|
# 1796| Type = [VoidType] void
|
|
# 1796| ValueCategory = prvalue
|
|
# 1796| getInitializer(1): [ConstructorVirtualInit] call to CopyConstructorWithBitwiseCopyClass
|
|
# 1796| Type = [VoidType] void
|
|
# 1796| ValueCategory = prvalue
|
|
# 1796| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1796| getStmt(0): [ReturnStmt] return ...
|
|
# 1799| [TopLevelFunction] int implicit_copy_constructor_test(CopyConstructorTestNonVirtualClass const&, CopyConstructorTestVirtualClass const&)
|
|
# 1799| <params>:
|
|
# 1800| getParameter(0): [Parameter] x
|
|
# 1800| Type = [LValueReferenceType] const CopyConstructorTestNonVirtualClass &
|
|
# 1801| getParameter(1): [Parameter] y
|
|
# 1801| Type = [LValueReferenceType] const CopyConstructorTestVirtualClass &
|
|
# 1801| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1802| getStmt(0): [DeclStmt] declaration
|
|
# 1802| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cx
|
|
# 1802| Type = [Class] CopyConstructorTestNonVirtualClass
|
|
# 1802| getVariable().getInitializer(): [Initializer] initializer for cx
|
|
# 1802| getExpr(): [ConstructorCall] call to CopyConstructorTestNonVirtualClass
|
|
# 1802| Type = [VoidType] void
|
|
# 1802| ValueCategory = prvalue
|
|
# 1802| getArgument(0): [VariableAccess] x
|
|
# 1802| Type = [LValueReferenceType] const CopyConstructorTestNonVirtualClass &
|
|
# 1802| ValueCategory = prvalue(load)
|
|
# 1802| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1802| Type = [LValueReferenceType] const CopyConstructorTestNonVirtualClass &
|
|
# 1802| ValueCategory = prvalue
|
|
# 1802| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1802| Type = [SpecifiedType] const CopyConstructorTestNonVirtualClass
|
|
# 1802| ValueCategory = lvalue
|
|
# 1803| getStmt(1): [DeclStmt] declaration
|
|
# 1803| getDeclarationEntry(0): [VariableDeclarationEntry] definition of cy
|
|
# 1803| Type = [Class] CopyConstructorTestVirtualClass
|
|
# 1803| getVariable().getInitializer(): [Initializer] initializer for cy
|
|
# 1803| getExpr(): [ConstructorCall] call to CopyConstructorTestVirtualClass
|
|
# 1803| Type = [VoidType] void
|
|
# 1803| ValueCategory = prvalue
|
|
# 1803| getArgument(0): [VariableAccess] y
|
|
# 1803| Type = [LValueReferenceType] const CopyConstructorTestVirtualClass &
|
|
# 1803| ValueCategory = prvalue(load)
|
|
# 1803| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1803| Type = [LValueReferenceType] const CopyConstructorTestVirtualClass &
|
|
# 1803| ValueCategory = prvalue
|
|
# 1803| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1803| Type = [SpecifiedType] const CopyConstructorTestVirtualClass
|
|
# 1803| ValueCategory = lvalue
|
|
# 1804| getStmt(2): [ReturnStmt] return ...
|
|
# 1806| [TopLevelFunction] void if_initialization(int)
|
|
# 1806| <params>:
|
|
# 1806| getParameter(0): [Parameter] x
|
|
# 1806| Type = [IntType] int
|
|
# 1806| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1807| getStmt(0): [IfStmt] if (...) ...
|
|
# 1807| getInitialization(): [DeclStmt] declaration
|
|
# 1807| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1807| Type = [IntType] int
|
|
# 1807| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 1807| getExpr(): [VariableAccess] x
|
|
# 1807| Type = [IntType] int
|
|
# 1807| ValueCategory = prvalue(load)
|
|
# 1807| getCondition(): [AddExpr] ... + ...
|
|
# 1807| Type = [IntType] int
|
|
# 1807| ValueCategory = prvalue
|
|
# 1807| getLeftOperand(): [VariableAccess] x
|
|
# 1807| Type = [IntType] int
|
|
# 1807| ValueCategory = prvalue(load)
|
|
# 1807| getRightOperand(): [Literal] 1
|
|
# 1807| Type = [IntType] int
|
|
# 1807| Value = [Literal] 1
|
|
# 1807| ValueCategory = prvalue
|
|
# 1807| getThen(): [BlockStmt] { ... }
|
|
# 1808| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1808| getExpr(): [AssignExpr] ... = ...
|
|
# 1808| Type = [IntType] int
|
|
# 1808| ValueCategory = lvalue
|
|
# 1808| getLValue(): [VariableAccess] x
|
|
# 1808| Type = [IntType] int
|
|
# 1808| ValueCategory = lvalue
|
|
# 1808| getRValue(): [AddExpr] ... + ...
|
|
# 1808| Type = [IntType] int
|
|
# 1808| ValueCategory = prvalue
|
|
# 1808| getLeftOperand(): [VariableAccess] x
|
|
# 1808| Type = [IntType] int
|
|
# 1808| ValueCategory = prvalue(load)
|
|
# 1808| getRightOperand(): [VariableAccess] y
|
|
# 1808| Type = [IntType] int
|
|
# 1808| ValueCategory = prvalue(load)
|
|
# 1807| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1807| Conversion = [BoolConversion] conversion to bool
|
|
# 1807| Type = [BoolType] bool
|
|
# 1807| ValueCategory = prvalue
|
|
# 1811| getStmt(1): [DeclStmt] declaration
|
|
# 1811| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1811| Type = [IntType] int
|
|
# 1812| getStmt(2): [IfStmt] if (...) ...
|
|
# 1812| getInitialization(): [ExprStmt] ExprStmt
|
|
# 1812| getExpr(): [AssignExpr] ... = ...
|
|
# 1812| Type = [IntType] int
|
|
# 1812| ValueCategory = lvalue
|
|
# 1812| getLValue(): [VariableAccess] w
|
|
# 1812| Type = [IntType] int
|
|
# 1812| ValueCategory = lvalue
|
|
# 1812| getRValue(): [VariableAccess] x
|
|
# 1812| Type = [IntType] int
|
|
# 1812| ValueCategory = prvalue(load)
|
|
# 1812| getCondition(): [AddExpr] ... + ...
|
|
# 1812| Type = [IntType] int
|
|
# 1812| ValueCategory = prvalue
|
|
# 1812| getLeftOperand(): [VariableAccess] x
|
|
# 1812| Type = [IntType] int
|
|
# 1812| ValueCategory = prvalue(load)
|
|
# 1812| getRightOperand(): [Literal] 1
|
|
# 1812| Type = [IntType] int
|
|
# 1812| Value = [Literal] 1
|
|
# 1812| ValueCategory = prvalue
|
|
# 1812| getThen(): [BlockStmt] { ... }
|
|
# 1813| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1813| getExpr(): [AssignExpr] ... = ...
|
|
# 1813| Type = [IntType] int
|
|
# 1813| ValueCategory = lvalue
|
|
# 1813| getLValue(): [VariableAccess] x
|
|
# 1813| Type = [IntType] int
|
|
# 1813| ValueCategory = lvalue
|
|
# 1813| getRValue(): [AddExpr] ... + ...
|
|
# 1813| Type = [IntType] int
|
|
# 1813| ValueCategory = prvalue
|
|
# 1813| getLeftOperand(): [VariableAccess] x
|
|
# 1813| Type = [IntType] int
|
|
# 1813| ValueCategory = prvalue(load)
|
|
# 1813| getRightOperand(): [VariableAccess] w
|
|
# 1813| Type = [IntType] int
|
|
# 1813| ValueCategory = prvalue(load)
|
|
# 1812| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1812| Conversion = [BoolConversion] conversion to bool
|
|
# 1812| Type = [BoolType] bool
|
|
# 1812| ValueCategory = prvalue
|
|
# 1816| getStmt(3): [IfStmt] if (...) ...
|
|
# 1816| getInitialization(): [ExprStmt] ExprStmt
|
|
# 1816| getExpr(): [AssignExpr] ... = ...
|
|
# 1816| Type = [IntType] int
|
|
# 1816| ValueCategory = lvalue
|
|
# 1816| getLValue(): [VariableAccess] w
|
|
# 1816| Type = [IntType] int
|
|
# 1816| ValueCategory = lvalue
|
|
# 1816| getRValue(): [VariableAccess] x
|
|
# 1816| Type = [IntType] int
|
|
# 1816| ValueCategory = prvalue(load)
|
|
# 1816| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 1816| Type = [BoolType] bool
|
|
# 1816| ValueCategory = prvalue
|
|
# 1816| getVariableAccess(): [VariableAccess] w2
|
|
# 1816| Type = [IntType] int
|
|
# 1816| ValueCategory = prvalue(load)
|
|
# 1816| getInitializingExpr(): [VariableAccess] w
|
|
# 1816| Type = [IntType] int
|
|
# 1816| ValueCategory = prvalue(load)
|
|
# 1816| getVariableAccess().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1816| Conversion = [BoolConversion] conversion to bool
|
|
# 1816| Type = [BoolType] bool
|
|
# 1816| ValueCategory = prvalue
|
|
# 1816| getThen(): [BlockStmt] { ... }
|
|
# 1817| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1817| getExpr(): [AssignExpr] ... = ...
|
|
# 1817| Type = [IntType] int
|
|
# 1817| ValueCategory = lvalue
|
|
# 1817| getLValue(): [VariableAccess] x
|
|
# 1817| Type = [IntType] int
|
|
# 1817| ValueCategory = lvalue
|
|
# 1817| getRValue(): [AddExpr] ... + ...
|
|
# 1817| Type = [IntType] int
|
|
# 1817| ValueCategory = prvalue
|
|
# 1817| getLeftOperand(): [VariableAccess] x
|
|
# 1817| Type = [IntType] int
|
|
# 1817| ValueCategory = prvalue(load)
|
|
# 1817| getRightOperand(): [VariableAccess] w
|
|
# 1817| Type = [IntType] int
|
|
# 1817| ValueCategory = prvalue(load)
|
|
# 1820| getStmt(4): [IfStmt] if (...) ...
|
|
# 1820| getInitialization(): [DeclStmt] declaration
|
|
# 1820| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1820| Type = [IntType] int
|
|
# 1820| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1820| getExpr(): [VariableAccess] x
|
|
# 1820| Type = [IntType] int
|
|
# 1820| ValueCategory = prvalue(load)
|
|
# 1820| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 1820| Type = [BoolType] bool
|
|
# 1820| ValueCategory = prvalue
|
|
# 1820| getVariableAccess(): [VariableAccess] v2
|
|
# 1820| Type = [IntType] int
|
|
# 1820| ValueCategory = prvalue(load)
|
|
# 1820| getInitializingExpr(): [VariableAccess] v
|
|
# 1820| Type = [IntType] int
|
|
# 1820| ValueCategory = prvalue(load)
|
|
# 1820| getVariableAccess().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1820| Conversion = [BoolConversion] conversion to bool
|
|
# 1820| Type = [BoolType] bool
|
|
# 1820| ValueCategory = prvalue
|
|
# 1820| getThen(): [BlockStmt] { ... }
|
|
# 1821| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1821| getExpr(): [AssignExpr] ... = ...
|
|
# 1821| Type = [IntType] int
|
|
# 1821| ValueCategory = lvalue
|
|
# 1821| getLValue(): [VariableAccess] x
|
|
# 1821| Type = [IntType] int
|
|
# 1821| ValueCategory = lvalue
|
|
# 1821| getRValue(): [AddExpr] ... + ...
|
|
# 1821| Type = [IntType] int
|
|
# 1821| ValueCategory = prvalue
|
|
# 1821| getLeftOperand(): [VariableAccess] x
|
|
# 1821| Type = [IntType] int
|
|
# 1821| ValueCategory = prvalue(load)
|
|
# 1821| getRightOperand(): [VariableAccess] v
|
|
# 1821| Type = [IntType] int
|
|
# 1821| ValueCategory = prvalue(load)
|
|
# 1824| getStmt(5): [DeclStmt] declaration
|
|
# 1824| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 1824| Type = [IntType] int
|
|
# 1824| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 1824| getExpr(): [VariableAccess] x
|
|
# 1824| Type = [IntType] int
|
|
# 1824| ValueCategory = prvalue(load)
|
|
# 1825| getStmt(6): [IfStmt] if (...) ...
|
|
# 1825| getCondition(): [VariableAccess] z
|
|
# 1825| Type = [IntType] int
|
|
# 1825| ValueCategory = prvalue(load)
|
|
# 1825| getThen(): [BlockStmt] { ... }
|
|
# 1826| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1826| getExpr(): [AssignExpr] ... = ...
|
|
# 1826| Type = [IntType] int
|
|
# 1826| ValueCategory = lvalue
|
|
# 1826| getLValue(): [VariableAccess] x
|
|
# 1826| Type = [IntType] int
|
|
# 1826| ValueCategory = lvalue
|
|
# 1826| getRValue(): [AddExpr] ... + ...
|
|
# 1826| Type = [IntType] int
|
|
# 1826| ValueCategory = prvalue
|
|
# 1826| getLeftOperand(): [VariableAccess] x
|
|
# 1826| Type = [IntType] int
|
|
# 1826| ValueCategory = prvalue(load)
|
|
# 1826| getRightOperand(): [VariableAccess] z
|
|
# 1826| Type = [IntType] int
|
|
# 1826| ValueCategory = prvalue(load)
|
|
# 1825| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1825| Conversion = [BoolConversion] conversion to bool
|
|
# 1825| Type = [BoolType] bool
|
|
# 1825| ValueCategory = prvalue
|
|
# 1829| getStmt(7): [IfStmt] if (...) ...
|
|
# 1829| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 1829| Type = [BoolType] bool
|
|
# 1829| ValueCategory = prvalue
|
|
# 1829| getVariableAccess(): [VariableAccess] z2
|
|
# 1829| Type = [IntType] int
|
|
# 1829| ValueCategory = prvalue(load)
|
|
# 1829| getInitializingExpr(): [VariableAccess] z
|
|
# 1829| Type = [IntType] int
|
|
# 1829| ValueCategory = prvalue(load)
|
|
# 1829| getVariableAccess().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 1829| Conversion = [BoolConversion] conversion to bool
|
|
# 1829| Type = [BoolType] bool
|
|
# 1829| ValueCategory = prvalue
|
|
# 1829| getThen(): [BlockStmt] { ... }
|
|
# 1830| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1830| getExpr(): [AssignAddExpr] ... += ...
|
|
# 1830| Type = [IntType] int
|
|
# 1830| ValueCategory = lvalue
|
|
# 1830| getLValue(): [VariableAccess] x
|
|
# 1830| Type = [IntType] int
|
|
# 1830| ValueCategory = lvalue
|
|
# 1830| getRValue(): [VariableAccess] z2
|
|
# 1830| Type = [IntType] int
|
|
# 1830| ValueCategory = prvalue(load)
|
|
# 1832| getStmt(8): [ReturnStmt] return ...
|
|
# 1834| [TopLevelFunction] void switch_initialization(int)
|
|
# 1834| <params>:
|
|
# 1834| getParameter(0): [Parameter] x
|
|
# 1834| Type = [IntType] int
|
|
# 1834| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1835| getStmt(0): [SwitchStmt] switch (...) ...
|
|
# 1835| getInitialization(): [DeclStmt] declaration
|
|
# 1835| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1835| Type = [IntType] int
|
|
# 1835| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 1835| getExpr(): [VariableAccess] x
|
|
# 1835| Type = [IntType] int
|
|
# 1835| ValueCategory = prvalue(load)
|
|
# 1835| getExpr(): [AddExpr] ... + ...
|
|
# 1835| Type = [IntType] int
|
|
# 1835| ValueCategory = prvalue
|
|
# 1835| getLeftOperand(): [VariableAccess] x
|
|
# 1835| Type = [IntType] int
|
|
# 1835| ValueCategory = prvalue(load)
|
|
# 1835| getRightOperand(): [Literal] 1
|
|
# 1835| Type = [IntType] int
|
|
# 1835| Value = [Literal] 1
|
|
# 1835| ValueCategory = prvalue
|
|
# 1835| getStmt(): [BlockStmt] { ... }
|
|
# 1836| getStmt(0): [SwitchCase] default:
|
|
# 1837| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1837| getExpr(): [AssignExpr] ... = ...
|
|
# 1837| Type = [IntType] int
|
|
# 1837| ValueCategory = lvalue
|
|
# 1837| getLValue(): [VariableAccess] x
|
|
# 1837| Type = [IntType] int
|
|
# 1837| ValueCategory = lvalue
|
|
# 1837| getRValue(): [AddExpr] ... + ...
|
|
# 1837| Type = [IntType] int
|
|
# 1837| ValueCategory = prvalue
|
|
# 1837| getLeftOperand(): [VariableAccess] x
|
|
# 1837| Type = [IntType] int
|
|
# 1837| ValueCategory = prvalue(load)
|
|
# 1837| getRightOperand(): [VariableAccess] y
|
|
# 1837| Type = [IntType] int
|
|
# 1837| ValueCategory = prvalue(load)
|
|
# 1840| getStmt(1): [DeclStmt] declaration
|
|
# 1840| getDeclarationEntry(0): [VariableDeclarationEntry] definition of w
|
|
# 1840| Type = [IntType] int
|
|
# 1841| getStmt(2): [SwitchStmt] switch (...) ...
|
|
# 1841| getInitialization(): [ExprStmt] ExprStmt
|
|
# 1841| getExpr(): [AssignExpr] ... = ...
|
|
# 1841| Type = [IntType] int
|
|
# 1841| ValueCategory = lvalue
|
|
# 1841| getLValue(): [VariableAccess] w
|
|
# 1841| Type = [IntType] int
|
|
# 1841| ValueCategory = lvalue
|
|
# 1841| getRValue(): [VariableAccess] x
|
|
# 1841| Type = [IntType] int
|
|
# 1841| ValueCategory = prvalue(load)
|
|
# 1841| getExpr(): [AddExpr] ... + ...
|
|
# 1841| Type = [IntType] int
|
|
# 1841| ValueCategory = prvalue
|
|
# 1841| getLeftOperand(): [VariableAccess] x
|
|
# 1841| Type = [IntType] int
|
|
# 1841| ValueCategory = prvalue(load)
|
|
# 1841| getRightOperand(): [Literal] 1
|
|
# 1841| Type = [IntType] int
|
|
# 1841| Value = [Literal] 1
|
|
# 1841| ValueCategory = prvalue
|
|
# 1841| getStmt(): [BlockStmt] { ... }
|
|
# 1842| getStmt(0): [SwitchCase] default:
|
|
# 1843| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1843| getExpr(): [AssignExpr] ... = ...
|
|
# 1843| Type = [IntType] int
|
|
# 1843| ValueCategory = lvalue
|
|
# 1843| getLValue(): [VariableAccess] x
|
|
# 1843| Type = [IntType] int
|
|
# 1843| ValueCategory = lvalue
|
|
# 1843| getRValue(): [AddExpr] ... + ...
|
|
# 1843| Type = [IntType] int
|
|
# 1843| ValueCategory = prvalue
|
|
# 1843| getLeftOperand(): [VariableAccess] x
|
|
# 1843| Type = [IntType] int
|
|
# 1843| ValueCategory = prvalue(load)
|
|
# 1843| getRightOperand(): [VariableAccess] w
|
|
# 1843| Type = [IntType] int
|
|
# 1843| ValueCategory = prvalue(load)
|
|
# 1846| getStmt(3): [SwitchStmt] switch (...) ...
|
|
# 1846| getInitialization(): [ExprStmt] ExprStmt
|
|
# 1846| getExpr(): [AssignExpr] ... = ...
|
|
# 1846| Type = [IntType] int
|
|
# 1846| ValueCategory = lvalue
|
|
# 1846| getLValue(): [VariableAccess] w
|
|
# 1846| Type = [IntType] int
|
|
# 1846| ValueCategory = lvalue
|
|
# 1846| getRValue(): [VariableAccess] x
|
|
# 1846| Type = [IntType] int
|
|
# 1846| ValueCategory = prvalue(load)
|
|
# 1846| getExpr(): [ConditionDeclExpr] (condition decl)
|
|
# 1846| Type = [IntType] int
|
|
# 1846| ValueCategory = prvalue
|
|
# 1846| getVariableAccess(): [VariableAccess] w2
|
|
# 1846| Type = [IntType] int
|
|
# 1846| ValueCategory = prvalue(load)
|
|
# 1846| getInitializingExpr(): [VariableAccess] w
|
|
# 1846| Type = [IntType] int
|
|
# 1846| ValueCategory = prvalue(load)
|
|
# 1846| getStmt(): [BlockStmt] { ... }
|
|
# 1847| getStmt(0): [SwitchCase] default:
|
|
# 1848| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1848| getExpr(): [AssignExpr] ... = ...
|
|
# 1848| Type = [IntType] int
|
|
# 1848| ValueCategory = lvalue
|
|
# 1848| getLValue(): [VariableAccess] x
|
|
# 1848| Type = [IntType] int
|
|
# 1848| ValueCategory = lvalue
|
|
# 1848| getRValue(): [AddExpr] ... + ...
|
|
# 1848| Type = [IntType] int
|
|
# 1848| ValueCategory = prvalue
|
|
# 1848| getLeftOperand(): [VariableAccess] x
|
|
# 1848| Type = [IntType] int
|
|
# 1848| ValueCategory = prvalue(load)
|
|
# 1848| getRightOperand(): [VariableAccess] w
|
|
# 1848| Type = [IntType] int
|
|
# 1848| ValueCategory = prvalue(load)
|
|
# 1851| getStmt(4): [SwitchStmt] switch (...) ...
|
|
# 1851| getInitialization(): [DeclStmt] declaration
|
|
# 1851| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1851| Type = [IntType] int
|
|
# 1851| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1851| getExpr(): [VariableAccess] x
|
|
# 1851| Type = [IntType] int
|
|
# 1851| ValueCategory = prvalue(load)
|
|
# 1851| getExpr(): [ConditionDeclExpr] (condition decl)
|
|
# 1851| Type = [IntType] int
|
|
# 1851| ValueCategory = prvalue
|
|
# 1851| getVariableAccess(): [VariableAccess] v2
|
|
# 1851| Type = [IntType] int
|
|
# 1851| ValueCategory = prvalue(load)
|
|
# 1851| getInitializingExpr(): [VariableAccess] v
|
|
# 1851| Type = [IntType] int
|
|
# 1851| ValueCategory = prvalue(load)
|
|
# 1851| getStmt(): [BlockStmt] { ... }
|
|
# 1852| getStmt(0): [SwitchCase] default:
|
|
# 1853| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1853| getExpr(): [AssignExpr] ... = ...
|
|
# 1853| Type = [IntType] int
|
|
# 1853| ValueCategory = lvalue
|
|
# 1853| getLValue(): [VariableAccess] x
|
|
# 1853| Type = [IntType] int
|
|
# 1853| ValueCategory = lvalue
|
|
# 1853| getRValue(): [AddExpr] ... + ...
|
|
# 1853| Type = [IntType] int
|
|
# 1853| ValueCategory = prvalue
|
|
# 1853| getLeftOperand(): [VariableAccess] x
|
|
# 1853| Type = [IntType] int
|
|
# 1853| ValueCategory = prvalue(load)
|
|
# 1853| getRightOperand(): [VariableAccess] v
|
|
# 1853| Type = [IntType] int
|
|
# 1853| ValueCategory = prvalue(load)
|
|
# 1856| getStmt(5): [DeclStmt] declaration
|
|
# 1856| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 1856| Type = [IntType] int
|
|
# 1856| getVariable().getInitializer(): [Initializer] initializer for z
|
|
# 1856| getExpr(): [VariableAccess] x
|
|
# 1856| Type = [IntType] int
|
|
# 1856| ValueCategory = prvalue(load)
|
|
# 1857| getStmt(6): [SwitchStmt] switch (...) ...
|
|
# 1857| getExpr(): [VariableAccess] z
|
|
# 1857| Type = [IntType] int
|
|
# 1857| ValueCategory = prvalue(load)
|
|
# 1857| getStmt(): [BlockStmt] { ... }
|
|
# 1858| getStmt(0): [SwitchCase] default:
|
|
# 1859| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1859| getExpr(): [AssignExpr] ... = ...
|
|
# 1859| Type = [IntType] int
|
|
# 1859| ValueCategory = lvalue
|
|
# 1859| getLValue(): [VariableAccess] x
|
|
# 1859| Type = [IntType] int
|
|
# 1859| ValueCategory = lvalue
|
|
# 1859| getRValue(): [AddExpr] ... + ...
|
|
# 1859| Type = [IntType] int
|
|
# 1859| ValueCategory = prvalue
|
|
# 1859| getLeftOperand(): [VariableAccess] x
|
|
# 1859| Type = [IntType] int
|
|
# 1859| ValueCategory = prvalue(load)
|
|
# 1859| getRightOperand(): [VariableAccess] z
|
|
# 1859| Type = [IntType] int
|
|
# 1859| ValueCategory = prvalue(load)
|
|
# 1862| getStmt(7): [SwitchStmt] switch (...) ...
|
|
# 1862| getExpr(): [ConditionDeclExpr] (condition decl)
|
|
# 1862| Type = [IntType] int
|
|
# 1862| ValueCategory = prvalue
|
|
# 1862| getVariableAccess(): [VariableAccess] z2
|
|
# 1862| Type = [IntType] int
|
|
# 1862| ValueCategory = prvalue(load)
|
|
# 1862| getInitializingExpr(): [VariableAccess] z
|
|
# 1862| Type = [IntType] int
|
|
# 1862| ValueCategory = prvalue(load)
|
|
# 1862| getStmt(): [BlockStmt] { ... }
|
|
# 1863| getStmt(0): [SwitchCase] default:
|
|
# 1864| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1864| getExpr(): [AssignAddExpr] ... += ...
|
|
# 1864| Type = [IntType] int
|
|
# 1864| ValueCategory = lvalue
|
|
# 1864| getLValue(): [VariableAccess] x
|
|
# 1864| Type = [IntType] int
|
|
# 1864| ValueCategory = lvalue
|
|
# 1864| getRValue(): [VariableAccess] z2
|
|
# 1864| Type = [IntType] int
|
|
# 1864| ValueCategory = prvalue(load)
|
|
# 1866| getStmt(8): [ReturnStmt] return ...
|
|
# 1870| [GlobalVariable] int global_2
|
|
# 1870| getInitializer(): [Initializer] initializer for global_2
|
|
# 1870| getExpr(): [Literal] 1
|
|
# 1870| Type = [IntType] int
|
|
# 1870| Value = [Literal] 1
|
|
# 1870| ValueCategory = prvalue
|
|
# 1872| [GlobalVariable] int const global_3
|
|
# 1872| getInitializer(): [Initializer] initializer for global_3
|
|
# 1872| getExpr(): [Literal] 2
|
|
# 1872| Type = [IntType] int
|
|
# 1872| Value = [Literal] 2
|
|
# 1872| ValueCategory = prvalue
|
|
# 1874| [GlobalVariable] constructor_only global_4
|
|
# 1874| getInitializer(): [Initializer] initializer for global_4
|
|
# 1874| getExpr(): [ConstructorCall] call to constructor_only
|
|
# 1874| Type = [VoidType] void
|
|
# 1874| ValueCategory = prvalue
|
|
# 1874| getArgument(0): [Literal] 1
|
|
# 1874| Type = [IntType] int
|
|
# 1874| Value = [Literal] 1
|
|
# 1874| ValueCategory = prvalue
|
|
# 1876| [GlobalVariable] constructor_only global_5
|
|
# 1876| getInitializer(): [Initializer] initializer for global_5
|
|
# 1876| getExpr(): [ConstructorCall] call to constructor_only
|
|
# 1876| Type = [VoidType] void
|
|
# 1876| ValueCategory = prvalue
|
|
# 1876| getArgument(0): [Literal] 2
|
|
# 1876| Type = [IntType] int
|
|
# 1876| Value = [Literal] 2
|
|
# 1876| ValueCategory = prvalue
|
|
# 1878| [GlobalVariable] char* global_string
|
|
# 1878| getInitializer(): [Initializer] initializer for global_string
|
|
# 1878| getExpr(): global string
|
|
# 1878| Type = [ArrayType] const char[14]
|
|
# 1878| Value = [StringLiteral] "global string"
|
|
# 1878| ValueCategory = lvalue
|
|
# 1878| getExpr().getFullyConverted(): [CStyleCast] (char *)...
|
|
# 1878| Conversion = [PointerConversion] pointer conversion
|
|
# 1878| Type = [CharPointerType] char *
|
|
# 1878| ValueCategory = prvalue
|
|
# 1878| getExpr(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1878| Type = [PointerType] const char *
|
|
# 1878| ValueCategory = prvalue
|
|
# 1880| [GlobalVariable] int global_6
|
|
# 1880| getInitializer(): [Initializer] initializer for global_6
|
|
# 1880| getExpr(): [VariableAccess] global_2
|
|
# 1880| Type = [IntType] int
|
|
# 1880| ValueCategory = prvalue(load)
|
|
# 1883| [CopyAssignmentOperator] block_assignment::A& block_assignment::A::operator=(block_assignment::A const&)
|
|
# 1883| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const A &
|
|
# 1883| [MoveAssignmentOperator] block_assignment::A& block_assignment::A::operator=(block_assignment::A&&)
|
|
# 1883| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] A &&
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ExprStmt] ExprStmt
|
|
#-----| getExpr(): [BlockAssignExpr] ... = ...
|
|
#-----| Type = [VoidType] void
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getLValue(): [PointerFieldAccess] e
|
|
#-----| Type = [ArrayType] enum <unnamed>[1]
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier(): [ThisExpr] this
|
|
#-----| Type = [PointerType] A *
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getRValue(): [ReferenceFieldAccess] e
|
|
#-----| Type = [ArrayType] enum <unnamed>[1]
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] A &&
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Class] A
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getStmt(1): [ReturnStmt] return ...
|
|
#-----| getExpr(): [PointerDereferenceExpr] * ...
|
|
#-----| Type = [Class] A
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand(): [ThisExpr] this
|
|
#-----| Type = [PointerType] A *
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] A &
|
|
#-----| ValueCategory = prvalue
|
|
# 1883| [Constructor] void block_assignment::A::A()
|
|
# 1883| <params>:
|
|
# 1883| [CopyConstructor] void block_assignment::A::A(block_assignment::A const&)
|
|
# 1883| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const A &
|
|
# 1883| [MoveConstructor] void block_assignment::A::A(block_assignment::A&&)
|
|
# 1883| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] A &&
|
|
# 1885| [VirtualFunction] void block_assignment::A::f()
|
|
# 1885| <params>:
|
|
# 1888| [CopyAssignmentOperator] block_assignment::B& block_assignment::B::operator=(block_assignment::B const&)
|
|
# 1888| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const B &
|
|
# 1888| [MoveAssignmentOperator] block_assignment::B& block_assignment::B::operator=(block_assignment::B&&)
|
|
# 1888| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] B &&
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1888| getExpr(): [FunctionCall] call to operator=
|
|
# 1888| Type = [LValueReferenceType] A &
|
|
# 1888| ValueCategory = prvalue
|
|
# 1888| getQualifier(): [ThisExpr] this
|
|
# 1888| Type = [PointerType] B *
|
|
# 1888| ValueCategory = prvalue(load)
|
|
# 1888| getArgument(0): [PointerDereferenceExpr] * ...
|
|
# 1888| Type = [Class] A
|
|
# 1888| ValueCategory = xvalue
|
|
# 1888| getOperand(): [AddressOfExpr] & ...
|
|
# 1888| Type = [PointerType] B *
|
|
# 1888| ValueCategory = prvalue
|
|
# 1888| getOperand(): [VariableAccess] (unnamed parameter 0)
|
|
# 1888| Type = [RValueReferenceType] B &&
|
|
# 1888| ValueCategory = prvalue(load)
|
|
#-----| getOperand().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Struct] B
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand().getFullyConverted(): [CStyleCast] (A *)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [PointerType] A *
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (A *)...
|
|
#-----| Conversion = [BaseClassConversion] base class conversion
|
|
#-----| Type = [PointerType] A *
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] A &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [Class] A
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getStmt(1): [ReturnStmt] return ...
|
|
#-----| getExpr(): [PointerDereferenceExpr] * ...
|
|
#-----| Type = [Struct] B
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand(): [ThisExpr] this
|
|
#-----| Type = [PointerType] B *
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] B &
|
|
#-----| ValueCategory = prvalue
|
|
# 1888| [CopyConstructor] void block_assignment::B::B(block_assignment::B const&)
|
|
# 1888| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const B &
|
|
# 1888| [MoveConstructor] void block_assignment::B::B(block_assignment::B&&)
|
|
# 1888| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] B &&
|
|
# 1889| [Constructor] void block_assignment::B::B(block_assignment::A*)
|
|
# 1889| <params>:
|
|
# 1889| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 1889| Type = [PointerType] A *
|
|
# 1892| [TopLevelFunction] void block_assignment::foo()
|
|
# 1892| <params>:
|
|
# 1892| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1893| getStmt(0): [DeclStmt] declaration
|
|
# 1893| getDeclarationEntry(0): [VariableDeclarationEntry] definition of v
|
|
# 1893| Type = [Struct] B
|
|
# 1893| getVariable().getInitializer(): [Initializer] initializer for v
|
|
# 1893| getExpr(): [ConstructorCall] call to B
|
|
# 1893| Type = [VoidType] void
|
|
# 1893| ValueCategory = prvalue
|
|
# 1893| getArgument(0): [Literal] 0
|
|
# 1893| Type = [IntType] int
|
|
# 1893| Value = [Literal] 0
|
|
# 1893| ValueCategory = prvalue
|
|
# 1893| getArgument(0).getFullyConverted(): [CStyleCast] (A *)...
|
|
# 1893| Conversion = [IntegralToPointerConversion] integral to pointer conversion
|
|
# 1893| Type = [PointerType] A *
|
|
# 1893| Value = [CStyleCast] 0
|
|
# 1893| ValueCategory = prvalue
|
|
# 1894| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1894| getExpr(): [FunctionCall] call to operator=
|
|
# 1894| Type = [LValueReferenceType] B &
|
|
# 1894| ValueCategory = prvalue
|
|
# 1894| getQualifier(): [VariableAccess] v
|
|
# 1894| Type = [Struct] B
|
|
# 1894| ValueCategory = lvalue
|
|
# 1894| getArgument(0): [ConstructorCall] call to B
|
|
# 1894| Type = [VoidType] void
|
|
# 1894| ValueCategory = prvalue
|
|
# 1894| getArgument(0): [Literal] 0
|
|
# 1894| Type = [IntType] int
|
|
# 1894| Value = [Literal] 0
|
|
# 1894| ValueCategory = prvalue
|
|
# 1894| getArgument(0).getFullyConverted(): [CStyleCast] (A *)...
|
|
# 1894| Conversion = [IntegralToPointerConversion] integral to pointer conversion
|
|
# 1894| Type = [PointerType] A *
|
|
# 1894| Value = [CStyleCast] 0
|
|
# 1894| ValueCategory = prvalue
|
|
# 1894| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1894| Type = [LValueReferenceType] B &
|
|
# 1894| ValueCategory = prvalue
|
|
# 1894| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 1894| Type = [Struct] B
|
|
# 1894| ValueCategory = lvalue
|
|
# 1894| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 1894| Type = [Struct] B
|
|
# 1894| ValueCategory = lvalue
|
|
# 1895| getStmt(2): [ReturnStmt] return ...
|
|
# 1898| [TopLevelFunction] void magicvars()
|
|
# 1898| <params>:
|
|
# 1898| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1899| getStmt(0): [DeclStmt] declaration
|
|
# 1899| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pf
|
|
# 1899| Type = [PointerType] const char *
|
|
# 1899| getVariable().getInitializer(): [Initializer] initializer for pf
|
|
# 1899| getExpr(): [VariableAccess] __PRETTY_FUNCTION__
|
|
# 1899| Type = [ArrayType] const char[17]
|
|
# 1899| ValueCategory = lvalue
|
|
# 1899| getExpr().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1899| Type = [PointerType] const char *
|
|
# 1899| ValueCategory = prvalue
|
|
# 1900| getStmt(1): [DeclStmt] declaration
|
|
# 1900| getDeclarationEntry(0): [VariableDeclarationEntry] definition of strfunc
|
|
# 1900| Type = [PointerType] const char *
|
|
# 1900| getVariable().getInitializer(): [Initializer] initializer for strfunc
|
|
# 1900| getExpr(): [VariableAccess] __func__
|
|
# 1900| Type = [ArrayType] const char[10]
|
|
# 1900| ValueCategory = lvalue
|
|
# 1900| getExpr().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1900| Type = [PointerType] const char *
|
|
# 1900| ValueCategory = prvalue
|
|
# 1901| getStmt(2): [ReturnStmt] return ...
|
|
# 1904| [CopyAssignmentOperator] missing_declaration_entries::S& missing_declaration_entries::S::operator=(missing_declaration_entries::S const&)
|
|
# 1904| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const S &
|
|
# 1904| [MoveAssignmentOperator] missing_declaration_entries::S& missing_declaration_entries::S::operator=(missing_declaration_entries::S&&)
|
|
# 1904| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] S &&
|
|
# 1908| [CopyAssignmentOperator] missing_declaration_entries::Bar1<int>& missing_declaration_entries::Bar1<int>::operator=(missing_declaration_entries::Bar1<int> const&)
|
|
# 1908| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Bar1<int> &
|
|
# 1908| [MoveAssignmentOperator] missing_declaration_entries::Bar1<int>& missing_declaration_entries::Bar1<int>::operator=(missing_declaration_entries::Bar1<int>&&)
|
|
# 1908| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Bar1<int> &&
|
|
# 1911| [MemberFunction] void* missing_declaration_entries::Bar1<T>::missing_type_decl_entry(missing_declaration_entries::Bar1<T>::pointer)
|
|
# 1911| <params>:
|
|
# 1911| getParameter(0): [Parameter] p
|
|
# 1911| Type = [CTypedefType,NestedTypedefType] pointer
|
|
# 1911| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1912| getStmt(0): [DeclStmt] declaration
|
|
# 1912| getDeclarationEntry(0): [TypeDeclarationEntry] declaration of _Res
|
|
# 1912| Type = [CTypedefType,LocalTypedefType] _Res
|
|
# 1913| getStmt(1): [ReturnStmt] return ...
|
|
# 1913| getExpr(): [VariableAccess] p
|
|
# 1913| Type = [CTypedefType,NestedTypedefType] pointer
|
|
# 1913| ValueCategory = prvalue(load)
|
|
# 1913| getExpr().getFullyConverted(): [CStyleCast] (void *)...
|
|
# 1913| Conversion = [PointerConversion] pointer conversion
|
|
# 1913| Type = [VoidPointerType] void *
|
|
# 1913| ValueCategory = prvalue
|
|
# 1911| [MemberFunction] void* missing_declaration_entries::Bar1<int>::missing_type_decl_entry(missing_declaration_entries::Bar1<int>::pointer)
|
|
# 1911| <params>:
|
|
# 1911| getParameter(0): [Parameter] p
|
|
# 1911| Type = [CTypedefType,NestedTypedefType] pointer
|
|
# 1911| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1912| getStmt(0): [DeclStmt] declaration
|
|
# 1913| getStmt(1): [ReturnStmt] return ...
|
|
# 1913| getExpr(): [VariableAccess] p
|
|
# 1913| Type = [CTypedefType,NestedTypedefType] pointer
|
|
# 1913| ValueCategory = prvalue(load)
|
|
# 1913| getExpr().getFullyConverted(): [CStyleCast] (void *)...
|
|
# 1913| Conversion = [PointerConversion] pointer conversion
|
|
# 1913| Type = [VoidPointerType] void *
|
|
# 1913| ValueCategory = prvalue
|
|
# 1917| [TopLevelFunction] void missing_declaration_entries::test1()
|
|
# 1917| <params>:
|
|
# 1917| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1918| getStmt(0): [DeclStmt] declaration
|
|
# 1918| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 1918| Type = [ClassTemplateInstantiation,Struct] Bar1<int>
|
|
# 1919| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1919| getExpr(): [FunctionCall] call to missing_type_decl_entry
|
|
# 1919| Type = [VoidPointerType] void *
|
|
# 1919| ValueCategory = prvalue
|
|
# 1919| getQualifier(): [VariableAccess] b
|
|
# 1919| Type = [ClassTemplateInstantiation,Struct] Bar1<int>
|
|
# 1919| ValueCategory = lvalue
|
|
# 1919| getArgument(0): [Literal] 0
|
|
# 1919| Type = [NullPointerType] decltype(nullptr)
|
|
# 1919| Value = [Literal] 0
|
|
# 1919| ValueCategory = prvalue
|
|
# 1919| getArgument(0).getFullyConverted(): [CStyleCast] (pointer)...
|
|
# 1919| Conversion = [PointerConversion] pointer conversion
|
|
# 1919| Type = [CTypedefType,NestedTypedefType] pointer
|
|
# 1919| Value = [CStyleCast] 0
|
|
# 1919| ValueCategory = prvalue
|
|
# 1920| getStmt(2): [ReturnStmt] return ...
|
|
# 1922| [CopyAssignmentOperator] missing_declaration_entries::Bar2<int>& missing_declaration_entries::Bar2<int>::operator=(missing_declaration_entries::Bar2<int> const&)
|
|
# 1922| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Bar2<int> &
|
|
# 1922| [MoveAssignmentOperator] missing_declaration_entries::Bar2<int>& missing_declaration_entries::Bar2<int>::operator=(missing_declaration_entries::Bar2<int>&&)
|
|
# 1922| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Bar2<int> &&
|
|
# 1924| [MemberFunction] int missing_declaration_entries::Bar2<T>::two_missing_variable_declaration_entries()
|
|
# 1924| <params>:
|
|
# 1924| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1925| getStmt(0): [DeclStmt] declaration
|
|
# 1925| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1925| Type = [ArrayType] int[10]
|
|
# 1925| getDeclarationEntry(1): [VariableDeclarationEntry] definition of y
|
|
# 1925| Type = [ArrayType] int[10]
|
|
# 1926| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1926| getExpr(): [AssignExpr] ... = ...
|
|
# 1926| Type = [IntType] int
|
|
# 1926| ValueCategory = lvalue
|
|
# 1926| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 1926| Type = [IntType] int
|
|
# 1926| ValueCategory = lvalue
|
|
# 1926| getOperand(): [VariableAccess] x
|
|
# 1926| Type = [ArrayType] int[10]
|
|
# 1926| ValueCategory = lvalue
|
|
# 1926| getOperand().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1926| Type = [IntPointerType] int *
|
|
# 1926| ValueCategory = prvalue
|
|
# 1926| getRValue(): [Literal] 10
|
|
# 1926| Type = [IntType] int
|
|
# 1926| Value = [Literal] 10
|
|
# 1926| ValueCategory = prvalue
|
|
# 1927| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1927| getExpr(): [AssignExpr] ... = ...
|
|
# 1927| Type = [IntType] int
|
|
# 1927| ValueCategory = lvalue
|
|
# 1927| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 1927| Type = [IntType] int
|
|
# 1927| ValueCategory = lvalue
|
|
# 1927| getOperand(): [VariableAccess] y
|
|
# 1927| Type = [ArrayType] int[10]
|
|
# 1927| ValueCategory = lvalue
|
|
# 1927| getOperand().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1927| Type = [IntPointerType] int *
|
|
# 1927| ValueCategory = prvalue
|
|
# 1927| getRValue(): [Literal] 10
|
|
# 1927| Type = [IntType] int
|
|
# 1927| Value = [Literal] 10
|
|
# 1927| ValueCategory = prvalue
|
|
# 1928| getStmt(3): [ReturnStmt] return ...
|
|
# 1928| getExpr(): [AddExpr] ... + ...
|
|
# 1928| Type = [IntType] int
|
|
# 1928| ValueCategory = prvalue
|
|
# 1928| getLeftOperand(): [PointerDereferenceExpr] * ...
|
|
# 1928| Type = [IntType] int
|
|
# 1928| ValueCategory = prvalue(load)
|
|
# 1928| getOperand(): [VariableAccess] x
|
|
# 1928| Type = [ArrayType] int[10]
|
|
# 1928| ValueCategory = lvalue
|
|
# 1928| getOperand().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1928| Type = [IntPointerType] int *
|
|
# 1928| ValueCategory = prvalue
|
|
# 1928| getRightOperand(): [PointerDereferenceExpr] * ...
|
|
# 1928| Type = [IntType] int
|
|
# 1928| ValueCategory = prvalue(load)
|
|
# 1928| getOperand(): [VariableAccess] y
|
|
# 1928| Type = [ArrayType] int[10]
|
|
# 1928| ValueCategory = lvalue
|
|
# 1928| getOperand().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1928| Type = [IntPointerType] int *
|
|
# 1928| ValueCategory = prvalue
|
|
# 1924| [MemberFunction] int missing_declaration_entries::Bar2<int>::two_missing_variable_declaration_entries()
|
|
# 1924| <params>:
|
|
# 1924| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1925| getStmt(0): [DeclStmt] declaration
|
|
# 1926| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1926| getExpr(): [AssignExpr] ... = ...
|
|
# 1926| Type = [IntType] int
|
|
# 1926| ValueCategory = lvalue
|
|
# 1926| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 1926| Type = [IntType] int
|
|
# 1926| ValueCategory = lvalue
|
|
# 1926| getOperand(): [VariableAccess] x
|
|
# 1926| Type = [ArrayType] int[10]
|
|
# 1926| ValueCategory = lvalue
|
|
# 1926| getOperand().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1926| Type = [IntPointerType] int *
|
|
# 1926| ValueCategory = prvalue
|
|
# 1926| getRValue(): [Literal] 10
|
|
# 1926| Type = [IntType] int
|
|
# 1926| Value = [Literal] 10
|
|
# 1926| ValueCategory = prvalue
|
|
# 1927| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1927| getExpr(): [AssignExpr] ... = ...
|
|
# 1927| Type = [IntType] int
|
|
# 1927| ValueCategory = lvalue
|
|
# 1927| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 1927| Type = [IntType] int
|
|
# 1927| ValueCategory = lvalue
|
|
# 1927| getOperand(): [VariableAccess] y
|
|
# 1927| Type = [ArrayType] int[10]
|
|
# 1927| ValueCategory = lvalue
|
|
# 1927| getOperand().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1927| Type = [IntPointerType] int *
|
|
# 1927| ValueCategory = prvalue
|
|
# 1927| getRValue(): [Literal] 10
|
|
# 1927| Type = [IntType] int
|
|
# 1927| Value = [Literal] 10
|
|
# 1927| ValueCategory = prvalue
|
|
# 1928| getStmt(3): [ReturnStmt] return ...
|
|
# 1928| getExpr(): [AddExpr] ... + ...
|
|
# 1928| Type = [IntType] int
|
|
# 1928| ValueCategory = prvalue
|
|
# 1928| getLeftOperand(): [PointerDereferenceExpr] * ...
|
|
# 1928| Type = [IntType] int
|
|
# 1928| ValueCategory = prvalue(load)
|
|
# 1928| getOperand(): [VariableAccess] x
|
|
# 1928| Type = [ArrayType] int[10]
|
|
# 1928| ValueCategory = lvalue
|
|
# 1928| getOperand().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1928| Type = [IntPointerType] int *
|
|
# 1928| ValueCategory = prvalue
|
|
# 1928| getRightOperand(): [PointerDereferenceExpr] * ...
|
|
# 1928| Type = [IntType] int
|
|
# 1928| ValueCategory = prvalue(load)
|
|
# 1928| getOperand(): [VariableAccess] y
|
|
# 1928| Type = [ArrayType] int[10]
|
|
# 1928| ValueCategory = lvalue
|
|
# 1928| getOperand().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 1928| Type = [IntPointerType] int *
|
|
# 1928| ValueCategory = prvalue
|
|
# 1932| [TopLevelFunction] void missing_declaration_entries::test2()
|
|
# 1932| <params>:
|
|
# 1932| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1933| getStmt(0): [DeclStmt] declaration
|
|
# 1933| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 1933| Type = [ClassTemplateInstantiation,Struct] Bar2<int>
|
|
# 1934| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1934| getExpr(): [FunctionCall] call to two_missing_variable_declaration_entries
|
|
# 1934| Type = [IntType] int
|
|
# 1934| ValueCategory = prvalue
|
|
# 1934| getQualifier(): [VariableAccess] b
|
|
# 1934| Type = [ClassTemplateInstantiation,Struct] Bar2<int>
|
|
# 1934| ValueCategory = lvalue
|
|
# 1935| getStmt(2): [ReturnStmt] return ...
|
|
# 1938| [GlobalVariable] char global_template<char>
|
|
# 1938| getInitializer(): [Initializer] initializer for global_template
|
|
# 1938| getExpr(): [Literal] 42
|
|
# 1938| Type = [IntType] int
|
|
# 1938| Value = [Literal] 42
|
|
# 1938| ValueCategory = prvalue
|
|
# 1938| getExpr().getFullyConverted(): [CStyleCast] (char)...
|
|
# 1938| Conversion = [IntegralConversion] integral conversion
|
|
# 1938| Type = [PlainCharType] char
|
|
# 1938| Value = [CStyleCast] 42
|
|
# 1938| ValueCategory = prvalue
|
|
# 1938| [GlobalVariable] int global_template<int>
|
|
# 1938| getInitializer(): [Initializer] initializer for global_template
|
|
# 1938| getExpr(): [Literal] 42
|
|
# 1938| Type = [IntType] int
|
|
# 1938| Value = [Literal] 42
|
|
# 1938| ValueCategory = prvalue
|
|
# 1940| [TopLevelFunction] int test_global_template_int()
|
|
# 1940| <params>:
|
|
# 1940| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1941| getStmt(0): [DeclStmt] declaration
|
|
# 1941| getDeclarationEntry(0): [VariableDeclarationEntry] definition of local_int
|
|
# 1941| Type = [IntType] int
|
|
# 1941| getVariable().getInitializer(): [Initializer] initializer for local_int
|
|
# 1941| getExpr(): [VariableAccess] global_template
|
|
# 1941| Type = [IntType] int
|
|
# 1941| ValueCategory = prvalue(load)
|
|
# 1942| getStmt(1): [DeclStmt] declaration
|
|
# 1942| getDeclarationEntry(0): [VariableDeclarationEntry] definition of local_char
|
|
# 1942| Type = [PlainCharType] char
|
|
# 1942| getVariable().getInitializer(): [Initializer] initializer for local_char
|
|
# 1942| getExpr(): [VariableAccess] global_template
|
|
# 1942| Type = [PlainCharType] char
|
|
# 1942| ValueCategory = prvalue(load)
|
|
# 1943| getStmt(2): [ReturnStmt] return ...
|
|
# 1943| getExpr(): [AddExpr] ... + ...
|
|
# 1943| Type = [IntType] int
|
|
# 1943| ValueCategory = prvalue
|
|
# 1943| getLeftOperand(): [VariableAccess] local_int
|
|
# 1943| Type = [IntType] int
|
|
# 1943| ValueCategory = prvalue(load)
|
|
# 1943| getRightOperand(): [VariableAccess] local_char
|
|
# 1943| Type = [PlainCharType] char
|
|
# 1943| ValueCategory = prvalue(load)
|
|
# 1943| getRightOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 1943| Conversion = [IntegralConversion] integral conversion
|
|
# 1943| Type = [IntType] int
|
|
# 1943| ValueCategory = prvalue
|
|
# 1946| [TopLevelFunction] void noreturnFunc()
|
|
# 1946| <params>:
|
|
# 1948| [TopLevelFunction] int noreturnTest(int)
|
|
# 1948| <params>:
|
|
# 1948| getParameter(0): [Parameter] x
|
|
# 1948| Type = [IntType] int
|
|
# 1948| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1949| getStmt(0): [IfStmt] if (...) ...
|
|
# 1949| getCondition(): [LTExpr] ... < ...
|
|
# 1949| Type = [BoolType] bool
|
|
# 1949| ValueCategory = prvalue
|
|
# 1949| getLesserOperand(): [VariableAccess] x
|
|
# 1949| Type = [IntType] int
|
|
# 1949| ValueCategory = prvalue(load)
|
|
# 1949| getGreaterOperand(): [Literal] 10
|
|
# 1949| Type = [IntType] int
|
|
# 1949| Value = [Literal] 10
|
|
# 1949| ValueCategory = prvalue
|
|
# 1949| getThen(): [BlockStmt] { ... }
|
|
# 1950| getStmt(0): [ReturnStmt] return ...
|
|
# 1950| getExpr(): [VariableAccess] x
|
|
# 1950| Type = [IntType] int
|
|
# 1950| ValueCategory = prvalue(load)
|
|
# 1951| getElse(): [BlockStmt] { ... }
|
|
# 1952| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1952| getExpr(): [FunctionCall] call to noreturnFunc
|
|
# 1952| Type = [VoidType] void
|
|
# 1952| ValueCategory = prvalue
|
|
# 1954| getStmt(1): [ReturnStmt] return ...
|
|
# 1956| [TopLevelFunction] int noreturnTest2(int)
|
|
# 1956| <params>:
|
|
# 1956| getParameter(0): [Parameter] x
|
|
# 1956| Type = [IntType] int
|
|
# 1956| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1957| getStmt(0): [IfStmt] if (...) ...
|
|
# 1957| getCondition(): [LTExpr] ... < ...
|
|
# 1957| Type = [BoolType] bool
|
|
# 1957| ValueCategory = prvalue
|
|
# 1957| getLesserOperand(): [VariableAccess] x
|
|
# 1957| Type = [IntType] int
|
|
# 1957| ValueCategory = prvalue(load)
|
|
# 1957| getGreaterOperand(): [Literal] 10
|
|
# 1957| Type = [IntType] int
|
|
# 1957| Value = [Literal] 10
|
|
# 1957| ValueCategory = prvalue
|
|
# 1957| getThen(): [BlockStmt] { ... }
|
|
# 1958| getStmt(0): [ExprStmt] ExprStmt
|
|
# 1958| getExpr(): [FunctionCall] call to noreturnFunc
|
|
# 1958| Type = [VoidType] void
|
|
# 1958| ValueCategory = prvalue
|
|
# 1960| getStmt(1): [ReturnStmt] return ...
|
|
# 1960| getExpr(): [VariableAccess] x
|
|
# 1960| Type = [IntType] int
|
|
# 1960| ValueCategory = prvalue(load)
|
|
# 1963| [TopLevelFunction] int static_function(int)
|
|
# 1963| <params>:
|
|
# 1963| getParameter(0): [Parameter] x
|
|
# 1963| Type = [IntType] int
|
|
# 1963| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1964| getStmt(0): [ReturnStmt] return ...
|
|
# 1964| getExpr(): [VariableAccess] x
|
|
# 1964| Type = [IntType] int
|
|
# 1964| ValueCategory = prvalue(load)
|
|
# 1967| [TopLevelFunction] void test_static_functions_with_assignments()
|
|
# 1967| <params>:
|
|
# 1967| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1968| getStmt(0): [DeclStmt] declaration
|
|
# 1968| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 1968| Type = [Class] C
|
|
# 1968| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 1968| getExpr(): [ConstructorCall] call to C
|
|
# 1968| Type = [VoidType] void
|
|
# 1968| ValueCategory = prvalue
|
|
# 1969| getStmt(1): [DeclStmt] declaration
|
|
# 1969| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 1969| Type = [IntType] int
|
|
# 1970| getStmt(2): [ExprStmt] ExprStmt
|
|
# 1970| getExpr(): [AssignExpr] ... = ...
|
|
# 1970| Type = [IntType] int
|
|
# 1970| ValueCategory = lvalue
|
|
# 1970| getLValue(): [VariableAccess] x
|
|
# 1970| Type = [IntType] int
|
|
# 1970| ValueCategory = lvalue
|
|
# 1970| getRValue(): [FunctionCall] call to StaticMemberFunction
|
|
# 1970| Type = [IntType] int
|
|
# 1970| ValueCategory = prvalue
|
|
# 1970| getQualifier(): [VariableAccess] c
|
|
# 1970| Type = [Class] C
|
|
# 1970| ValueCategory = lvalue
|
|
# 1970| getArgument(0): [Literal] 10
|
|
# 1970| Type = [IntType] int
|
|
# 1970| Value = [Literal] 10
|
|
# 1970| ValueCategory = prvalue
|
|
# 1971| getStmt(3): [DeclStmt] declaration
|
|
# 1971| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 1971| Type = [IntType] int
|
|
# 1972| getStmt(4): [ExprStmt] ExprStmt
|
|
# 1972| getExpr(): [AssignExpr] ... = ...
|
|
# 1972| Type = [IntType] int
|
|
# 1972| ValueCategory = lvalue
|
|
# 1972| getLValue(): [VariableAccess] y
|
|
# 1972| Type = [IntType] int
|
|
# 1972| ValueCategory = lvalue
|
|
# 1972| getRValue(): [FunctionCall] call to StaticMemberFunction
|
|
# 1972| Type = [IntType] int
|
|
# 1972| ValueCategory = prvalue
|
|
# 1972| getArgument(0): [Literal] 10
|
|
# 1972| Type = [IntType] int
|
|
# 1972| Value = [Literal] 10
|
|
# 1972| ValueCategory = prvalue
|
|
# 1973| getStmt(5): [DeclStmt] declaration
|
|
# 1973| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z
|
|
# 1973| Type = [IntType] int
|
|
# 1974| getStmt(6): [ExprStmt] ExprStmt
|
|
# 1974| getExpr(): [AssignExpr] ... = ...
|
|
# 1974| Type = [IntType] int
|
|
# 1974| ValueCategory = lvalue
|
|
# 1974| getLValue(): [VariableAccess] z
|
|
# 1974| Type = [IntType] int
|
|
# 1974| ValueCategory = lvalue
|
|
# 1974| getRValue(): [FunctionCall] call to static_function
|
|
# 1974| Type = [IntType] int
|
|
# 1974| ValueCategory = prvalue
|
|
# 1974| getArgument(0): [Literal] 10
|
|
# 1974| Type = [IntType] int
|
|
# 1974| Value = [Literal] 10
|
|
# 1974| ValueCategory = prvalue
|
|
# 1975| getStmt(7): [ReturnStmt] return ...
|
|
# 1975| getImplicitDestructorCall(0): [DestructorCall] call to ~C
|
|
# 1975| Type = [VoidType] void
|
|
# 1975| ValueCategory = prvalue
|
|
# 1975| getQualifier(): [VariableAccess] c
|
|
# 1975| Type = [Class] C
|
|
# 1975| ValueCategory = lvalue
|
|
# 1977| [TopLevelFunction] void test_double_assign()
|
|
# 1977| <params>:
|
|
# 1977| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1978| getStmt(0): [DeclStmt] declaration
|
|
# 1978| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 1978| Type = [IntType] int
|
|
# 1978| getDeclarationEntry(1): [VariableDeclarationEntry] definition of j
|
|
# 1978| Type = [IntType] int
|
|
# 1979| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1979| getExpr(): [AssignExpr] ... = ...
|
|
# 1979| Type = [IntType] int
|
|
# 1979| ValueCategory = lvalue
|
|
# 1979| getLValue(): [VariableAccess] i
|
|
# 1979| Type = [IntType] int
|
|
# 1979| ValueCategory = lvalue
|
|
# 1979| getRValue(): [AssignExpr] ... = ...
|
|
# 1979| Type = [IntType] int
|
|
# 1979| ValueCategory = prvalue(load)
|
|
# 1979| getLValue(): [VariableAccess] j
|
|
# 1979| Type = [IntType] int
|
|
# 1979| ValueCategory = lvalue
|
|
# 1979| getRValue(): [Literal] 40
|
|
# 1979| Type = [IntType] int
|
|
# 1979| Value = [Literal] 40
|
|
# 1979| ValueCategory = prvalue
|
|
# 1980| getStmt(2): [ReturnStmt] return ...
|
|
# 1982| [TopLevelFunction] void test_assign_with_assign_operation()
|
|
# 1982| <params>:
|
|
# 1982| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1983| getStmt(0): [DeclStmt] declaration
|
|
# 1983| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 1983| Type = [IntType] int
|
|
# 1983| getDeclarationEntry(1): [VariableDeclarationEntry] definition of j
|
|
# 1983| Type = [IntType] int
|
|
# 1983| getVariable().getInitializer(): [Initializer] initializer for j
|
|
# 1983| getExpr(): [Literal] 0
|
|
# 1983| Type = [IntType] int
|
|
# 1983| Value = [Literal] 0
|
|
# 1983| ValueCategory = prvalue
|
|
# 1984| getStmt(1): [ExprStmt] ExprStmt
|
|
# 1984| getExpr(): [AssignExpr] ... = ...
|
|
# 1984| Type = [IntType] int
|
|
# 1984| ValueCategory = lvalue
|
|
# 1984| getLValue(): [VariableAccess] i
|
|
# 1984| Type = [IntType] int
|
|
# 1984| ValueCategory = lvalue
|
|
# 1984| getRValue(): [AssignAddExpr] ... += ...
|
|
# 1984| Type = [IntType] int
|
|
# 1984| ValueCategory = prvalue(load)
|
|
# 1984| getLValue(): [VariableAccess] j
|
|
# 1984| Type = [IntType] int
|
|
# 1984| ValueCategory = lvalue
|
|
# 1984| getRValue(): [Literal] 40
|
|
# 1984| Type = [IntType] int
|
|
# 1984| Value = [Literal] 40
|
|
# 1984| ValueCategory = prvalue
|
|
# 1984| getRValue().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 1984| Type = [IntType] int
|
|
# 1984| ValueCategory = prvalue(load)
|
|
# 1985| getStmt(2): [ReturnStmt] return ...
|
|
# 1987| [CopyAssignmentOperator] D& D::operator=(D const&)
|
|
# 1987| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const D &
|
|
# 1987| [MoveAssignmentOperator] D& D::operator=(D&&)
|
|
# 1987| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] D &&
|
|
# 1991| [MemberFunction] D& D::ReferenceStaticMemberFunction()
|
|
# 1991| <params>:
|
|
# 1991| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1992| getStmt(0): [ReturnStmt] return ...
|
|
# 1992| getExpr(): [VariableAccess] x
|
|
# 1992| Type = [Class] D
|
|
# 1992| ValueCategory = lvalue
|
|
# 1992| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 1992| Type = [LValueReferenceType] D &
|
|
# 1992| ValueCategory = prvalue
|
|
# 1994| [MemberFunction] D D::ObjectStaticMemberFunction()
|
|
# 1994| <params>:
|
|
# 1994| getEntryPoint(): [BlockStmt] { ... }
|
|
# 1995| getStmt(0): [ReturnStmt] return ...
|
|
# 1995| getExpr(): [VariableAccess] x
|
|
# 1995| Type = [Class] D
|
|
# 1995| ValueCategory = prvalue(load)
|
|
# 1999| [TopLevelFunction] void test_static_member_functions_with_reference_return()
|
|
# 1999| <params>:
|
|
# 1999| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2000| getStmt(0): [DeclStmt] declaration
|
|
# 2000| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 2000| Type = [Class] D
|
|
# 2002| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2002| getExpr(): [FunctionCall] call to ReferenceStaticMemberFunction
|
|
# 2002| Type = [LValueReferenceType] D &
|
|
# 2002| ValueCategory = prvalue
|
|
# 2002| getQualifier(): [VariableAccess] d
|
|
# 2002| Type = [Class] D
|
|
# 2002| ValueCategory = lvalue
|
|
# 2002| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2002| Type = [Class] D
|
|
# 2002| ValueCategory = lvalue
|
|
# 2003| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2003| getExpr(): [FunctionCall] call to ReferenceStaticMemberFunction
|
|
# 2003| Type = [LValueReferenceType] D &
|
|
# 2003| ValueCategory = prvalue
|
|
# 2003| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2003| Type = [Class] D
|
|
# 2003| ValueCategory = lvalue
|
|
# 2004| getStmt(3): [ExprStmt] ExprStmt
|
|
# 2004| getExpr(): [FunctionCall] call to ObjectStaticMemberFunction
|
|
# 2004| Type = [Class] D
|
|
# 2004| ValueCategory = prvalue
|
|
# 2004| getQualifier(): [VariableAccess] d
|
|
# 2004| Type = [Class] D
|
|
# 2004| ValueCategory = lvalue
|
|
# 2005| getStmt(4): [ExprStmt] ExprStmt
|
|
# 2005| getExpr(): [FunctionCall] call to ObjectStaticMemberFunction
|
|
# 2005| Type = [Class] D
|
|
# 2005| ValueCategory = prvalue
|
|
# 2007| getStmt(5): [DeclStmt] declaration
|
|
# 2007| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2007| Type = [Class] D
|
|
# 2008| getStmt(6): [ExprStmt] ExprStmt
|
|
# 2008| getExpr(): [AssignExpr] ... = ...
|
|
# 2008| Type = [Class] D
|
|
# 2008| ValueCategory = lvalue
|
|
# 2008| getLValue(): [VariableAccess] x
|
|
# 2008| Type = [Class] D
|
|
# 2008| ValueCategory = lvalue
|
|
# 2008| getRValue(): [FunctionCall] call to ReferenceStaticMemberFunction
|
|
# 2008| Type = [LValueReferenceType] D &
|
|
# 2008| ValueCategory = prvalue
|
|
# 2008| getQualifier(): [VariableAccess] d
|
|
# 2008| Type = [Class] D
|
|
# 2008| ValueCategory = lvalue
|
|
# 2008| getRValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2008| Type = [Class] D
|
|
# 2008| ValueCategory = prvalue(load)
|
|
# 2009| getStmt(7): [DeclStmt] declaration
|
|
# 2009| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 2009| Type = [Class] D
|
|
# 2010| getStmt(8): [ExprStmt] ExprStmt
|
|
# 2010| getExpr(): [AssignExpr] ... = ...
|
|
# 2010| Type = [Class] D
|
|
# 2010| ValueCategory = lvalue
|
|
# 2010| getLValue(): [VariableAccess] y
|
|
# 2010| Type = [Class] D
|
|
# 2010| ValueCategory = lvalue
|
|
# 2010| getRValue(): [FunctionCall] call to ReferenceStaticMemberFunction
|
|
# 2010| Type = [LValueReferenceType] D &
|
|
# 2010| ValueCategory = prvalue
|
|
# 2010| getRValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2010| Type = [Class] D
|
|
# 2010| ValueCategory = prvalue(load)
|
|
# 2011| getStmt(9): [DeclStmt] declaration
|
|
# 2011| getDeclarationEntry(0): [VariableDeclarationEntry] definition of j
|
|
# 2011| Type = [Class] D
|
|
# 2012| getStmt(10): [ExprStmt] ExprStmt
|
|
# 2012| getExpr(): [AssignExpr] ... = ...
|
|
# 2012| Type = [Class] D
|
|
# 2012| ValueCategory = lvalue
|
|
# 2012| getLValue(): [VariableAccess] j
|
|
# 2012| Type = [Class] D
|
|
# 2012| ValueCategory = lvalue
|
|
# 2012| getRValue(): [FunctionCall] call to ObjectStaticMemberFunction
|
|
# 2012| Type = [Class] D
|
|
# 2012| ValueCategory = prvalue
|
|
# 2012| getQualifier(): [VariableAccess] d
|
|
# 2012| Type = [Class] D
|
|
# 2012| ValueCategory = lvalue
|
|
# 2013| getStmt(11): [DeclStmt] declaration
|
|
# 2013| getDeclarationEntry(0): [VariableDeclarationEntry] definition of k
|
|
# 2013| Type = [Class] D
|
|
# 2014| getStmt(12): [ExprStmt] ExprStmt
|
|
# 2014| getExpr(): [AssignExpr] ... = ...
|
|
# 2014| Type = [Class] D
|
|
# 2014| ValueCategory = lvalue
|
|
# 2014| getLValue(): [VariableAccess] k
|
|
# 2014| Type = [Class] D
|
|
# 2014| ValueCategory = lvalue
|
|
# 2014| getRValue(): [FunctionCall] call to ObjectStaticMemberFunction
|
|
# 2014| Type = [Class] D
|
|
# 2014| ValueCategory = prvalue
|
|
# 2015| getStmt(13): [ReturnStmt] return ...
|
|
# 2017| [TopLevelFunction] void test_volatile()
|
|
# 2017| <params>:
|
|
# 2017| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2018| getStmt(0): [DeclStmt] declaration
|
|
# 2018| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2018| Type = [SpecifiedType] volatile int
|
|
# 2019| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2019| getExpr(): [VariableAccess] x
|
|
# 2019| Type = [IntType] int
|
|
# 2019| ValueCategory = prvalue(load)
|
|
# 2020| getStmt(2): [ReturnStmt] return ...
|
|
# 2022| [CopyAssignmentOperator] ValCat& ValCat::operator=(ValCat const&)
|
|
# 2022| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const ValCat &
|
|
# 2022| [MoveAssignmentOperator] ValCat& ValCat::operator=(ValCat&&)
|
|
# 2022| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] ValCat &&
|
|
# 2023| [MemberFunction] ValCat& ValCat::lvalue()
|
|
# 2023| <params>:
|
|
# 2024| [MemberFunction] ValCat&& ValCat::xvalue()
|
|
# 2024| <params>:
|
|
# 2025| [MemberFunction] ValCat ValCat::prvalue()
|
|
# 2025| <params>:
|
|
# 2028| [TopLevelFunction] void value_category_test()
|
|
# 2028| <params>:
|
|
# 2028| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2029| getStmt(0): [DeclStmt] declaration
|
|
# 2029| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 2029| Type = [Struct] ValCat
|
|
# 2031| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2031| getExpr(): [AssignExpr] ... = ...
|
|
# 2031| Type = [Struct] ValCat
|
|
# 2031| ValueCategory = lvalue
|
|
# 2031| getLValue(): [FunctionCall] call to lvalue
|
|
# 2031| Type = [LValueReferenceType] ValCat &
|
|
# 2031| ValueCategory = prvalue
|
|
# 2031| getQualifier(): [VariableAccess] c
|
|
# 2031| Type = [Struct] ValCat
|
|
# 2031| ValueCategory = lvalue
|
|
# 2031| getRValue(): [ClassAggregateLiteral] {...}
|
|
# 2031| Type = [Struct] ValCat
|
|
# 2031| ValueCategory = prvalue
|
|
# 2031| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2031| Type = [Struct] ValCat
|
|
# 2031| ValueCategory = lvalue
|
|
#-----| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] ValCat
|
|
#-----| ValueCategory = prvalue(load)
|
|
# 2032| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2032| getExpr(): [AssignExpr] ... = ...
|
|
# 2032| Type = [Struct] ValCat
|
|
# 2032| ValueCategory = lvalue
|
|
# 2032| getLValue(): [FunctionCall] call to xvalue
|
|
# 2032| Type = [RValueReferenceType] ValCat &&
|
|
# 2032| ValueCategory = prvalue
|
|
# 2032| getQualifier(): [VariableAccess] c
|
|
# 2032| Type = [Struct] ValCat
|
|
# 2032| ValueCategory = lvalue
|
|
# 2032| getRValue(): [ClassAggregateLiteral] {...}
|
|
# 2032| Type = [Struct] ValCat
|
|
# 2032| ValueCategory = prvalue
|
|
# 2032| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2032| Type = [Struct] ValCat
|
|
# 2032| ValueCategory = lvalue
|
|
#-----| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] ValCat
|
|
#-----| ValueCategory = prvalue(load)
|
|
# 2033| getStmt(3): [ExprStmt] ExprStmt
|
|
# 2033| getExpr(): [AssignExpr] ... = ...
|
|
# 2033| Type = [Struct] ValCat
|
|
# 2033| ValueCategory = lvalue
|
|
# 2033| getLValue(): [FunctionCall] call to prvalue
|
|
# 2033| Type = [Struct] ValCat
|
|
# 2033| ValueCategory = prvalue
|
|
# 2033| getQualifier(): [VariableAccess] c
|
|
# 2033| Type = [Struct] ValCat
|
|
# 2033| ValueCategory = lvalue
|
|
# 2033| getRValue(): [ClassAggregateLiteral] {...}
|
|
# 2033| Type = [Struct] ValCat
|
|
# 2033| ValueCategory = prvalue
|
|
# 2033| getLValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2033| Type = [Struct] ValCat
|
|
# 2033| ValueCategory = lvalue
|
|
#-----| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] ValCat
|
|
#-----| ValueCategory = prvalue(load)
|
|
# 2034| getStmt(4): [ExprStmt] ExprStmt
|
|
# 2034| getExpr(): [AssignExpr] ... = ...
|
|
# 2034| Type = [Struct] ValCat
|
|
# 2034| ValueCategory = lvalue
|
|
# 2034| getLValue(): [FunctionCall] call to lvalue
|
|
# 2034| Type = [LValueReferenceType] ValCat &
|
|
# 2034| ValueCategory = prvalue
|
|
# 2034| getRValue(): [ClassAggregateLiteral] {...}
|
|
# 2034| Type = [Struct] ValCat
|
|
# 2034| ValueCategory = prvalue
|
|
# 2034| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2034| Type = [Struct] ValCat
|
|
# 2034| ValueCategory = lvalue
|
|
#-----| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] ValCat
|
|
#-----| ValueCategory = prvalue(load)
|
|
# 2035| getStmt(5): [ExprStmt] ExprStmt
|
|
# 2035| getExpr(): [AssignExpr] ... = ...
|
|
# 2035| Type = [Struct] ValCat
|
|
# 2035| ValueCategory = lvalue
|
|
# 2035| getLValue(): [FunctionCall] call to xvalue
|
|
# 2035| Type = [RValueReferenceType] ValCat &&
|
|
# 2035| ValueCategory = prvalue
|
|
# 2035| getRValue(): [ClassAggregateLiteral] {...}
|
|
# 2035| Type = [Struct] ValCat
|
|
# 2035| ValueCategory = prvalue
|
|
# 2035| getLValue().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2035| Type = [Struct] ValCat
|
|
# 2035| ValueCategory = lvalue
|
|
#-----| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] ValCat
|
|
#-----| ValueCategory = prvalue(load)
|
|
# 2036| getStmt(6): [ExprStmt] ExprStmt
|
|
# 2036| getExpr(): [AssignExpr] ... = ...
|
|
# 2036| Type = [Struct] ValCat
|
|
# 2036| ValueCategory = lvalue
|
|
# 2036| getLValue(): [FunctionCall] call to prvalue
|
|
# 2036| Type = [Struct] ValCat
|
|
# 2036| ValueCategory = prvalue
|
|
# 2036| getRValue(): [ClassAggregateLiteral] {...}
|
|
# 2036| Type = [Struct] ValCat
|
|
# 2036| ValueCategory = prvalue
|
|
# 2036| getLValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2036| Type = [Struct] ValCat
|
|
# 2036| ValueCategory = lvalue
|
|
#-----| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [Struct] ValCat
|
|
#-----| ValueCategory = prvalue(load)
|
|
# 2037| getStmt(7): [ReturnStmt] return ...
|
|
# 2039| [TopLevelFunction] void SetStaticFuncPtr()
|
|
# 2039| <params>:
|
|
# 2039| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2040| getStmt(0): [DeclStmt] declaration
|
|
# 2040| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 2040| Type = [Class] C
|
|
# 2040| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 2040| getExpr(): [ConstructorCall] call to C
|
|
# 2040| Type = [VoidType] void
|
|
# 2040| ValueCategory = prvalue
|
|
# 2041| getStmt(1): [DeclStmt] declaration
|
|
# 2041| getDeclarationEntry(0): [VariableDeclarationEntry] definition of pfn
|
|
# 2041| Type = [FunctionPointerType] ..(*)(..)
|
|
# 2041| getVariable().getInitializer(): [Initializer] initializer for pfn
|
|
# 2041| getExpr(): [FunctionAccess] StaticMemberFunction
|
|
# 2041| Type = [FunctionPointerType] ..(*)(..)
|
|
# 2041| ValueCategory = prvalue(load)
|
|
# 2042| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2042| getExpr(): [AssignExpr] ... = ...
|
|
# 2042| Type = [FunctionPointerType] ..(*)(..)
|
|
# 2042| ValueCategory = lvalue
|
|
# 2042| getLValue(): [VariableAccess] pfn
|
|
# 2042| Type = [FunctionPointerType] ..(*)(..)
|
|
# 2042| ValueCategory = lvalue
|
|
# 2042| getRValue(): [FunctionAccess] StaticMemberFunction
|
|
# 2042| Type = [FunctionPointerType] ..(*)(..)
|
|
# 2042| ValueCategory = prvalue(load)
|
|
# 2042| getQualifier(): [VariableAccess] c
|
|
# 2042| Type = [Class] C
|
|
# 2042| ValueCategory = lvalue
|
|
# 2043| getStmt(3): [ReturnStmt] return ...
|
|
# 2043| getImplicitDestructorCall(0): [DestructorCall] call to ~C
|
|
# 2043| Type = [VoidType] void
|
|
# 2043| ValueCategory = prvalue
|
|
# 2043| getQualifier(): [VariableAccess] c
|
|
# 2043| Type = [Class] C
|
|
# 2043| ValueCategory = lvalue
|
|
# 2045| [TopLevelFunction] void TernaryTestInt(bool, int, int, int)
|
|
# 2045| <params>:
|
|
# 2045| getParameter(0): [Parameter] a
|
|
# 2045| Type = [BoolType] bool
|
|
# 2045| getParameter(1): [Parameter] x
|
|
# 2045| Type = [IntType] int
|
|
# 2045| getParameter(2): [Parameter] y
|
|
# 2045| Type = [IntType] int
|
|
# 2045| getParameter(3): [Parameter] z
|
|
# 2045| Type = [IntType] int
|
|
# 2045| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2046| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2046| getExpr(): [AssignExpr] ... = ...
|
|
# 2046| Type = [IntType] int
|
|
# 2046| ValueCategory = lvalue
|
|
# 2046| getLValue(): [VariableAccess] z
|
|
# 2046| Type = [IntType] int
|
|
# 2046| ValueCategory = lvalue
|
|
# 2046| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2046| Type = [IntType] int
|
|
# 2046| ValueCategory = prvalue(load)
|
|
# 2046| getCondition(): [VariableAccess] a
|
|
# 2046| Type = [BoolType] bool
|
|
# 2046| ValueCategory = prvalue(load)
|
|
# 2046| getThen(): [VariableAccess] x
|
|
# 2046| Type = [IntType] int
|
|
# 2046| ValueCategory = prvalue(load)
|
|
# 2046| getElse(): [VariableAccess] y
|
|
# 2046| Type = [IntType] int
|
|
# 2046| ValueCategory = prvalue(load)
|
|
# 2047| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2047| getExpr(): [AssignExpr] ... = ...
|
|
# 2047| Type = [IntType] int
|
|
# 2047| ValueCategory = lvalue
|
|
# 2047| getLValue(): [VariableAccess] z
|
|
# 2047| Type = [IntType] int
|
|
# 2047| ValueCategory = lvalue
|
|
# 2047| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2047| Type = [IntType] int
|
|
# 2047| ValueCategory = prvalue(load)
|
|
# 2047| getCondition(): [VariableAccess] a
|
|
# 2047| Type = [BoolType] bool
|
|
# 2047| ValueCategory = prvalue(load)
|
|
# 2047| getThen(): [VariableAccess] x
|
|
# 2047| Type = [IntType] int
|
|
# 2047| ValueCategory = prvalue(load)
|
|
# 2047| getElse(): [Literal] 5
|
|
# 2047| Type = [IntType] int
|
|
# 2047| Value = [Literal] 5
|
|
# 2047| ValueCategory = prvalue
|
|
# 2048| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2048| getExpr(): [AssignExpr] ... = ...
|
|
# 2048| Type = [IntType] int
|
|
# 2048| ValueCategory = lvalue
|
|
# 2048| getLValue(): [VariableAccess] z
|
|
# 2048| Type = [IntType] int
|
|
# 2048| ValueCategory = lvalue
|
|
# 2048| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2048| Type = [IntType] int
|
|
# 2048| ValueCategory = prvalue
|
|
# 2048| getCondition(): [VariableAccess] a
|
|
# 2048| Type = [BoolType] bool
|
|
# 2048| ValueCategory = prvalue(load)
|
|
# 2048| getThen(): [Literal] 3
|
|
# 2048| Type = [IntType] int
|
|
# 2048| Value = [Literal] 3
|
|
# 2048| ValueCategory = prvalue
|
|
# 2048| getElse(): [Literal] 5
|
|
# 2048| Type = [IntType] int
|
|
# 2048| Value = [Literal] 5
|
|
# 2048| ValueCategory = prvalue
|
|
# 2049| getStmt(3): [ExprStmt] ExprStmt
|
|
# 2049| getExpr(): [AssignExpr] ... = ...
|
|
# 2049| Type = [IntType] int
|
|
# 2049| ValueCategory = lvalue
|
|
# 2049| getLValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2049| Type = [IntType] int
|
|
# 2049| ValueCategory = lvalue
|
|
# 2049| getCondition(): [VariableAccess] a
|
|
# 2049| Type = [BoolType] bool
|
|
# 2049| ValueCategory = prvalue(load)
|
|
# 2049| getThen(): [VariableAccess] x
|
|
# 2049| Type = [IntType] int
|
|
# 2049| ValueCategory = lvalue
|
|
# 2049| getElse(): [VariableAccess] y
|
|
# 2049| Type = [IntType] int
|
|
# 2049| ValueCategory = lvalue
|
|
# 2049| getRValue(): [Literal] 7
|
|
# 2049| Type = [IntType] int
|
|
# 2049| Value = [Literal] 7
|
|
# 2049| ValueCategory = prvalue
|
|
# 2049| getLValue().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2049| Type = [IntType] int
|
|
# 2049| ValueCategory = lvalue
|
|
# 2050| getStmt(4): [ReturnStmt] return ...
|
|
# 2052| [CopyAssignmentOperator] TernaryPodObj& TernaryPodObj::operator=(TernaryPodObj const&)
|
|
# 2052| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const TernaryPodObj &
|
|
# 2052| [MoveAssignmentOperator] TernaryPodObj& TernaryPodObj::operator=(TernaryPodObj&&)
|
|
# 2052| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] TernaryPodObj &&
|
|
# 2055| [TopLevelFunction] void TernaryTestPodObj(bool, TernaryPodObj, TernaryPodObj, TernaryPodObj)
|
|
# 2055| <params>:
|
|
# 2055| getParameter(0): [Parameter] a
|
|
# 2055| Type = [BoolType] bool
|
|
# 2055| getParameter(1): [Parameter] x
|
|
# 2055| Type = [Struct] TernaryPodObj
|
|
# 2055| getParameter(2): [Parameter] y
|
|
# 2055| Type = [Struct] TernaryPodObj
|
|
# 2055| getParameter(3): [Parameter] z
|
|
# 2055| Type = [Struct] TernaryPodObj
|
|
# 2055| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2056| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2056| getExpr(): [AssignExpr] ... = ...
|
|
# 2056| Type = [Struct] TernaryPodObj
|
|
# 2056| ValueCategory = lvalue
|
|
# 2056| getLValue(): [VariableAccess] z
|
|
# 2056| Type = [Struct] TernaryPodObj
|
|
# 2056| ValueCategory = lvalue
|
|
# 2056| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2056| Type = [Struct] TernaryPodObj
|
|
# 2056| ValueCategory = prvalue(load)
|
|
# 2056| getCondition(): [VariableAccess] a
|
|
# 2056| Type = [BoolType] bool
|
|
# 2056| ValueCategory = prvalue(load)
|
|
# 2056| getThen(): [VariableAccess] x
|
|
# 2056| Type = [Struct] TernaryPodObj
|
|
# 2056| ValueCategory = prvalue(load)
|
|
# 2056| getElse(): [VariableAccess] y
|
|
# 2056| Type = [Struct] TernaryPodObj
|
|
# 2056| ValueCategory = prvalue(load)
|
|
# 2057| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2057| getExpr(): [AssignExpr] ... = ...
|
|
# 2057| Type = [Struct] TernaryPodObj
|
|
# 2057| ValueCategory = lvalue
|
|
# 2057| getLValue(): [VariableAccess] z
|
|
# 2057| Type = [Struct] TernaryPodObj
|
|
# 2057| ValueCategory = lvalue
|
|
# 2057| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2057| Type = [Struct] TernaryPodObj
|
|
# 2057| ValueCategory = prvalue
|
|
# 2057| getCondition(): [VariableAccess] a
|
|
# 2057| Type = [BoolType] bool
|
|
# 2057| ValueCategory = prvalue(load)
|
|
# 2057| getThen(): [VariableAccess] x
|
|
# 2057| Type = [Struct] TernaryPodObj
|
|
# 2057| ValueCategory = prvalue(load)
|
|
# 2057| getElse(): [Literal] 0
|
|
# 2057| Type = [Struct] TernaryPodObj
|
|
# 2057| Value = [Literal] 0
|
|
# 2057| ValueCategory = prvalue
|
|
# 2057| getThen().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2057| Type = [Struct] TernaryPodObj
|
|
# 2057| ValueCategory = prvalue(load)
|
|
# 2057| getElse().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2057| Type = [Struct] TernaryPodObj
|
|
# 2057| ValueCategory = prvalue(load)
|
|
# 2057| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2057| Type = [Struct] TernaryPodObj
|
|
# 2057| ValueCategory = prvalue(load)
|
|
# 2058| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2058| getExpr(): [AssignExpr] ... = ...
|
|
# 2058| Type = [Struct] TernaryPodObj
|
|
# 2058| ValueCategory = lvalue
|
|
# 2058| getLValue(): [VariableAccess] z
|
|
# 2058| Type = [Struct] TernaryPodObj
|
|
# 2058| ValueCategory = lvalue
|
|
# 2058| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2058| Type = [Struct] TernaryPodObj
|
|
# 2058| ValueCategory = prvalue
|
|
# 2058| getCondition(): [VariableAccess] a
|
|
# 2058| Type = [BoolType] bool
|
|
# 2058| ValueCategory = prvalue(load)
|
|
# 2058| getThen(): [Literal] 0
|
|
# 2058| Type = [Struct] TernaryPodObj
|
|
# 2058| Value = [Literal] 0
|
|
# 2058| ValueCategory = prvalue
|
|
# 2058| getElse(): [Literal] 0
|
|
# 2058| Type = [Struct] TernaryPodObj
|
|
# 2058| Value = [Literal] 0
|
|
# 2058| ValueCategory = prvalue
|
|
# 2058| getThen().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2058| Type = [Struct] TernaryPodObj
|
|
# 2058| ValueCategory = prvalue(load)
|
|
# 2058| getElse().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2058| Type = [Struct] TernaryPodObj
|
|
# 2058| ValueCategory = prvalue(load)
|
|
# 2058| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2058| Type = [Struct] TernaryPodObj
|
|
# 2058| ValueCategory = prvalue(load)
|
|
# 2059| getStmt(3): [ExprStmt] ExprStmt
|
|
# 2059| getExpr(): [AssignExpr] ... = ...
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| ValueCategory = lvalue
|
|
# 2059| getLValue(): [AssignExpr] ... = ...
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| ValueCategory = lvalue
|
|
# 2059| getLValue(): [VariableAccess] z
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| ValueCategory = lvalue
|
|
# 2059| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| ValueCategory = prvalue(load)
|
|
# 2059| getCondition(): [VariableAccess] a
|
|
# 2059| Type = [BoolType] bool
|
|
# 2059| ValueCategory = prvalue(load)
|
|
# 2059| getThen(): [VariableAccess] x
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| ValueCategory = prvalue(load)
|
|
# 2059| getElse(): [VariableAccess] y
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| ValueCategory = prvalue(load)
|
|
# 2059| getRValue(): [Literal] 0
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| Value = [Literal] 0
|
|
# 2059| ValueCategory = prvalue
|
|
# 2059| getLValue().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| ValueCategory = lvalue
|
|
# 2059| getRValue().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2059| Type = [Struct] TernaryPodObj
|
|
# 2059| ValueCategory = prvalue(load)
|
|
# 2060| getStmt(4): [ReturnStmt] return ...
|
|
# 2062| [CopyAssignmentOperator] TernaryNonPodObj& TernaryNonPodObj::operator=(TernaryNonPodObj const&)
|
|
# 2062| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const TernaryNonPodObj &
|
|
#-----| getEntryPoint(): [BlockStmt] { ... }
|
|
#-----| getStmt(0): [ReturnStmt] return ...
|
|
#-----| getExpr(): [PointerDereferenceExpr] * ...
|
|
#-----| Type = [Struct] TernaryNonPodObj
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getOperand(): [ThisExpr] this
|
|
#-----| Type = [PointerType] TernaryNonPodObj *
|
|
#-----| ValueCategory = prvalue(load)
|
|
#-----| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] TernaryNonPodObj &
|
|
#-----| ValueCategory = prvalue
|
|
# 2062| [Constructor] void TernaryNonPodObj::TernaryNonPodObj()
|
|
# 2062| <params>:
|
|
# 2062| <initializations>:
|
|
# 2062| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2062| getStmt(0): [ReturnStmt] return ...
|
|
# 2062| [CopyConstructor] void TernaryNonPodObj::TernaryNonPodObj(TernaryNonPodObj const&)
|
|
# 2062| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const TernaryNonPodObj &
|
|
# 2062| <initializations>:
|
|
# 2062| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2062| getStmt(0): [ReturnStmt] return ...
|
|
# 2063| [Destructor,VirtualFunction] void TernaryNonPodObj::~TernaryNonPodObj()
|
|
# 2063| <params>:
|
|
# 2063| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2063| getStmt(0): [ReturnStmt] return ...
|
|
# 2063| <destructions>:
|
|
# 2066| [TopLevelFunction] void TernaryTestNonPodObj(bool, TernaryNonPodObj, TernaryNonPodObj, TernaryNonPodObj)
|
|
# 2066| <params>:
|
|
# 2066| getParameter(0): [Parameter] a
|
|
# 2066| Type = [BoolType] bool
|
|
# 2066| getParameter(1): [Parameter] x
|
|
# 2066| Type = [Struct] TernaryNonPodObj
|
|
# 2066| getParameter(2): [Parameter] y
|
|
# 2066| Type = [Struct] TernaryNonPodObj
|
|
# 2066| getParameter(3): [Parameter] z
|
|
# 2066| Type = [Struct] TernaryNonPodObj
|
|
# 2066| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2067| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2067| getExpr(): [FunctionCall] call to operator=
|
|
# 2067| Type = [LValueReferenceType] TernaryNonPodObj &
|
|
# 2067| ValueCategory = prvalue
|
|
# 2067| getQualifier(): [VariableAccess] z
|
|
# 2067| Type = [Struct] TernaryNonPodObj
|
|
# 2067| ValueCategory = lvalue
|
|
# 2067| getArgument(0): [ConditionalExpr] ... ? ... : ...
|
|
# 2067| Type = [Struct] TernaryNonPodObj
|
|
# 2067| ValueCategory = lvalue
|
|
# 2067| getCondition(): [VariableAccess] a
|
|
# 2067| Type = [BoolType] bool
|
|
# 2067| ValueCategory = prvalue(load)
|
|
# 2067| getThen(): [VariableAccess] x
|
|
# 2067| Type = [Struct] TernaryNonPodObj
|
|
# 2067| ValueCategory = lvalue
|
|
# 2067| getElse(): [VariableAccess] y
|
|
# 2067| Type = [Struct] TernaryNonPodObj
|
|
# 2067| ValueCategory = lvalue
|
|
# 2067| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2067| Type = [LValueReferenceType] const TernaryNonPodObj &
|
|
# 2067| ValueCategory = prvalue
|
|
# 2067| getExpr(): [CStyleCast] (const TernaryNonPodObj)...
|
|
# 2067| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 2067| Type = [SpecifiedType] const TernaryNonPodObj
|
|
# 2067| ValueCategory = lvalue
|
|
# 2067| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2067| Type = [Struct] TernaryNonPodObj
|
|
# 2067| ValueCategory = lvalue
|
|
# 2068| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2068| getExpr(): [FunctionCall] call to operator=
|
|
# 2068| Type = [LValueReferenceType] TernaryNonPodObj &
|
|
# 2068| ValueCategory = prvalue
|
|
# 2068| getQualifier(): [VariableAccess] z
|
|
# 2068| Type = [Struct] TernaryNonPodObj
|
|
# 2068| ValueCategory = lvalue
|
|
# 2068| getArgument(0): [ConditionalExpr] ... ? ... : ...
|
|
# 2068| Type = [Struct] TernaryNonPodObj
|
|
# 2068| ValueCategory = prvalue
|
|
# 2068| getCondition(): [VariableAccess] a
|
|
# 2068| Type = [BoolType] bool
|
|
# 2068| ValueCategory = prvalue(load)
|
|
# 2068| getThen(): [ConstructorCall] call to TernaryNonPodObj
|
|
# 2068| Type = [VoidType] void
|
|
# 2068| ValueCategory = prvalue
|
|
# 2068| getArgument(0): [VariableAccess] x
|
|
# 2068| Type = [Struct] TernaryNonPodObj
|
|
# 2068| ValueCategory = lvalue
|
|
# 2068| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2068| Type = [LValueReferenceType] const TernaryNonPodObj &
|
|
# 2068| ValueCategory = prvalue
|
|
# 2068| getExpr(): [CStyleCast] (const TernaryNonPodObj)...
|
|
# 2068| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 2068| Type = [SpecifiedType] const TernaryNonPodObj
|
|
# 2068| ValueCategory = lvalue
|
|
# 2068| getElse(): [ConstructorCall] call to TernaryNonPodObj
|
|
# 2068| Type = [VoidType] void
|
|
# 2068| ValueCategory = prvalue
|
|
# 2068| getThen().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2068| Type = [Struct] TernaryNonPodObj
|
|
# 2068| ValueCategory = prvalue(load)
|
|
# 2068| getElse().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2068| Type = [Struct] TernaryNonPodObj
|
|
# 2068| ValueCategory = prvalue(load)
|
|
# 2068| getImplicitDestructorCall(0): [DestructorCall] call to ~TernaryNonPodObj
|
|
# 2068| Type = [VoidType] void
|
|
# 2068| ValueCategory = prvalue
|
|
# 2068| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2068| Type = [Struct] TernaryNonPodObj
|
|
# 2068| ValueCategory = xvalue
|
|
# 2068| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2068| Type = [LValueReferenceType] const TernaryNonPodObj &
|
|
# 2068| ValueCategory = prvalue
|
|
# 2068| getExpr(): [CStyleCast] (const TernaryNonPodObj)...
|
|
# 2068| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 2068| Type = [SpecifiedType] const TernaryNonPodObj
|
|
# 2068| ValueCategory = lvalue
|
|
# 2068| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 2068| Type = [Struct] TernaryNonPodObj
|
|
# 2068| ValueCategory = lvalue
|
|
# 2068| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2068| Type = [Struct] TernaryNonPodObj
|
|
# 2068| ValueCategory = lvalue
|
|
# 2069| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2069| getExpr(): [FunctionCall] call to operator=
|
|
# 2069| Type = [LValueReferenceType] TernaryNonPodObj &
|
|
# 2069| ValueCategory = prvalue
|
|
# 2069| getQualifier(): [VariableAccess] z
|
|
# 2069| Type = [Struct] TernaryNonPodObj
|
|
# 2069| ValueCategory = lvalue
|
|
# 2069| getArgument(0): [ConditionalExpr] ... ? ... : ...
|
|
# 2069| Type = [Struct] TernaryNonPodObj
|
|
# 2069| ValueCategory = prvalue
|
|
# 2069| getCondition(): [VariableAccess] a
|
|
# 2069| Type = [BoolType] bool
|
|
# 2069| ValueCategory = prvalue(load)
|
|
# 2069| getThen(): [ConstructorCall] call to TernaryNonPodObj
|
|
# 2069| Type = [VoidType] void
|
|
# 2069| ValueCategory = prvalue
|
|
# 2069| getElse(): [ConstructorCall] call to TernaryNonPodObj
|
|
# 2069| Type = [VoidType] void
|
|
# 2069| ValueCategory = prvalue
|
|
# 2069| getThen().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2069| Type = [Struct] TernaryNonPodObj
|
|
# 2069| ValueCategory = prvalue(load)
|
|
# 2069| getElse().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2069| Type = [Struct] TernaryNonPodObj
|
|
# 2069| ValueCategory = prvalue(load)
|
|
# 2069| getImplicitDestructorCall(0): [DestructorCall] call to ~TernaryNonPodObj
|
|
# 2069| Type = [VoidType] void
|
|
# 2069| ValueCategory = prvalue
|
|
# 2069| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2069| Type = [Struct] TernaryNonPodObj
|
|
# 2069| ValueCategory = xvalue
|
|
# 2069| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2069| Type = [LValueReferenceType] const TernaryNonPodObj &
|
|
# 2069| ValueCategory = prvalue
|
|
# 2069| getExpr(): [CStyleCast] (const TernaryNonPodObj)...
|
|
# 2069| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 2069| Type = [SpecifiedType] const TernaryNonPodObj
|
|
# 2069| ValueCategory = lvalue
|
|
# 2069| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 2069| Type = [Struct] TernaryNonPodObj
|
|
# 2069| ValueCategory = lvalue
|
|
# 2069| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2069| Type = [Struct] TernaryNonPodObj
|
|
# 2069| ValueCategory = lvalue
|
|
# 2070| getStmt(3): [ExprStmt] ExprStmt
|
|
# 2070| getExpr(): [FunctionCall] call to operator=
|
|
# 2070| Type = [LValueReferenceType] TernaryNonPodObj &
|
|
# 2070| ValueCategory = prvalue
|
|
# 2070| getQualifier(): [FunctionCall] call to operator=
|
|
# 2070| Type = [LValueReferenceType] TernaryNonPodObj &
|
|
# 2070| ValueCategory = prvalue
|
|
# 2070| getQualifier(): [VariableAccess] z
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getArgument(0): [ConditionalExpr] ... ? ... : ...
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getCondition(): [VariableAccess] a
|
|
# 2070| Type = [BoolType] bool
|
|
# 2070| ValueCategory = prvalue(load)
|
|
# 2070| getThen(): [VariableAccess] x
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getElse(): [VariableAccess] y
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2070| Type = [LValueReferenceType] const TernaryNonPodObj &
|
|
# 2070| ValueCategory = prvalue
|
|
# 2070| getExpr(): [CStyleCast] (const TernaryNonPodObj)...
|
|
# 2070| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 2070| Type = [SpecifiedType] const TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getArgument(0): [ConstructorCall] call to TernaryNonPodObj
|
|
# 2070| Type = [VoidType] void
|
|
# 2070| ValueCategory = prvalue
|
|
# 2070| getImplicitDestructorCall(0): [DestructorCall] call to ~TernaryNonPodObj
|
|
# 2070| Type = [VoidType] void
|
|
# 2070| ValueCategory = prvalue
|
|
# 2070| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = xvalue
|
|
# 2070| getQualifier().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2070| Type = [LValueReferenceType] const TernaryNonPodObj &
|
|
# 2070| ValueCategory = prvalue
|
|
# 2070| getExpr(): [CStyleCast] (const TernaryNonPodObj)...
|
|
# 2070| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 2070| Type = [SpecifiedType] const TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2070| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2070| Type = [Struct] TernaryNonPodObj
|
|
# 2070| ValueCategory = lvalue
|
|
# 2071| getStmt(4): [ReturnStmt] return ...
|
|
# 2073| [TopLevelFunction] void CommaTestHelper(unsigned int)
|
|
# 2073| <params>:
|
|
# 2073| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 2073| Type = [IntType] unsigned int
|
|
# 2075| [TopLevelFunction] unsigned int CommaTest(unsigned int)
|
|
# 2075| <params>:
|
|
# 2075| getParameter(0): [Parameter] x
|
|
# 2075| Type = [IntType] unsigned int
|
|
# 2075| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2076| getStmt(0): [DeclStmt] declaration
|
|
# 2076| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 2076| Type = [IntType] unsigned int
|
|
# 2077| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2077| getExpr(): [AssignExpr] ... = ...
|
|
# 2077| Type = [IntType] unsigned int
|
|
# 2077| ValueCategory = lvalue
|
|
# 2077| getLValue(): [VariableAccess] y
|
|
# 2077| Type = [IntType] unsigned int
|
|
# 2077| ValueCategory = lvalue
|
|
# 2077| getRValue(): [ConditionalExpr] ... ? ... : ...
|
|
# 2077| Type = [IntType] unsigned int
|
|
# 2077| ValueCategory = prvalue(load)
|
|
# 2077| getCondition(): [LTExpr] ... < ...
|
|
# 2077| Type = [BoolType] bool
|
|
# 2077| ValueCategory = prvalue
|
|
# 2077| getLesserOperand(): [VariableAccess] x
|
|
# 2077| Type = [IntType] unsigned int
|
|
# 2077| ValueCategory = prvalue(load)
|
|
# 2077| getGreaterOperand(): [Literal] 100
|
|
# 2077| Type = [IntType] int
|
|
# 2077| Value = [Literal] 100
|
|
# 2077| ValueCategory = prvalue
|
|
# 2077| getGreaterOperand().getFullyConverted(): [CStyleCast] (unsigned int)...
|
|
# 2077| Conversion = [IntegralConversion] integral conversion
|
|
# 2077| Type = [IntType] unsigned int
|
|
# 2077| Value = [CStyleCast] 100
|
|
# 2077| ValueCategory = prvalue
|
|
# 2078| getThen(): [CommaExpr] ... , ...
|
|
# 2078| Type = [IntType] unsigned int
|
|
# 2078| ValueCategory = prvalue(load)
|
|
# 2078| getLeftOperand(): [FunctionCall] call to CommaTestHelper
|
|
# 2078| Type = [VoidType] void
|
|
# 2078| ValueCategory = prvalue
|
|
# 2078| getArgument(0): [VariableAccess] x
|
|
# 2078| Type = [IntType] unsigned int
|
|
# 2078| ValueCategory = prvalue(load)
|
|
# 2078| getRightOperand(): [VariableAccess] x
|
|
# 2078| Type = [IntType] unsigned int
|
|
# 2078| ValueCategory = prvalue(load)
|
|
# 2079| getElse(): [CommaExpr] ... , ...
|
|
# 2079| Type = [IntType] int
|
|
# 2079| ValueCategory = prvalue
|
|
# 2079| getLeftOperand(): [FunctionCall] call to CommaTestHelper
|
|
# 2079| Type = [VoidType] void
|
|
# 2079| ValueCategory = prvalue
|
|
# 2079| getArgument(0): [VariableAccess] x
|
|
# 2079| Type = [IntType] unsigned int
|
|
# 2079| ValueCategory = prvalue(load)
|
|
# 2079| getRightOperand(): [Literal] 10
|
|
# 2079| Type = [IntType] int
|
|
# 2079| Value = [Literal] 10
|
|
# 2079| ValueCategory = prvalue
|
|
# 2078| getThen().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2078| Type = [IntType] unsigned int
|
|
# 2078| ValueCategory = prvalue(load)
|
|
# 2079| getElse().getFullyConverted(): [CStyleCast] (unsigned int)...
|
|
# 2079| Conversion = [IntegralConversion] integral conversion
|
|
# 2079| Type = [IntType] unsigned int
|
|
# 2079| ValueCategory = prvalue
|
|
# 2079| getExpr(): [ParenthesisExpr] (...)
|
|
# 2079| Type = [IntType] int
|
|
# 2079| ValueCategory = prvalue
|
|
# 2080| getStmt(2): [ReturnStmt] return ...
|
|
# 2082| [TopLevelFunction] void NewDeleteMem()
|
|
# 2082| <params>:
|
|
# 2082| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2083| getStmt(0): [DeclStmt] declaration
|
|
# 2083| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2083| Type = [IntPointerType] int *
|
|
# 2083| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2083| getExpr(): [NewExpr] new
|
|
# 2083| Type = [IntPointerType] int *
|
|
# 2083| ValueCategory = prvalue
|
|
# 2084| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2084| getExpr(): [AssignExpr] ... = ...
|
|
# 2084| Type = [IntType] int
|
|
# 2084| ValueCategory = lvalue
|
|
# 2084| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 2084| Type = [IntType] int
|
|
# 2084| ValueCategory = lvalue
|
|
# 2084| getOperand(): [VariableAccess] x
|
|
# 2084| Type = [IntPointerType] int *
|
|
# 2084| ValueCategory = prvalue(load)
|
|
# 2084| getRValue(): [Literal] 6
|
|
# 2084| Type = [IntType] int
|
|
# 2084| Value = [Literal] 6
|
|
# 2084| ValueCategory = prvalue
|
|
# 2085| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2085| getExpr(): [DeleteExpr] delete
|
|
# 2085| Type = [VoidType] void
|
|
# 2085| ValueCategory = prvalue
|
|
# 2085| getExpr(): [VariableAccess] x
|
|
# 2085| Type = [IntPointerType] int *
|
|
# 2085| ValueCategory = prvalue(load)
|
|
# 2086| getStmt(3): [ReturnStmt] return ...
|
|
# 2088| [CopyAssignmentOperator] Base2& Base2::operator=(Base2 const&)
|
|
# 2088| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Base2 &
|
|
# 2088| [Constructor] void Base2::Base2()
|
|
# 2088| <params>:
|
|
# 2088| <initializations>:
|
|
# 2088| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2088| getStmt(0): [ReturnStmt] return ...
|
|
# 2088| [CopyConstructor] void Base2::Base2(Base2 const&)
|
|
# 2088| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Base2 &
|
|
# 2090| [MemberFunction] void Base2::operator delete(void*)
|
|
# 2090| <params>:
|
|
# 2090| getParameter(0): [Parameter] p
|
|
# 2090| Type = [VoidPointerType] void *
|
|
# 2090| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2091| getStmt(0): [ReturnStmt] return ...
|
|
# 2092| [Destructor,VirtualFunction] void Base2::~Base2()
|
|
# 2092| <params>:
|
|
# 2092| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2092| getStmt(0): [ReturnStmt] return ...
|
|
# 2092| <destructions>:
|
|
# 2095| [CopyAssignmentOperator] Derived2& Derived2::operator=(Derived2 const&)
|
|
# 2095| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Derived2 &
|
|
# 2095| [Constructor] void Derived2::Derived2()
|
|
# 2095| <params>:
|
|
# 2095| <initializations>:
|
|
# 2095| getInitializer(0): [ConstructorDirectInit] call to Base2
|
|
# 2095| Type = [VoidType] void
|
|
# 2095| ValueCategory = prvalue
|
|
# 2095| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2095| getStmt(0): [ReturnStmt] return ...
|
|
# 2095| [CopyConstructor] void Derived2::Derived2(Derived2 const&)
|
|
# 2095| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Derived2 &
|
|
# 2098| [Destructor,VirtualFunction] void Derived2::~Derived2()
|
|
# 2098| <params>:
|
|
# 2098| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2098| getStmt(0): [ReturnStmt] return ...
|
|
# 2098| <destructions>:
|
|
# 2098| getDestruction(0): [DestructorDirectDestruction] call to ~Base2
|
|
# 2098| Type = [VoidType] void
|
|
# 2098| ValueCategory = prvalue
|
|
# 2100| [MemberFunction] void Derived2::operator delete(void*)
|
|
# 2100| <params>:
|
|
# 2100| getParameter(0): [Parameter] p
|
|
# 2100| Type = [VoidPointerType] void *
|
|
# 2100| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2101| getStmt(0): [ReturnStmt] return ...
|
|
# 2105| [TopLevelFunction] int virtual_delete()
|
|
# 2105| <params>:
|
|
# 2106| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2107| getStmt(0): [DeclStmt] declaration
|
|
# 2107| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b1
|
|
# 2107| Type = [PointerType] Base2 *
|
|
# 2107| getVariable().getInitializer(): [Initializer] initializer for b1
|
|
# 2107| getExpr(): [NewExpr] new
|
|
# 2107| Type = [PointerType] Base2 *
|
|
# 2107| ValueCategory = prvalue
|
|
# 2107| getInitializer(): [ConstructorCall] call to Base2
|
|
# 2107| Type = [VoidType] void
|
|
# 2107| ValueCategory = prvalue
|
|
# 2108| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2108| getExpr(): [DeleteExpr] delete
|
|
# 2108| Type = [VoidType] void
|
|
# 2108| ValueCategory = prvalue
|
|
# 2108| getDeallocatorCall(): [FunctionCall] call to operator delete
|
|
# 2108| Type = [VoidType] void
|
|
# 2108| ValueCategory = prvalue
|
|
# 2108| getDestructorCall(): [DestructorCall] call to ~Base2
|
|
# 2108| Type = [VoidType] void
|
|
# 2108| ValueCategory = prvalue
|
|
# 2108| getQualifier(): [VariableAccess] b1
|
|
# 2108| Type = [PointerType] Base2 *
|
|
# 2108| ValueCategory = prvalue(load)
|
|
# 2110| getStmt(2): [DeclStmt] declaration
|
|
# 2110| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b2
|
|
# 2110| Type = [PointerType] Base2 *
|
|
# 2110| getVariable().getInitializer(): [Initializer] initializer for b2
|
|
# 2110| getExpr(): [NewExpr] new
|
|
# 2110| Type = [PointerType] Derived2 *
|
|
# 2110| ValueCategory = prvalue
|
|
# 2110| getInitializer(): [ConstructorCall] call to Derived2
|
|
# 2110| Type = [VoidType] void
|
|
# 2110| ValueCategory = prvalue
|
|
# 2110| getExpr().getFullyConverted(): [CStyleCast] (Base2 *)...
|
|
# 2110| Conversion = [BaseClassConversion] base class conversion
|
|
# 2110| Type = [PointerType] Base2 *
|
|
# 2110| ValueCategory = prvalue
|
|
# 2111| getStmt(3): [ExprStmt] ExprStmt
|
|
# 2111| getExpr(): [DeleteExpr] delete
|
|
# 2111| Type = [VoidType] void
|
|
# 2111| ValueCategory = prvalue
|
|
# 2111| getDeallocatorCall(): [FunctionCall] call to operator delete
|
|
# 2111| Type = [VoidType] void
|
|
# 2111| ValueCategory = prvalue
|
|
# 2111| getDestructorCall(): [DestructorCall] call to ~Base2
|
|
# 2111| Type = [VoidType] void
|
|
# 2111| ValueCategory = prvalue
|
|
# 2111| getQualifier(): [VariableAccess] b2
|
|
# 2111| Type = [PointerType] Base2 *
|
|
# 2111| ValueCategory = prvalue(load)
|
|
# 2113| getStmt(4): [DeclStmt] declaration
|
|
# 2113| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 2113| Type = [PointerType] Derived2 *
|
|
# 2113| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 2113| getExpr(): [NewExpr] new
|
|
# 2113| Type = [PointerType] Derived2 *
|
|
# 2113| ValueCategory = prvalue
|
|
# 2113| getInitializer(): [ConstructorCall] call to Derived2
|
|
# 2113| Type = [VoidType] void
|
|
# 2113| ValueCategory = prvalue
|
|
# 2114| getStmt(5): [ExprStmt] ExprStmt
|
|
# 2114| getExpr(): [DeleteExpr] delete
|
|
# 2114| Type = [VoidType] void
|
|
# 2114| ValueCategory = prvalue
|
|
# 2114| getDeallocatorCall(): [FunctionCall] call to operator delete
|
|
# 2114| Type = [VoidType] void
|
|
# 2114| ValueCategory = prvalue
|
|
# 2114| getDestructorCall(): [DestructorCall] call to ~Derived2
|
|
# 2114| Type = [VoidType] void
|
|
# 2114| ValueCategory = prvalue
|
|
# 2114| getQualifier(): [VariableAccess] d
|
|
# 2114| Type = [PointerType] Derived2 *
|
|
# 2114| ValueCategory = prvalue(load)
|
|
# 2115| getStmt(6): [ReturnStmt] return ...
|
|
# 2117| [TopLevelFunction] void test_constant_folding_use(int)
|
|
# 2117| <params>:
|
|
# 2117| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 2117| Type = [IntType] int
|
|
# 2119| [TopLevelFunction] void test_constant_folding()
|
|
# 2119| <params>:
|
|
# 2119| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2120| getStmt(0): [DeclStmt] declaration
|
|
# 2120| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2120| Type = [SpecifiedType] const int
|
|
# 2120| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2120| getExpr(): [Literal] 116
|
|
# 2120| Type = [IntType] int
|
|
# 2120| Value = [Literal] 116
|
|
# 2120| ValueCategory = prvalue
|
|
# 2121| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2121| getExpr(): [FunctionCall] call to test_constant_folding_use
|
|
# 2121| Type = [VoidType] void
|
|
# 2121| ValueCategory = prvalue
|
|
# 2121| getArgument(0): [VariableAccess] x
|
|
# 2121| Type = [IntType] int
|
|
# 2121| Value = [VariableAccess] 116
|
|
# 2121| ValueCategory = prvalue(load)
|
|
# 2122| getStmt(2): [ReturnStmt] return ...
|
|
# 2124| [TopLevelFunction] void exit(int)
|
|
# 2124| <params>:
|
|
# 2124| getParameter(0): [Parameter] code
|
|
# 2124| Type = [IntType] int
|
|
# 2126| [TopLevelFunction] int NonExit()
|
|
# 2126| <params>:
|
|
# 2126| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2127| getStmt(0): [DeclStmt] declaration
|
|
# 2127| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2127| Type = [IntType] int
|
|
# 2127| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2127| getExpr(): [FunctionCall] call to Add
|
|
# 2127| Type = [IntType] int
|
|
# 2127| ValueCategory = prvalue
|
|
# 2127| getArgument(0): [Literal] 3
|
|
# 2127| Type = [IntType] int
|
|
# 2127| Value = [Literal] 3
|
|
# 2127| ValueCategory = prvalue
|
|
# 2127| getArgument(1): [Literal] 4
|
|
# 2127| Type = [IntType] int
|
|
# 2127| Value = [Literal] 4
|
|
# 2127| ValueCategory = prvalue
|
|
# 2128| getStmt(1): [IfStmt] if (...) ...
|
|
# 2128| getCondition(): [EQExpr] ... == ...
|
|
# 2128| Type = [BoolType] bool
|
|
# 2128| ValueCategory = prvalue
|
|
# 2128| getLeftOperand(): [VariableAccess] x
|
|
# 2128| Type = [IntType] int
|
|
# 2128| ValueCategory = prvalue(load)
|
|
# 2128| getRightOperand(): [Literal] 7
|
|
# 2128| Type = [IntType] int
|
|
# 2128| Value = [Literal] 7
|
|
# 2128| ValueCategory = prvalue
|
|
# 2129| getThen(): [ExprStmt] ExprStmt
|
|
# 2129| getExpr(): [FunctionCall] call to exit
|
|
# 2129| Type = [VoidType] void
|
|
# 2129| ValueCategory = prvalue
|
|
# 2129| getArgument(0): [Literal] 3
|
|
# 2129| Type = [IntType] int
|
|
# 2129| Value = [Literal] 3
|
|
# 2129| ValueCategory = prvalue
|
|
# 2130| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2130| getExpr(): [FunctionCall] call to VoidFunc
|
|
# 2130| Type = [VoidType] void
|
|
# 2130| ValueCategory = prvalue
|
|
# 2131| getStmt(3): [ReturnStmt] return ...
|
|
# 2131| getExpr(): [VariableAccess] x
|
|
# 2131| Type = [IntType] int
|
|
# 2131| ValueCategory = prvalue(load)
|
|
# 2134| [TopLevelFunction] void CallsNonExit()
|
|
# 2134| <params>:
|
|
# 2134| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2135| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2135| getExpr(): [FunctionCall] call to VoidFunc
|
|
# 2135| Type = [VoidType] void
|
|
# 2135| ValueCategory = prvalue
|
|
# 2136| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2136| getExpr(): [FunctionCall] call to exit
|
|
# 2136| Type = [VoidType] void
|
|
# 2136| ValueCategory = prvalue
|
|
# 2136| getArgument(0): [Literal] 3
|
|
# 2136| Type = [IntType] int
|
|
# 2136| Value = [Literal] 3
|
|
# 2136| ValueCategory = prvalue
|
|
# 2137| getStmt(2): [ReturnStmt] return ...
|
|
# 2139| [TopLevelFunction] int TransNonExit()
|
|
# 2139| <params>:
|
|
# 2139| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2140| getStmt(0): [DeclStmt] declaration
|
|
# 2140| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2140| Type = [IntType] int
|
|
# 2140| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2140| getExpr(): [FunctionCall] call to Add
|
|
# 2140| Type = [IntType] int
|
|
# 2140| ValueCategory = prvalue
|
|
# 2140| getArgument(0): [Literal] 3
|
|
# 2140| Type = [IntType] int
|
|
# 2140| Value = [Literal] 3
|
|
# 2140| ValueCategory = prvalue
|
|
# 2140| getArgument(1): [Literal] 4
|
|
# 2140| Type = [IntType] int
|
|
# 2140| Value = [Literal] 4
|
|
# 2140| ValueCategory = prvalue
|
|
# 2141| getStmt(1): [IfStmt] if (...) ...
|
|
# 2141| getCondition(): [EQExpr] ... == ...
|
|
# 2141| Type = [BoolType] bool
|
|
# 2141| ValueCategory = prvalue
|
|
# 2141| getLeftOperand(): [VariableAccess] x
|
|
# 2141| Type = [IntType] int
|
|
# 2141| ValueCategory = prvalue(load)
|
|
# 2141| getRightOperand(): [Literal] 7
|
|
# 2141| Type = [IntType] int
|
|
# 2141| Value = [Literal] 7
|
|
# 2141| ValueCategory = prvalue
|
|
# 2142| getThen(): [ExprStmt] ExprStmt
|
|
# 2142| getExpr(): [FunctionCall] call to CallsNonExit
|
|
# 2142| Type = [VoidType] void
|
|
# 2142| ValueCategory = prvalue
|
|
# 2143| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2143| getExpr(): [FunctionCall] call to VoidFunc
|
|
# 2143| Type = [VoidType] void
|
|
# 2143| ValueCategory = prvalue
|
|
# 2144| getStmt(3): [ReturnStmt] return ...
|
|
# 2144| getExpr(): [VariableAccess] x
|
|
# 2144| Type = [IntType] int
|
|
# 2144| ValueCategory = prvalue(load)
|
|
# 2147| [TopLevelFunction] void newArrayCorrectType(size_t)
|
|
# 2147| <params>:
|
|
# 2147| getParameter(0): [Parameter] n
|
|
# 2147| Type = [CTypedefType,Size_t] size_t
|
|
# 2147| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2148| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2148| getExpr(): [NewArrayExpr] new[]
|
|
# 2148| Type = [IntPointerType] int *
|
|
# 2148| ValueCategory = prvalue
|
|
# 2148| getExtent(): [VariableAccess] n
|
|
# 2148| Type = [CTypedefType,Size_t] size_t
|
|
# 2148| ValueCategory = prvalue(load)
|
|
# 2149| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2149| getExpr(): [NewArrayExpr] new[]
|
|
# 2149| Type = [IntPointerType] int *
|
|
# 2149| ValueCategory = prvalue
|
|
# 2149| getAllocatorCall(): [FunctionCall] call to operator new[]
|
|
# 2149| Type = [VoidPointerType] void *
|
|
# 2149| ValueCategory = prvalue
|
|
# 2149| getArgument(0): [ErrorExpr] <error expr>
|
|
# 2149| Type = [LongType] unsigned long
|
|
# 2149| ValueCategory = prvalue
|
|
# 2149| getArgument(1): [Literal] 1.0
|
|
# 2149| Type = [FloatType] float
|
|
# 2149| Value = [Literal] 1.0
|
|
# 2149| ValueCategory = prvalue
|
|
# 2149| getExtent(): [VariableAccess] n
|
|
# 2149| Type = [CTypedefType,Size_t] size_t
|
|
# 2149| ValueCategory = prvalue(load)
|
|
# 2150| getStmt(2): [ExprStmt] ExprStmt
|
|
# 2150| getExpr(): [NewArrayExpr] new[]
|
|
# 2150| Type = [PointerType] String *
|
|
# 2150| ValueCategory = prvalue
|
|
# 2150| getInitializer(): [ArrayAggregateLiteral] {...}
|
|
# 2150| Type = [ArrayType] String[]
|
|
# 2150| ValueCategory = prvalue
|
|
# 2150| getAnElementExpr(0): [ConstructorCall] call to String
|
|
# 2150| Type = [VoidType] void
|
|
# 2150| ValueCategory = prvalue
|
|
# 2150| getExtent(): [VariableAccess] n
|
|
# 2150| Type = [CTypedefType,Size_t] size_t
|
|
# 2150| ValueCategory = prvalue(load)
|
|
# 2151| getStmt(3): [ExprStmt] ExprStmt
|
|
# 2151| getExpr(): [NewArrayExpr] new[]
|
|
# 2151| Type = [PointerType] Overaligned *
|
|
# 2151| ValueCategory = prvalue
|
|
# 2151| getExtent(): [VariableAccess] n
|
|
# 2151| Type = [CTypedefType,Size_t] size_t
|
|
# 2151| ValueCategory = prvalue(load)
|
|
# 2151| getAlignmentArgument(): [Literal] 128
|
|
# 2151| Type = [ScopedEnum] align_val_t
|
|
# 2151| Value = [Literal] 128
|
|
# 2151| ValueCategory = prvalue
|
|
# 2152| getStmt(4): [ExprStmt] ExprStmt
|
|
# 2152| getExpr(): [NewArrayExpr] new[]
|
|
# 2152| Type = [PointerType] DefaultCtorWithDefaultParam *
|
|
# 2152| ValueCategory = prvalue
|
|
# 2152| getInitializer(): [ArrayAggregateLiteral] {...}
|
|
# 2152| Type = [ArrayType] DefaultCtorWithDefaultParam[]
|
|
# 2152| ValueCategory = prvalue
|
|
# 2152| getAnElementExpr(0): [ConstructorCall] call to DefaultCtorWithDefaultParam
|
|
# 2152| Type = [VoidType] void
|
|
# 2152| ValueCategory = prvalue
|
|
# 2152| getExtent(): [VariableAccess] n
|
|
# 2152| Type = [CTypedefType,Size_t] size_t
|
|
# 2152| ValueCategory = prvalue(load)
|
|
# 2153| getStmt(5): [ExprStmt] ExprStmt
|
|
# 2153| getExpr(): [NewArrayExpr] new[]
|
|
# 2153| Type = [IntPointerType] int *
|
|
# 2153| ValueCategory = prvalue
|
|
# 2153| getInitializer(): [ArrayAggregateLiteral] {...}
|
|
# 2153| Type = [ArrayType] int[3]
|
|
# 2153| ValueCategory = prvalue
|
|
# 2153| getAnElementExpr(0): [Literal] 0
|
|
# 2153| Type = [IntType] int
|
|
# 2153| Value = [Literal] 0
|
|
# 2153| ValueCategory = prvalue
|
|
# 2153| getAnElementExpr(1): [Literal] 1
|
|
# 2153| Type = [IntType] int
|
|
# 2153| Value = [Literal] 1
|
|
# 2153| ValueCategory = prvalue
|
|
# 2153| getAnElementExpr(2): [Literal] 2
|
|
# 2153| Type = [IntType] int
|
|
# 2153| Value = [Literal] 2
|
|
# 2153| ValueCategory = prvalue
|
|
# 2153| getExtent(): [VariableAccess] n
|
|
# 2153| Type = [CTypedefType,Size_t] size_t
|
|
# 2153| ValueCategory = prvalue(load)
|
|
# 2154| getStmt(6): [ReturnStmt] return ...
|
|
# 2156| [TopLevelFunction] double strtod(char const*, char**)
|
|
# 2156| <params>:
|
|
# 2156| getParameter(0): [Parameter] str
|
|
# 2156| Type = [PointerType] const char *
|
|
# 2156| getParameter(1): [Parameter] endptr
|
|
# 2156| Type = [PointerType] char **
|
|
# 2158| [TopLevelFunction] char* test_strtod(char*)
|
|
# 2158| <params>:
|
|
# 2158| getParameter(0): [Parameter] s
|
|
# 2158| Type = [CharPointerType] char *
|
|
# 2158| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2159| getStmt(0): [DeclStmt] declaration
|
|
# 2159| getDeclarationEntry(0): [VariableDeclarationEntry] definition of end
|
|
# 2159| Type = [CharPointerType] char *
|
|
# 2160| getStmt(1): [DeclStmt] declaration
|
|
# 2160| getDeclarationEntry(0): [VariableDeclarationEntry] definition of d
|
|
# 2160| Type = [DoubleType] double
|
|
# 2160| getVariable().getInitializer(): [Initializer] initializer for d
|
|
# 2160| getExpr(): [FunctionCall] call to strtod
|
|
# 2160| Type = [DoubleType] double
|
|
# 2160| ValueCategory = prvalue
|
|
# 2160| getArgument(0): [VariableAccess] s
|
|
# 2160| Type = [CharPointerType] char *
|
|
# 2160| ValueCategory = prvalue(load)
|
|
# 2160| getArgument(1): [AddressOfExpr] & ...
|
|
# 2160| Type = [PointerType] char **
|
|
# 2160| ValueCategory = prvalue
|
|
# 2160| getOperand(): [VariableAccess] end
|
|
# 2160| Type = [CharPointerType] char *
|
|
# 2160| ValueCategory = lvalue
|
|
# 2160| getArgument(0).getFullyConverted(): [CStyleCast] (const char *)...
|
|
# 2160| Conversion = [PointerConversion] pointer conversion
|
|
# 2160| Type = [PointerType] const char *
|
|
# 2160| ValueCategory = prvalue
|
|
# 2161| getStmt(2): [ReturnStmt] return ...
|
|
# 2161| getExpr(): [VariableAccess] end
|
|
# 2161| Type = [CharPointerType] char *
|
|
# 2161| ValueCategory = prvalue(load)
|
|
# 2164| [CopyAssignmentOperator] HasOperatorBool& HasOperatorBool::operator=(HasOperatorBool const&)
|
|
# 2164| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const HasOperatorBool &
|
|
# 2164| [MoveAssignmentOperator] HasOperatorBool& HasOperatorBool::operator=(HasOperatorBool&&)
|
|
# 2164| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] HasOperatorBool &&
|
|
# 2165| [ConversionOperator] bool HasOperatorBool::operator bool()
|
|
# 2165| <params>:
|
|
# 2168| [TopLevelFunction] void call_as_child_of_ConditionDeclExpr()
|
|
# 2168| <params>:
|
|
# 2168| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2169| getStmt(0): [IfStmt] if (...) ...
|
|
# 2169| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 2169| Type = [BoolType] bool
|
|
# 2169| ValueCategory = prvalue
|
|
# 2169| getChild(0): [FunctionCall] call to operator bool
|
|
# 2169| Type = [BoolType] bool
|
|
# 2169| ValueCategory = prvalue
|
|
# 2169| getQualifier(): [VariableAccess] b
|
|
# 2169| Type = [Struct] HasOperatorBool
|
|
# 2169| ValueCategory = prvalue(load)
|
|
# 2169| getInitializingExpr(): [Literal] 0
|
|
# 2169| Type = [Struct] HasOperatorBool
|
|
# 2169| Value = [Literal] 0
|
|
# 2169| ValueCategory = prvalue
|
|
# 2169| getThen(): [BlockStmt] { ... }
|
|
# 2170| getStmt(1): [ReturnStmt] return ...
|
|
# 2172| [CopyAssignmentOperator] ClassWithDestructor& ClassWithDestructor::operator=(ClassWithDestructor const&)
|
|
# 2172| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const ClassWithDestructor &
|
|
# 2172| [CopyConstructor] void ClassWithDestructor::ClassWithDestructor(ClassWithDestructor const&)
|
|
# 2172| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const ClassWithDestructor &
|
|
# 2172| <initializations>:
|
|
# 2172| getInitializer(0): [ConstructorFieldInit] constructor init of field x
|
|
# 2172| Type = [CharPointerType] char *
|
|
# 2172| ValueCategory = prvalue
|
|
# 2172| getExpr(): [ReferenceFieldAccess] x
|
|
# 2172| Type = [CharPointerType] char *
|
|
# 2172| ValueCategory = prvalue(load)
|
|
# 2172| getQualifier(): [VariableAccess] (unnamed parameter 0)
|
|
# 2172| Type = [LValueReferenceType] const ClassWithDestructor &
|
|
# 2172| ValueCategory = prvalue(load)
|
|
# 2172| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2172| Type = [SpecifiedType] const ClassWithDestructor
|
|
# 2172| ValueCategory = lvalue
|
|
# 2172| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2172| getStmt(0): [ReturnStmt] return ...
|
|
# 2175| [Constructor] void ClassWithDestructor::ClassWithDestructor()
|
|
# 2175| <params>:
|
|
# 2175| <initializations>:
|
|
# 2175| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2175| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2175| getExpr(): [AssignExpr] ... = ...
|
|
# 2175| Type = [CharPointerType] char *
|
|
# 2175| ValueCategory = lvalue
|
|
# 2175| getLValue(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 2175| Type = [CharPointerType] char *
|
|
# 2175| ValueCategory = lvalue
|
|
# 2175| getQualifier(): [ThisExpr] this
|
|
# 2175| Type = [PointerType] ClassWithDestructor *
|
|
# 2175| ValueCategory = prvalue(load)
|
|
# 2175| getRValue(): [NewExpr] new
|
|
# 2175| Type = [CharPointerType] char *
|
|
# 2175| ValueCategory = prvalue
|
|
# 2175| getStmt(1): [ReturnStmt] return ...
|
|
# 2176| [Destructor] void ClassWithDestructor::~ClassWithDestructor()
|
|
# 2176| <params>:
|
|
# 2176| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2176| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2176| getExpr(): [DeleteExpr] delete
|
|
# 2176| Type = [VoidType] void
|
|
# 2176| ValueCategory = prvalue
|
|
# 2176| getExpr(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 2176| Type = [CharPointerType] char *
|
|
# 2176| ValueCategory = prvalue(load)
|
|
# 2176| getQualifier(): [ThisExpr] this
|
|
# 2176| Type = [PointerType] ClassWithDestructor *
|
|
# 2176| ValueCategory = prvalue(load)
|
|
# 2176| getStmt(1): [ReturnStmt] return ...
|
|
# 2176| <destructions>:
|
|
# 2178| [MemberFunction] void ClassWithDestructor::set_x(char)
|
|
# 2178| <params>:
|
|
# 2178| getParameter(0): [Parameter] y
|
|
# 2178| Type = [PlainCharType] char
|
|
# 2178| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2178| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2178| getExpr(): [AssignExpr] ... = ...
|
|
# 2178| Type = [PlainCharType] char
|
|
# 2178| ValueCategory = lvalue
|
|
# 2178| getLValue(): [PointerDereferenceExpr] * ...
|
|
# 2178| Type = [PlainCharType] char
|
|
# 2178| ValueCategory = lvalue
|
|
# 2178| getOperand(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 2178| Type = [CharPointerType] char *
|
|
# 2178| ValueCategory = prvalue(load)
|
|
# 2178| getQualifier(): [ThisExpr] this
|
|
# 2178| Type = [PointerType] ClassWithDestructor *
|
|
# 2178| ValueCategory = prvalue(load)
|
|
# 2178| getRValue(): [VariableAccess] y
|
|
# 2178| Type = [PlainCharType] char
|
|
# 2178| ValueCategory = prvalue(load)
|
|
# 2178| getStmt(1): [ReturnStmt] return ...
|
|
# 2179| [MemberFunction] char ClassWithDestructor::get_x()
|
|
# 2179| <params>:
|
|
# 2179| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2179| getStmt(0): [ReturnStmt] return ...
|
|
# 2179| getExpr(): [PointerDereferenceExpr] * ...
|
|
# 2179| Type = [PlainCharType] char
|
|
# 2179| ValueCategory = prvalue(load)
|
|
# 2179| getOperand(): [ImplicitThisFieldAccess,PointerFieldAccess] x
|
|
# 2179| Type = [CharPointerType] char *
|
|
# 2179| ValueCategory = prvalue(load)
|
|
# 2179| getQualifier(): [ThisExpr] this
|
|
# 2179| Type = [PointerType] ClassWithDestructor *
|
|
# 2179| ValueCategory = prvalue(load)
|
|
# 2182| [GlobalVariable] bool initialization_with_destructor_bool
|
|
# 2182| getInitializer(): [Initializer] initializer for initialization_with_destructor_bool
|
|
# 2182| getExpr(): [Literal] 1
|
|
# 2182| Type = [BoolType] bool
|
|
# 2182| Value = [Literal] 1
|
|
# 2182| ValueCategory = prvalue
|
|
# 2184| [TopLevelFunction] void initialization_with_destructor(bool, char)
|
|
# 2184| <params>:
|
|
# 2184| getParameter(0): [Parameter] b
|
|
# 2184| Type = [BoolType] bool
|
|
# 2184| getParameter(1): [Parameter] c
|
|
# 2184| Type = [PlainCharType] char
|
|
# 2184| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2185| getStmt(0): [IfStmt] if (...) ...
|
|
# 2185| getInitialization(): [DeclStmt] declaration
|
|
# 2185| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2185| Type = [Class] ClassWithDestructor
|
|
# 2185| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2185| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2185| Type = [VoidType] void
|
|
# 2185| ValueCategory = prvalue
|
|
# 2185| getCondition(): [VariableAccess] b
|
|
# 2185| Type = [BoolType] bool
|
|
# 2185| ValueCategory = prvalue(load)
|
|
# 2186| getThen(): [ExprStmt] ExprStmt
|
|
# 2186| getExpr(): [FunctionCall] call to set_x
|
|
# 2186| Type = [VoidType] void
|
|
# 2186| ValueCategory = prvalue
|
|
# 2186| getQualifier(): [VariableAccess] x
|
|
# 2186| Type = [Class] ClassWithDestructor
|
|
# 2186| ValueCategory = lvalue
|
|
# 2186| getArgument(0): [CharLiteral] 97
|
|
# 2186| Type = [PlainCharType] char
|
|
# 2186| Value = [CharLiteral] 97
|
|
# 2186| ValueCategory = prvalue
|
|
# 2186| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2186| Type = [VoidType] void
|
|
# 2186| ValueCategory = prvalue
|
|
# 2186| getQualifier(): [VariableAccess] x
|
|
# 2186| Type = [Class] ClassWithDestructor
|
|
# 2186| ValueCategory = lvalue
|
|
# 2188| getStmt(1): [ConstexprIfStmt] if constexpr (...) ...
|
|
# 2188| getInitialization(): [DeclStmt] declaration
|
|
# 2188| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2188| Type = [Class] ClassWithDestructor
|
|
# 2188| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2188| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2188| Type = [VoidType] void
|
|
# 2188| ValueCategory = prvalue
|
|
# 2188| getCondition(): [VariableAccess] initialization_with_destructor_bool
|
|
# 2188| Type = [BoolType] bool
|
|
# 2188| Value = [VariableAccess] 1
|
|
# 2188| ValueCategory = prvalue(load)
|
|
# 2189| getThen(): [ExprStmt] ExprStmt
|
|
# 2189| getExpr(): [FunctionCall] call to set_x
|
|
# 2189| Type = [VoidType] void
|
|
# 2189| ValueCategory = prvalue
|
|
# 2189| getQualifier(): [VariableAccess] x
|
|
# 2189| Type = [Class] ClassWithDestructor
|
|
# 2189| ValueCategory = lvalue
|
|
# 2189| getArgument(0): [CharLiteral] 97
|
|
# 2189| Type = [PlainCharType] char
|
|
# 2189| Value = [CharLiteral] 97
|
|
# 2189| ValueCategory = prvalue
|
|
# 2189| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2189| Type = [VoidType] void
|
|
# 2189| ValueCategory = prvalue
|
|
# 2189| getQualifier(): [VariableAccess] x
|
|
# 2189| Type = [Class] ClassWithDestructor
|
|
# 2189| ValueCategory = lvalue
|
|
# 2191| getStmt(2): [SwitchStmt] switch (...) ...
|
|
# 2191| getInitialization(): [DeclStmt] declaration
|
|
# 2191| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2191| Type = [Class] ClassWithDestructor
|
|
# 2191| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2191| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2191| Type = [VoidType] void
|
|
# 2191| ValueCategory = prvalue
|
|
# 2191| getExpr(): [VariableAccess] c
|
|
# 2191| Type = [PlainCharType] char
|
|
# 2191| ValueCategory = prvalue(load)
|
|
# 2191| getStmt(): [BlockStmt] { ... }
|
|
# 2192| getStmt(0): [SwitchCase] case ...:
|
|
# 2192| getExpr(): [CharLiteral] 97
|
|
# 2192| Type = [PlainCharType] char
|
|
# 2192| Value = [CharLiteral] 97
|
|
# 2192| ValueCategory = prvalue
|
|
# 2192| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2192| Conversion = [IntegralConversion] integral conversion
|
|
# 2192| Type = [IntType] int
|
|
# 2192| Value = [CStyleCast] 97
|
|
# 2192| ValueCategory = prvalue
|
|
# 2193| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2193| getExpr(): [FunctionCall] call to set_x
|
|
# 2193| Type = [VoidType] void
|
|
# 2193| ValueCategory = prvalue
|
|
# 2193| getQualifier(): [VariableAccess] x
|
|
# 2193| Type = [Class] ClassWithDestructor
|
|
# 2193| ValueCategory = lvalue
|
|
# 2193| getArgument(0): [CharLiteral] 97
|
|
# 2193| Type = [PlainCharType] char
|
|
# 2193| Value = [CharLiteral] 97
|
|
# 2193| ValueCategory = prvalue
|
|
# 2194| getStmt(2): [BreakStmt] break;
|
|
# 2195| getStmt(3): [SwitchCase] default:
|
|
# 2196| getStmt(4): [ExprStmt] ExprStmt
|
|
# 2196| getExpr(): [FunctionCall] call to set_x
|
|
# 2196| Type = [VoidType] void
|
|
# 2196| ValueCategory = prvalue
|
|
# 2196| getQualifier(): [VariableAccess] x
|
|
# 2196| Type = [Class] ClassWithDestructor
|
|
# 2196| ValueCategory = lvalue
|
|
# 2196| getArgument(0): [CharLiteral] 98
|
|
# 2196| Type = [PlainCharType] char
|
|
# 2196| Value = [CharLiteral] 98
|
|
# 2196| ValueCategory = prvalue
|
|
# 2197| getStmt(5): [BreakStmt] break;
|
|
# 2198| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2198| Type = [VoidType] void
|
|
# 2198| ValueCategory = prvalue
|
|
# 2198| getQualifier(): [VariableAccess] x
|
|
# 2198| Type = [Class] ClassWithDestructor
|
|
# 2198| ValueCategory = lvalue
|
|
# 2191| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2191| Conversion = [IntegralConversion] integral conversion
|
|
# 2191| Type = [IntType] int
|
|
# 2191| ValueCategory = prvalue
|
|
# 2198| getStmt(3): [LabelStmt] label ...:
|
|
# 2200| getStmt(4): [DeclStmt] declaration
|
|
# 2200| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2200| Type = [Class] ClassWithDestructor
|
|
# 2200| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2200| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2200| Type = [VoidType] void
|
|
# 2200| ValueCategory = prvalue
|
|
# 2201| getStmt(5): [RangeBasedForStmt] for(...:...) ...
|
|
# 2201| getInitialization(): [DeclStmt] declaration
|
|
# 2201| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ys
|
|
# 2201| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2201| getVariable().getInitializer(): [Initializer] initializer for ys
|
|
# 2201| getExpr(): [ConstructorCall] call to vector
|
|
# 2201| Type = [VoidType] void
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getArgument(0): [VariableAccess] x
|
|
# 2201| Type = [Class] ClassWithDestructor
|
|
# 2201| ValueCategory = prvalue(load)
|
|
# 2201| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2201| Type = [VoidType] void
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2201| Type = [Class] ClassWithDestructor
|
|
# 2201| ValueCategory = xvalue
|
|
# 2201| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2201| Type = [Class] ClassWithDestructor
|
|
# 2201| ValueCategory = lvalue
|
|
# 2201| getChild(1): [DeclStmt] declaration
|
|
# 2201| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__range)
|
|
# 2201| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__range)
|
|
# 2201| getExpr(): [VariableAccess] ys
|
|
# 2201| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2201| ValueCategory = lvalue
|
|
# 2201| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2201| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getBeginEndDeclaration(): [DeclStmt] declaration
|
|
# 2201| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__begin)
|
|
# 2201| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__begin)
|
|
# 2201| getExpr(): [FunctionCall] call to begin
|
|
# 2201| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getQualifier(): [VariableAccess] (__range)
|
|
# 2201| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2201| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<ClassWithDestructor>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
# 2201| getDeclarationEntry(1): [VariableDeclarationEntry] declaration of (__end)
|
|
# 2201| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__end)
|
|
# 2201| getExpr(): [FunctionCall] call to end
|
|
# 2201| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getQualifier(): [VariableAccess] (__range)
|
|
# 2201| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2201| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<ClassWithDestructor>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
# 2201| getCondition(): [FunctionCall] call to operator!=
|
|
# 2201| Type = [BoolType] bool
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getQualifier(): [VariableAccess] (__begin)
|
|
# 2201| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2201| ValueCategory = lvalue
|
|
# 2201| getArgument(0): [ConstructorCall] call to iterator
|
|
# 2201| Type = [VoidType] void
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getArgument(0): [VariableAccess] (__end)
|
|
# 2201| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2201| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &> &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2201| getUpdate(): [FunctionCall] call to operator++
|
|
# 2201| Type = [LValueReferenceType] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &> &
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getQualifier(): [VariableAccess] (__begin)
|
|
# 2201| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2201| ValueCategory = lvalue
|
|
# 2201| getChild(5): [DeclStmt] declaration
|
|
# 2201| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 2201| Type = [Class] ClassWithDestructor
|
|
# 2201| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 2201| getExpr(): [OverloadedPointerDereferenceExpr] call to operator*
|
|
# 2201| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getQualifier(): [VariableAccess] (__begin)
|
|
# 2201| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2201| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2201| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2201| Type = [Class] ClassWithDestructor
|
|
# 2201| ValueCategory = prvalue(load)
|
|
# 2202| getStmt(): [ExprStmt] ExprStmt
|
|
# 2202| getExpr(): [FunctionCall] call to set_x
|
|
# 2202| Type = [VoidType] void
|
|
# 2202| ValueCategory = prvalue
|
|
# 2202| getQualifier(): [VariableAccess] y
|
|
# 2202| Type = [Class] ClassWithDestructor
|
|
# 2202| ValueCategory = lvalue
|
|
# 2202| getArgument(0): [CharLiteral] 97
|
|
# 2202| Type = [PlainCharType] char
|
|
# 2202| Value = [CharLiteral] 97
|
|
# 2202| ValueCategory = prvalue
|
|
# 2201| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2201| Type = [VoidType] void
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getQualifier(): [VariableAccess] y
|
|
# 2201| Type = [Class] ClassWithDestructor
|
|
# 2201| ValueCategory = lvalue
|
|
# 2201| getImplicitDestructorCall(0): [DestructorCall] call to ~vector
|
|
# 2201| Type = [VoidType] void
|
|
# 2201| ValueCategory = prvalue
|
|
# 2201| getQualifier(): [VariableAccess] ys
|
|
# 2201| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2201| ValueCategory = lvalue
|
|
# 2201| getUpdate().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2201| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
# 2201| ValueCategory = lvalue
|
|
# 2204| getStmt(6): [RangeBasedForStmt] for(...:...) ...
|
|
# 2204| getInitialization(): [DeclStmt] declaration
|
|
# 2204| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ys
|
|
# 2204| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2204| getVariable().getInitializer(): [Initializer] initializer for ys
|
|
# 2204| getExpr(): [ConstructorCall] call to vector
|
|
# 2204| Type = [VoidType] void
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getArgument(0): [VariableAccess] x
|
|
# 2204| Type = [Class] ClassWithDestructor
|
|
# 2204| ValueCategory = prvalue(load)
|
|
# 2204| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2204| Type = [VoidType] void
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2204| Type = [Class] ClassWithDestructor
|
|
# 2204| ValueCategory = xvalue
|
|
# 2204| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2204| Type = [Class] ClassWithDestructor
|
|
# 2204| ValueCategory = lvalue
|
|
# 2204| getChild(1): [DeclStmt] declaration
|
|
# 2204| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__range)
|
|
# 2204| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__range)
|
|
# 2204| getExpr(): [VariableAccess] ys
|
|
# 2204| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2204| ValueCategory = lvalue
|
|
# 2204| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2204| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getBeginEndDeclaration(): [DeclStmt] declaration
|
|
# 2204| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__begin)
|
|
# 2204| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__begin)
|
|
# 2204| getExpr(): [FunctionCall] call to begin
|
|
# 2204| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] (__range)
|
|
# 2204| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2204| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<ClassWithDestructor>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
# 2204| getDeclarationEntry(1): [VariableDeclarationEntry] declaration of (__end)
|
|
# 2204| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__end)
|
|
# 2204| getExpr(): [FunctionCall] call to end
|
|
# 2204| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] (__range)
|
|
# 2204| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2204| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<ClassWithDestructor>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
# 2204| getCondition(): [FunctionCall] call to operator!=
|
|
# 2204| Type = [BoolType] bool
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] (__begin)
|
|
# 2204| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2204| ValueCategory = lvalue
|
|
# 2204| getArgument(0): [ConstructorCall] call to iterator
|
|
# 2204| Type = [VoidType] void
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getArgument(0): [VariableAccess] (__end)
|
|
# 2204| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2204| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &> &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2204| getUpdate(): [FunctionCall] call to operator++
|
|
# 2204| Type = [LValueReferenceType] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &> &
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] (__begin)
|
|
# 2204| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2204| ValueCategory = lvalue
|
|
# 2204| getChild(5): [DeclStmt] declaration
|
|
# 2204| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 2204| Type = [Class] ClassWithDestructor
|
|
# 2204| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 2204| getExpr(): [OverloadedPointerDereferenceExpr] call to operator*
|
|
# 2204| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] (__begin)
|
|
# 2204| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2204| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2204| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2204| Type = [Class] ClassWithDestructor
|
|
# 2204| ValueCategory = prvalue(load)
|
|
# 2204| getStmt(): [BlockStmt] { ... }
|
|
# 2205| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2205| getExpr(): [FunctionCall] call to set_x
|
|
# 2205| Type = [VoidType] void
|
|
# 2205| ValueCategory = prvalue
|
|
# 2205| getQualifier(): [VariableAccess] y
|
|
# 2205| Type = [Class] ClassWithDestructor
|
|
# 2205| ValueCategory = lvalue
|
|
# 2205| getArgument(0): [CharLiteral] 97
|
|
# 2205| Type = [PlainCharType] char
|
|
# 2205| Value = [CharLiteral] 97
|
|
# 2205| ValueCategory = prvalue
|
|
# 2206| getStmt(1): [IfStmt] if (...) ...
|
|
# 2206| getCondition(): [EQExpr] ... == ...
|
|
# 2206| Type = [BoolType] bool
|
|
# 2206| ValueCategory = prvalue
|
|
# 2206| getLeftOperand(): [FunctionCall] call to get_x
|
|
# 2206| Type = [PlainCharType] char
|
|
# 2206| ValueCategory = prvalue
|
|
# 2206| getQualifier(): [VariableAccess] y
|
|
# 2206| Type = [Class] ClassWithDestructor
|
|
# 2206| ValueCategory = lvalue
|
|
# 2206| getRightOperand(): [CharLiteral] 98
|
|
# 2206| Type = [PlainCharType] char
|
|
# 2206| Value = [CharLiteral] 98
|
|
# 2206| ValueCategory = prvalue
|
|
# 2206| getLeftOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2206| Conversion = [IntegralConversion] integral conversion
|
|
# 2206| Type = [IntType] int
|
|
# 2206| ValueCategory = prvalue
|
|
# 2206| getRightOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2206| Conversion = [IntegralConversion] integral conversion
|
|
# 2206| Type = [IntType] int
|
|
# 2206| Value = [CStyleCast] 98
|
|
# 2206| ValueCategory = prvalue
|
|
# 2207| getThen(): [ReturnStmt] return ...
|
|
# 2204| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2204| Type = [VoidType] void
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] y
|
|
# 2204| Type = [Class] ClassWithDestructor
|
|
# 2204| ValueCategory = lvalue
|
|
# 2204| getImplicitDestructorCall(1): [DestructorCall] call to ~vector
|
|
# 2204| Type = [VoidType] void
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] ys
|
|
# 2204| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2204| ValueCategory = lvalue
|
|
# 2219| getImplicitDestructorCall(2): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2219| Type = [VoidType] void
|
|
# 2219| ValueCategory = prvalue
|
|
# 2219| getQualifier(): [VariableAccess] x
|
|
# 2219| Type = [Class] ClassWithDestructor
|
|
# 2219| ValueCategory = lvalue
|
|
# 2204| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2204| Type = [VoidType] void
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] y
|
|
# 2204| Type = [Class] ClassWithDestructor
|
|
# 2204| ValueCategory = lvalue
|
|
# 2204| getImplicitDestructorCall(0): [DestructorCall] call to ~vector
|
|
# 2204| Type = [VoidType] void
|
|
# 2204| ValueCategory = prvalue
|
|
# 2204| getQualifier(): [VariableAccess] ys
|
|
# 2204| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2204| ValueCategory = lvalue
|
|
# 2204| getUpdate().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2204| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
# 2204| ValueCategory = lvalue
|
|
# 2210| getStmt(7): [RangeBasedForStmt] for(...:...) ...
|
|
# 2210| getInitialization(): [DeclStmt] declaration
|
|
# 2210| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ys
|
|
# 2210| Type = [ClassTemplateInstantiation,Struct] vector<int>
|
|
# 2210| getVariable().getInitializer(): [Initializer] initializer for ys
|
|
# 2210| getExpr(): [ConstructorCall] call to vector
|
|
# 2210| Type = [VoidType] void
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getArgument(0): [Literal] 1
|
|
# 2210| Type = [IntType] int
|
|
# 2210| Value = [Literal] 1
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getChild(1): [DeclStmt] declaration
|
|
# 2210| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__range)
|
|
# 2210| Type = [LValueReferenceType] vector<int> &
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__range)
|
|
# 2210| getExpr(): [VariableAccess] ys
|
|
# 2210| Type = [ClassTemplateInstantiation,Struct] vector<int>
|
|
# 2210| ValueCategory = lvalue
|
|
# 2210| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2210| Type = [LValueReferenceType] vector<int> &
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getBeginEndDeclaration(): [DeclStmt] declaration
|
|
# 2210| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__begin)
|
|
# 2210| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__begin)
|
|
# 2210| getExpr(): [FunctionCall] call to begin
|
|
# 2210| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getQualifier(): [VariableAccess] (__range)
|
|
# 2210| Type = [LValueReferenceType] vector<int> &
|
|
# 2210| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<int>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<int>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<int>
|
|
#-----| ValueCategory = lvalue
|
|
# 2210| getDeclarationEntry(1): [VariableDeclarationEntry] declaration of (__end)
|
|
# 2210| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__end)
|
|
# 2210| getExpr(): [FunctionCall] call to end
|
|
# 2210| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getQualifier(): [VariableAccess] (__range)
|
|
# 2210| Type = [LValueReferenceType] vector<int> &
|
|
# 2210| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<int>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<int>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<int>
|
|
#-----| ValueCategory = lvalue
|
|
# 2210| getCondition(): [FunctionCall] call to operator!=
|
|
# 2210| Type = [BoolType] bool
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getQualifier(): [VariableAccess] (__begin)
|
|
# 2210| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2210| ValueCategory = lvalue
|
|
# 2210| getArgument(0): [ConstructorCall] call to iterator
|
|
# 2210| Type = [VoidType] void
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getArgument(0): [VariableAccess] (__end)
|
|
# 2210| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2210| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &> &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2210| getUpdate(): [FunctionCall] call to operator++
|
|
# 2210| Type = [LValueReferenceType] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &> &
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getQualifier(): [VariableAccess] (__begin)
|
|
# 2210| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2210| ValueCategory = lvalue
|
|
# 2210| getChild(5): [DeclStmt] declaration
|
|
# 2210| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 2210| Type = [IntType] int
|
|
# 2210| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 2210| getExpr(): [OverloadedPointerDereferenceExpr] call to operator*
|
|
# 2210| Type = [LValueReferenceType] int &
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getQualifier(): [VariableAccess] (__begin)
|
|
# 2210| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2210| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2210| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2210| Type = [IntType] int
|
|
# 2210| ValueCategory = prvalue(load)
|
|
# 2210| getStmt(): [BlockStmt] { ... }
|
|
# 2211| getStmt(0): [IfStmt] if (...) ...
|
|
# 2211| getCondition(): [EQExpr] ... == ...
|
|
# 2211| Type = [BoolType] bool
|
|
# 2211| ValueCategory = prvalue
|
|
# 2211| getLeftOperand(): [VariableAccess] y
|
|
# 2211| Type = [IntType] int
|
|
# 2211| ValueCategory = prvalue(load)
|
|
# 2211| getRightOperand(): [Literal] 1
|
|
# 2211| Type = [IntType] int
|
|
# 2211| Value = [Literal] 1
|
|
# 2211| ValueCategory = prvalue
|
|
# 2212| getThen(): [ReturnStmt] return ...
|
|
# 2210| getImplicitDestructorCall(0): [DestructorCall] call to ~vector
|
|
# 2210| Type = [VoidType] void
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getQualifier(): [VariableAccess] ys
|
|
# 2210| Type = [ClassTemplateInstantiation,Struct] vector<int>
|
|
# 2210| ValueCategory = lvalue
|
|
# 2219| getImplicitDestructorCall(1): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2219| Type = [VoidType] void
|
|
# 2219| ValueCategory = prvalue
|
|
# 2219| getQualifier(): [VariableAccess] x
|
|
# 2219| Type = [Class] ClassWithDestructor
|
|
# 2219| ValueCategory = lvalue
|
|
# 2210| getImplicitDestructorCall(0): [DestructorCall] call to ~vector
|
|
# 2210| Type = [VoidType] void
|
|
# 2210| ValueCategory = prvalue
|
|
# 2210| getQualifier(): [VariableAccess] ys
|
|
# 2210| Type = [ClassTemplateInstantiation,Struct] vector<int>
|
|
# 2210| ValueCategory = lvalue
|
|
# 2210| getUpdate().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2210| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, int, ptrdiff_t, int *, int &>
|
|
# 2210| ValueCategory = lvalue
|
|
# 2215| getStmt(8): [RangeBasedForStmt] for(...:...) ...
|
|
# 2215| getInitialization(): [DeclStmt] declaration
|
|
# 2215| getDeclarationEntry(0): [VariableDeclarationEntry] definition of ys
|
|
# 2215| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2215| getVariable().getInitializer(): [Initializer] initializer for ys
|
|
# 2215| getExpr(): [ConstructorCall] call to vector
|
|
# 2215| Type = [VoidType] void
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getArgument(0): [VariableAccess] x
|
|
# 2215| Type = [Class] ClassWithDestructor
|
|
# 2215| ValueCategory = prvalue(load)
|
|
# 2215| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2215| Type = [VoidType] void
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2215| Type = [Class] ClassWithDestructor
|
|
# 2215| ValueCategory = xvalue
|
|
# 2215| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2215| Type = [Class] ClassWithDestructor
|
|
# 2215| ValueCategory = lvalue
|
|
# 2215| getChild(1): [DeclStmt] declaration
|
|
# 2215| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__range)
|
|
# 2215| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__range)
|
|
# 2215| getExpr(): [VariableAccess] ys
|
|
# 2215| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2215| ValueCategory = lvalue
|
|
# 2215| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2215| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getBeginEndDeclaration(): [DeclStmt] declaration
|
|
# 2215| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__begin)
|
|
# 2215| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__begin)
|
|
# 2215| getExpr(): [FunctionCall] call to begin
|
|
# 2215| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getQualifier(): [VariableAccess] (__range)
|
|
# 2215| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2215| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<ClassWithDestructor>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
# 2215| getDeclarationEntry(1): [VariableDeclarationEntry] declaration of (__end)
|
|
# 2215| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__end)
|
|
# 2215| getExpr(): [FunctionCall] call to end
|
|
# 2215| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getQualifier(): [VariableAccess] (__range)
|
|
# 2215| Type = [LValueReferenceType] vector<ClassWithDestructor> &
|
|
# 2215| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<ClassWithDestructor>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
#-----| ValueCategory = lvalue
|
|
# 2215| getCondition(): [FunctionCall] call to operator!=
|
|
# 2215| Type = [BoolType] bool
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getQualifier(): [VariableAccess] (__begin)
|
|
# 2215| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2215| ValueCategory = lvalue
|
|
# 2215| getArgument(0): [ConstructorCall] call to iterator
|
|
# 2215| Type = [VoidType] void
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getArgument(0): [VariableAccess] (__end)
|
|
# 2215| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2215| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &> &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2215| getUpdate(): [FunctionCall] call to operator++
|
|
# 2215| Type = [LValueReferenceType] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &> &
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getQualifier(): [VariableAccess] (__begin)
|
|
# 2215| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2215| ValueCategory = lvalue
|
|
# 2215| getChild(5): [DeclStmt] declaration
|
|
# 2215| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 2215| Type = [Class] ClassWithDestructor
|
|
# 2215| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 2215| getExpr(): [OverloadedPointerDereferenceExpr] call to operator*
|
|
# 2215| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getQualifier(): [VariableAccess] (__begin)
|
|
# 2215| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2215| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2215| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2215| Type = [Class] ClassWithDestructor
|
|
# 2215| ValueCategory = prvalue(load)
|
|
# 2215| getStmt(): [BlockStmt] { ... }
|
|
# 2216| getStmt(0): [DeclStmt] declaration
|
|
# 2216| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z1
|
|
# 2216| Type = [Class] ClassWithDestructor
|
|
# 2216| getVariable().getInitializer(): [Initializer] initializer for z1
|
|
# 2216| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2216| Type = [VoidType] void
|
|
# 2216| ValueCategory = prvalue
|
|
# 2217| getStmt(1): [DeclStmt] declaration
|
|
# 2217| getDeclarationEntry(0): [VariableDeclarationEntry] definition of z2
|
|
# 2217| Type = [Class] ClassWithDestructor
|
|
# 2217| getVariable().getInitializer(): [Initializer] initializer for z2
|
|
# 2217| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2217| Type = [VoidType] void
|
|
# 2217| ValueCategory = prvalue
|
|
# 2218| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2218| Type = [VoidType] void
|
|
# 2218| ValueCategory = prvalue
|
|
# 2218| getQualifier(): [VariableAccess] z2
|
|
# 2218| Type = [Class] ClassWithDestructor
|
|
# 2218| ValueCategory = lvalue
|
|
# 2218| getImplicitDestructorCall(1): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2218| Type = [VoidType] void
|
|
# 2218| ValueCategory = prvalue
|
|
# 2218| getQualifier(): [VariableAccess] z1
|
|
# 2218| Type = [Class] ClassWithDestructor
|
|
# 2218| ValueCategory = lvalue
|
|
# 2215| getImplicitDestructorCall(2): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2215| Type = [VoidType] void
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getQualifier(): [VariableAccess] y
|
|
# 2215| Type = [Class] ClassWithDestructor
|
|
# 2215| ValueCategory = lvalue
|
|
# 2215| getImplicitDestructorCall(0): [DestructorCall] call to ~vector
|
|
# 2215| Type = [VoidType] void
|
|
# 2215| ValueCategory = prvalue
|
|
# 2215| getQualifier(): [VariableAccess] ys
|
|
# 2215| Type = [ClassTemplateInstantiation,Struct] vector<ClassWithDestructor>
|
|
# 2215| ValueCategory = lvalue
|
|
# 2215| getUpdate().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2215| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, ClassWithDestructor, ptrdiff_t, ClassWithDestructor *, ClassWithDestructor &>
|
|
# 2215| ValueCategory = lvalue
|
|
# 2219| getStmt(9): [ReturnStmt] return ...
|
|
# 2219| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2219| Type = [VoidType] void
|
|
# 2219| ValueCategory = prvalue
|
|
# 2219| getQualifier(): [VariableAccess] x
|
|
# 2219| Type = [Class] ClassWithDestructor
|
|
# 2219| ValueCategory = lvalue
|
|
# 2221| [TopLevelFunction] void static_variable_with_destructor_1()
|
|
# 2221| <params>:
|
|
# 2221| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2222| getStmt(0): [DeclStmt] declaration
|
|
# 2222| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 2222| Type = [Class] ClassWithDestructor
|
|
# 2222| getVariable().getInitializer(): [Initializer] initializer for a
|
|
# 2222| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2222| Type = [VoidType] void
|
|
# 2222| ValueCategory = prvalue
|
|
# 2223| getStmt(1): [DeclStmt] declaration
|
|
# 2223| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 2223| Type = [Class] ClassWithDestructor
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for b
|
|
#-----| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
#-----| Type = [VoidType] void
|
|
#-----| ValueCategory = prvalue
|
|
# 2224| getStmt(2): [ReturnStmt] return ...
|
|
# 2224| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2224| Type = [VoidType] void
|
|
# 2224| ValueCategory = prvalue
|
|
# 2224| getQualifier(): [VariableAccess] a
|
|
# 2224| Type = [Class] ClassWithDestructor
|
|
# 2224| ValueCategory = lvalue
|
|
# 2226| [TopLevelFunction] void static_variable_with_destructor_2()
|
|
# 2226| <params>:
|
|
# 2226| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2227| getStmt(0): [DeclStmt] declaration
|
|
# 2227| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 2227| Type = [Class] ClassWithDestructor
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for a
|
|
#-----| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
#-----| Type = [VoidType] void
|
|
#-----| ValueCategory = prvalue
|
|
# 2228| getStmt(1): [DeclStmt] declaration
|
|
# 2228| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 2228| Type = [Class] ClassWithDestructor
|
|
# 2228| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 2228| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2228| Type = [VoidType] void
|
|
# 2228| ValueCategory = prvalue
|
|
# 2229| getStmt(2): [ReturnStmt] return ...
|
|
# 2229| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2229| Type = [VoidType] void
|
|
# 2229| ValueCategory = prvalue
|
|
# 2229| getQualifier(): [VariableAccess] b
|
|
# 2229| Type = [Class] ClassWithDestructor
|
|
# 2229| ValueCategory = lvalue
|
|
# 2231| [TopLevelFunction] void static_variable_with_destructor_3()
|
|
# 2231| <params>:
|
|
# 2231| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2232| getStmt(0): [DeclStmt] declaration
|
|
# 2232| getDeclarationEntry(0): [VariableDeclarationEntry] definition of a
|
|
# 2232| Type = [Class] ClassWithDestructor
|
|
# 2232| getVariable().getInitializer(): [Initializer] initializer for a
|
|
# 2232| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2232| Type = [VoidType] void
|
|
# 2232| ValueCategory = prvalue
|
|
# 2233| getStmt(1): [DeclStmt] declaration
|
|
# 2233| getDeclarationEntry(0): [VariableDeclarationEntry] definition of b
|
|
# 2233| Type = [Class] ClassWithDestructor
|
|
# 2233| getVariable().getInitializer(): [Initializer] initializer for b
|
|
# 2233| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2233| Type = [VoidType] void
|
|
# 2233| ValueCategory = prvalue
|
|
# 2234| getStmt(2): [DeclStmt] declaration
|
|
# 2234| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 2234| Type = [Class] ClassWithDestructor
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for c
|
|
#-----| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
#-----| Type = [VoidType] void
|
|
#-----| ValueCategory = prvalue
|
|
# 2235| getStmt(3): [ReturnStmt] return ...
|
|
# 2235| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2235| Type = [VoidType] void
|
|
# 2235| ValueCategory = prvalue
|
|
# 2235| getQualifier(): [VariableAccess] b
|
|
# 2235| Type = [Class] ClassWithDestructor
|
|
# 2235| ValueCategory = lvalue
|
|
# 2235| getImplicitDestructorCall(1): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2235| Type = [VoidType] void
|
|
# 2235| ValueCategory = prvalue
|
|
# 2235| getQualifier(): [VariableAccess] a
|
|
# 2235| Type = [Class] ClassWithDestructor
|
|
# 2235| ValueCategory = lvalue
|
|
# 2237| [GlobalVariable] ClassWithDestructor global_class_with_destructor
|
|
# 2237| getInitializer(): [Initializer] initializer for global_class_with_destructor
|
|
# 2237| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2237| Type = [VoidType] void
|
|
# 2237| ValueCategory = prvalue
|
|
# 2241| [FunctionTemplateInstantiation,TopLevelFunction] ClassWithDestructor& vacuous_destructor_call::get<ClassWithDestructor>(ClassWithDestructor&)
|
|
# 2241| <params>:
|
|
# 2241| getParameter(0): [Parameter] t
|
|
# 2241| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2241| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2241| getStmt(0): [ReturnStmt] return ...
|
|
# 2241| getExpr(): [VariableAccess] t
|
|
# 2241| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2241| ValueCategory = prvalue(load)
|
|
# 2241| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2241| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2241| ValueCategory = prvalue
|
|
# 2241| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2241| Type = [Class] ClassWithDestructor
|
|
# 2241| ValueCategory = lvalue
|
|
# 2241| [TemplateFunction,TopLevelFunction] T& vacuous_destructor_call::get<T>(T&)
|
|
# 2241| <params>:
|
|
# 2241| getParameter(0): [Parameter] t
|
|
# 2241| Type = [LValueReferenceType] T &
|
|
# 2241| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2241| getStmt(0): [ReturnStmt] return ...
|
|
# 2241| getExpr(): [VariableAccess] t
|
|
# 2241| Type = [LValueReferenceType] T &
|
|
# 2241| ValueCategory = prvalue(load)
|
|
# 2241| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2241| Type = [TemplateParameter] T
|
|
# 2241| ValueCategory = lvalue
|
|
# 2241| [FunctionTemplateInstantiation,TopLevelFunction] int& vacuous_destructor_call::get<int>(int&)
|
|
# 2241| <params>:
|
|
# 2241| getParameter(0): [Parameter] t
|
|
# 2241| Type = [LValueReferenceType] int &
|
|
# 2241| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2241| getStmt(0): [ReturnStmt] return ...
|
|
# 2241| getExpr(): [VariableAccess] t
|
|
# 2241| Type = [LValueReferenceType] int &
|
|
# 2241| ValueCategory = prvalue(load)
|
|
# 2241| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2241| Type = [LValueReferenceType] int &
|
|
# 2241| ValueCategory = prvalue
|
|
# 2241| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2241| Type = [IntType] int
|
|
# 2241| ValueCategory = lvalue
|
|
# 2244| [FunctionTemplateInstantiation,TopLevelFunction] void vacuous_destructor_call::call_destructor<ClassWithDestructor>(ClassWithDestructor&)
|
|
# 2244| <params>:
|
|
# 2244| getParameter(0): [Parameter] t
|
|
# 2244| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2244| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2245| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2245| getExpr(): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2245| Type = [VoidType] void
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getQualifier(): [FunctionCall] call to get
|
|
# 2245| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getArgument(0): [VariableAccess] t
|
|
# 2245| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2245| ValueCategory = prvalue(load)
|
|
# 2245| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2245| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2245| Type = [Class] ClassWithDestructor
|
|
# 2245| ValueCategory = lvalue
|
|
# 2245| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2245| Type = [Class] ClassWithDestructor
|
|
# 2245| ValueCategory = lvalue
|
|
# 2246| getStmt(1): [ReturnStmt] return ...
|
|
# 2244| [TemplateFunction,TopLevelFunction] void vacuous_destructor_call::call_destructor<T>(T&)
|
|
# 2244| <params>:
|
|
# 2244| getParameter(0): [Parameter] t
|
|
# 2244| Type = [LValueReferenceType] T &
|
|
# 2244| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2245| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2245| getExpr(): [ExprCall] call to expression
|
|
# 2245| Type = [UnknownType] unknown
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getExpr(): [Literal] Unknown literal
|
|
# 2245| Type = [UnknownType] unknown
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getChild(-1): [ExprCall] call to expression
|
|
# 2245| Type = [UnknownType] unknown
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getExpr(): [Literal] Unknown literal
|
|
# 2245| Type = [UnknownType] unknown
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getArgument(0): [VariableAccess] t
|
|
# 2245| Type = [LValueReferenceType] T &
|
|
# 2245| ValueCategory = prvalue(load)
|
|
# 2245| getArgument(0).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2245| Type = [TemplateParameter] T
|
|
# 2245| ValueCategory = lvalue
|
|
# 2246| getStmt(1): [ReturnStmt] return ...
|
|
# 2244| [FunctionTemplateInstantiation,TopLevelFunction] void vacuous_destructor_call::call_destructor<int>(int&)
|
|
# 2244| <params>:
|
|
# 2244| getParameter(0): [Parameter] t
|
|
# 2244| Type = [LValueReferenceType] int &
|
|
# 2244| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2245| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2245| getExpr(): [VacuousDestructorCall] (vacuous destructor call)
|
|
# 2245| Type = [VoidType] void
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getChild(0): [FunctionCall] call to get
|
|
# 2245| Type = [LValueReferenceType] int &
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getArgument(0): [VariableAccess] t
|
|
# 2245| Type = [LValueReferenceType] int &
|
|
# 2245| ValueCategory = prvalue(load)
|
|
# 2245| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2245| Type = [LValueReferenceType] int &
|
|
# 2245| ValueCategory = prvalue
|
|
# 2245| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2245| Type = [IntType] int
|
|
# 2245| ValueCategory = lvalue
|
|
# 2245| getChild(0).getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2245| Type = [IntType] int
|
|
# 2245| ValueCategory = lvalue
|
|
# 2246| getStmt(1): [ReturnStmt] return ...
|
|
# 2248| [TopLevelFunction] void vacuous_destructor_call::non_vacuous_destructor_call()
|
|
# 2248| <params>:
|
|
# 2248| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2249| getStmt(0): [DeclStmt] declaration
|
|
# 2249| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 2249| Type = [Class] ClassWithDestructor
|
|
# 2249| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 2249| getExpr(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2249| Type = [VoidType] void
|
|
# 2249| ValueCategory = prvalue
|
|
# 2250| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2250| getExpr(): [FunctionCall] call to call_destructor
|
|
# 2250| Type = [VoidType] void
|
|
# 2250| ValueCategory = prvalue
|
|
# 2250| getArgument(0): [VariableAccess] c
|
|
# 2250| Type = [Class] ClassWithDestructor
|
|
# 2250| ValueCategory = lvalue
|
|
# 2250| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2250| Type = [LValueReferenceType] ClassWithDestructor &
|
|
# 2250| ValueCategory = prvalue
|
|
# 2251| getStmt(2): [ReturnStmt] return ...
|
|
# 2251| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2251| Type = [VoidType] void
|
|
# 2251| ValueCategory = prvalue
|
|
# 2251| getQualifier(): [VariableAccess] c
|
|
# 2251| Type = [Class] ClassWithDestructor
|
|
# 2251| ValueCategory = lvalue
|
|
# 2253| [TopLevelFunction] void vacuous_destructor_call::vacuous_destructor_call()
|
|
# 2253| <params>:
|
|
# 2253| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2254| getStmt(0): [DeclStmt] declaration
|
|
# 2254| getDeclarationEntry(0): [VariableDeclarationEntry] definition of i
|
|
# 2254| Type = [IntType] int
|
|
# 2255| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2255| getExpr(): [FunctionCall] call to call_destructor
|
|
# 2255| Type = [VoidType] void
|
|
# 2255| ValueCategory = prvalue
|
|
# 2255| getArgument(0): [VariableAccess] i
|
|
# 2255| Type = [IntType] int
|
|
# 2255| ValueCategory = lvalue
|
|
# 2255| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2255| Type = [LValueReferenceType] int &
|
|
# 2255| ValueCategory = prvalue
|
|
# 2256| getStmt(2): [ReturnStmt] return ...
|
|
# 2259| [TopLevelFunction] void TryCatchDestructors(bool)
|
|
# 2259| <params>:
|
|
# 2259| getParameter(0): [Parameter] b
|
|
# 2259| Type = [BoolType] bool
|
|
# 2259| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2260| getStmt(0): [TryStmt] try { ... }
|
|
# 2260| getStmt(): [BlockStmt] { ... }
|
|
# 2261| getStmt(0): [DeclStmt] declaration
|
|
# 2261| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2261| Type = [Struct] String
|
|
# 2261| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2261| getExpr(): [ConstructorCall] call to String
|
|
# 2261| Type = [VoidType] void
|
|
# 2261| ValueCategory = prvalue
|
|
# 2262| getStmt(1): [IfStmt] if (...) ...
|
|
# 2262| getCondition(): [VariableAccess] b
|
|
# 2262| Type = [BoolType] bool
|
|
# 2262| ValueCategory = prvalue(load)
|
|
# 2262| getThen(): [BlockStmt] { ... }
|
|
# 2263| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2263| getExpr(): [ThrowExpr] throw ...
|
|
# 2263| Type = [PointerType] const char *
|
|
# 2263| ValueCategory = prvalue
|
|
# 2263| getExpr(): string literal
|
|
# 2263| Type = [ArrayType] const char[15]
|
|
# 2263| Value = [StringLiteral] "string literal"
|
|
# 2263| ValueCategory = lvalue
|
|
# 2266| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2266| Type = [VoidType] void
|
|
# 2266| ValueCategory = prvalue
|
|
# 2266| getQualifier(): [VariableAccess] s
|
|
# 2266| Type = [Struct] String
|
|
# 2266| ValueCategory = lvalue
|
|
# 2263| getExpr().getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 2263| Type = [PointerType] const char *
|
|
# 2263| ValueCategory = prvalue
|
|
# 2265| getStmt(2): [DeclStmt] declaration
|
|
# 2265| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s2
|
|
# 2265| Type = [Struct] String
|
|
# 2265| getVariable().getInitializer(): [Initializer] initializer for s2
|
|
# 2265| getExpr(): [ConstructorCall] call to String
|
|
# 2265| Type = [VoidType] void
|
|
# 2265| ValueCategory = prvalue
|
|
# 2266| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2266| Type = [VoidType] void
|
|
# 2266| ValueCategory = prvalue
|
|
# 2266| getQualifier(): [VariableAccess] s2
|
|
# 2266| Type = [Struct] String
|
|
# 2266| ValueCategory = lvalue
|
|
# 2266| getImplicitDestructorCall(1): [DestructorCall] call to ~String
|
|
# 2266| Type = [VoidType] void
|
|
# 2266| ValueCategory = prvalue
|
|
# 2266| getQualifier(): [VariableAccess] s
|
|
# 2266| Type = [Struct] String
|
|
# 2266| ValueCategory = lvalue
|
|
# 2267| getChild(1): [Handler] <handler>
|
|
# 2267| getBlock(): [CatchBlock] { ... }
|
|
# 2268| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2268| getExpr(): [ThrowExpr] throw ...
|
|
# 2268| Type = [Struct] String
|
|
# 2268| ValueCategory = prvalue
|
|
# 2268| getExpr(): [ConstructorCall] call to String
|
|
# 2268| Type = [VoidType] void
|
|
# 2268| ValueCategory = prvalue
|
|
# 2268| getArgument(0): [VariableAccess] s
|
|
# 2268| Type = [PointerType] const char *
|
|
# 2268| ValueCategory = prvalue(load)
|
|
# 2270| getChild(2): [Handler] <handler>
|
|
# 2270| getBlock(): [CatchBlock] { ... }
|
|
# 2272| getChild(3): [Handler] <handler>
|
|
# 2272| getBlock(): [CatchAnyBlock] { ... }
|
|
# 2273| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2273| getExpr(): [ReThrowExpr] re-throw exception
|
|
# 2273| Type = [VoidType] void
|
|
# 2273| ValueCategory = prvalue
|
|
# 2275| getStmt(1): [ReturnStmt] return ...
|
|
# 2277| [TopLevelFunction] void IfDestructors(bool)
|
|
# 2277| <params>:
|
|
# 2277| getParameter(0): [Parameter] b
|
|
# 2277| Type = [BoolType] bool
|
|
# 2277| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2278| getStmt(0): [DeclStmt] declaration
|
|
# 2278| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s1
|
|
# 2278| Type = [Struct] String
|
|
# 2278| getVariable().getInitializer(): [Initializer] initializer for s1
|
|
# 2278| getExpr(): [ConstructorCall] call to String
|
|
# 2278| Type = [VoidType] void
|
|
# 2278| ValueCategory = prvalue
|
|
# 2279| getStmt(1): [IfStmt] if (...) ...
|
|
# 2279| getCondition(): [VariableAccess] b
|
|
# 2279| Type = [BoolType] bool
|
|
# 2279| ValueCategory = prvalue(load)
|
|
# 2279| getThen(): [BlockStmt] { ... }
|
|
# 2280| getStmt(0): [DeclStmt] declaration
|
|
# 2280| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s2
|
|
# 2280| Type = [Struct] String
|
|
# 2280| getVariable().getInitializer(): [Initializer] initializer for s2
|
|
# 2280| getExpr(): [ConstructorCall] call to String
|
|
# 2280| Type = [VoidType] void
|
|
# 2280| ValueCategory = prvalue
|
|
# 2281| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2281| Type = [VoidType] void
|
|
# 2281| ValueCategory = prvalue
|
|
# 2281| getQualifier(): [VariableAccess] s2
|
|
# 2281| Type = [Struct] String
|
|
# 2281| ValueCategory = lvalue
|
|
# 2281| getElse(): [BlockStmt] { ... }
|
|
# 2282| getStmt(0): [DeclStmt] declaration
|
|
# 2282| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s3
|
|
# 2282| Type = [Struct] String
|
|
# 2282| getVariable().getInitializer(): [Initializer] initializer for s3
|
|
# 2282| getExpr(): [ConstructorCall] call to String
|
|
# 2282| Type = [VoidType] void
|
|
# 2282| ValueCategory = prvalue
|
|
# 2283| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2283| Type = [VoidType] void
|
|
# 2283| ValueCategory = prvalue
|
|
# 2283| getQualifier(): [VariableAccess] s3
|
|
# 2283| Type = [Struct] String
|
|
# 2283| ValueCategory = lvalue
|
|
# 2284| getStmt(2): [DeclStmt] declaration
|
|
# 2284| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s4
|
|
# 2284| Type = [Struct] String
|
|
# 2284| getVariable().getInitializer(): [Initializer] initializer for s4
|
|
# 2284| getExpr(): [ConstructorCall] call to String
|
|
# 2284| Type = [VoidType] void
|
|
# 2284| ValueCategory = prvalue
|
|
# 2285| getStmt(3): [ReturnStmt] return ...
|
|
# 2285| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2285| Type = [VoidType] void
|
|
# 2285| ValueCategory = prvalue
|
|
# 2285| getQualifier(): [VariableAccess] s4
|
|
# 2285| Type = [Struct] String
|
|
# 2285| ValueCategory = lvalue
|
|
# 2285| getImplicitDestructorCall(1): [DestructorCall] call to ~String
|
|
# 2285| Type = [VoidType] void
|
|
# 2285| ValueCategory = prvalue
|
|
# 2285| getQualifier(): [VariableAccess] s1
|
|
# 2285| Type = [Struct] String
|
|
# 2285| ValueCategory = lvalue
|
|
# 2287| [TopLevelFunction] void ForDestructors()
|
|
# 2287| <params>:
|
|
# 2287| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2288| getStmt(0): [DeclStmt] declaration
|
|
# 2288| getDeclarationEntry(0): [VariableDeclarationEntry] definition of c
|
|
# 2288| Type = [PlainCharType] char
|
|
# 2288| getVariable().getInitializer(): [Initializer] initializer for c
|
|
# 2288| getExpr(): [CharLiteral] 97
|
|
# 2288| Type = [PlainCharType] char
|
|
# 2288| Value = [CharLiteral] 97
|
|
# 2288| ValueCategory = prvalue
|
|
# 2289| getStmt(1): [ForStmt] for(...;...;...) ...
|
|
# 2289| getInitialization(): [DeclStmt] declaration
|
|
# 2289| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2289| Type = [Struct] String
|
|
# 2289| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2289| getExpr(): [ConstructorCall] call to String
|
|
# 2289| Type = [VoidType] void
|
|
# 2289| ValueCategory = prvalue
|
|
# 2289| getArgument(0): hello
|
|
# 2289| Type = [ArrayType] const char[6]
|
|
# 2289| Value = [StringLiteral] "hello"
|
|
# 2289| ValueCategory = lvalue
|
|
# 2289| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 2289| Type = [PointerType] const char *
|
|
# 2289| ValueCategory = prvalue
|
|
# 2289| getCondition(): [NEExpr] ... != ...
|
|
# 2289| Type = [BoolType] bool
|
|
# 2289| ValueCategory = prvalue
|
|
# 2289| getLeftOperand(): [VariableAccess] c
|
|
# 2289| Type = [PlainCharType] char
|
|
# 2289| ValueCategory = prvalue(load)
|
|
# 2289| getRightOperand(): [Literal] 0
|
|
# 2289| Type = [IntType] int
|
|
# 2289| Value = [Literal] 0
|
|
# 2289| ValueCategory = prvalue
|
|
# 2289| getLeftOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2289| Conversion = [IntegralConversion] integral conversion
|
|
# 2289| Type = [IntType] int
|
|
# 2289| ValueCategory = prvalue
|
|
# 2289| getUpdate(): [AssignExpr] ... = ...
|
|
# 2289| Type = [PlainCharType] char
|
|
# 2289| ValueCategory = lvalue
|
|
# 2289| getLValue(): [VariableAccess] c
|
|
# 2289| Type = [PlainCharType] char
|
|
# 2289| ValueCategory = lvalue
|
|
# 2289| getRValue(): [FunctionCall] call to pop_back
|
|
# 2289| Type = [PlainCharType] char
|
|
# 2289| ValueCategory = prvalue
|
|
# 2289| getQualifier(): [VariableAccess] s
|
|
# 2289| Type = [Struct] String
|
|
# 2289| ValueCategory = lvalue
|
|
# 2289| getStmt(): [BlockStmt] { ... }
|
|
# 2290| getStmt(0): [DeclStmt] declaration
|
|
# 2290| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s2
|
|
# 2290| Type = [Struct] String
|
|
# 2290| getVariable().getInitializer(): [Initializer] initializer for s2
|
|
# 2290| getExpr(): [ConstructorCall] call to String
|
|
# 2290| Type = [VoidType] void
|
|
# 2290| ValueCategory = prvalue
|
|
# 2291| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2291| Type = [VoidType] void
|
|
# 2291| ValueCategory = prvalue
|
|
# 2291| getQualifier(): [VariableAccess] s2
|
|
# 2291| Type = [Struct] String
|
|
# 2291| ValueCategory = lvalue
|
|
# 2289| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2289| Type = [VoidType] void
|
|
# 2289| ValueCategory = prvalue
|
|
# 2289| getQualifier(): [VariableAccess] s
|
|
# 2289| Type = [Struct] String
|
|
# 2289| ValueCategory = lvalue
|
|
# 2293| getStmt(2): [RangeBasedForStmt] for(...:...) ...
|
|
# 2293| getChild(1): [DeclStmt] declaration
|
|
# 2293| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__range)
|
|
# 2293| Type = [RValueReferenceType] vector<String> &&
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__range)
|
|
# 2293| getExpr(): [ConstructorCall] call to vector
|
|
# 2293| Type = [VoidType] void
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getArgument(0): [ConstructorCall] call to String
|
|
# 2293| Type = [VoidType] void
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getArgument(0): hello
|
|
# 2293| Type = [ArrayType] const char[6]
|
|
# 2293| Value = [StringLiteral] "hello"
|
|
# 2293| ValueCategory = lvalue
|
|
# 2293| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 2293| Type = [PointerType] const char *
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2293| Type = [VoidType] void
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2293| Type = [Struct] String
|
|
# 2293| ValueCategory = xvalue
|
|
# 2293| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2293| Type = [Struct] String
|
|
# 2293| ValueCategory = lvalue
|
|
# 2293| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2293| Type = [LValueReferenceType] vector<String> &
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 2293| Type = [ClassTemplateInstantiation,Struct] vector<String>
|
|
# 2293| ValueCategory = xvalue
|
|
# 2293| getBeginEndDeclaration(): [DeclStmt] declaration
|
|
# 2293| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__begin)
|
|
# 2293| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__begin)
|
|
# 2293| getExpr(): [FunctionCall] call to begin
|
|
# 2293| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getQualifier(): [VariableAccess] (__range)
|
|
# 2293| Type = [RValueReferenceType] vector<String> &&
|
|
# 2293| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<String>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<String>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<String>
|
|
#-----| ValueCategory = lvalue
|
|
# 2293| getDeclarationEntry(1): [VariableDeclarationEntry] declaration of (__end)
|
|
# 2293| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__end)
|
|
# 2293| getExpr(): [FunctionCall] call to end
|
|
# 2293| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getQualifier(): [VariableAccess] (__range)
|
|
# 2293| Type = [RValueReferenceType] vector<String> &&
|
|
# 2293| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<String>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<String>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<String>
|
|
#-----| ValueCategory = lvalue
|
|
# 2293| getCondition(): [FunctionCall] call to operator!=
|
|
# 2293| Type = [BoolType] bool
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getQualifier(): [VariableAccess] (__begin)
|
|
# 2293| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2293| ValueCategory = lvalue
|
|
# 2293| getArgument(0): [ConstructorCall] call to iterator
|
|
# 2293| Type = [VoidType] void
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getArgument(0): [VariableAccess] (__end)
|
|
# 2293| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2293| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &> &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [CStyleCast] (const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2293| getUpdate(): [FunctionCall] call to operator++
|
|
# 2293| Type = [LValueReferenceType] iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &> &
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getQualifier(): [VariableAccess] (__begin)
|
|
# 2293| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2293| ValueCategory = lvalue
|
|
# 2293| getChild(5): [DeclStmt] declaration
|
|
# 2293| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2293| Type = [Struct] String
|
|
# 2293| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2293| getExpr(): [ConstructorCall] call to String
|
|
# 2293| Type = [VoidType] void
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getArgument(0): [OverloadedPointerDereferenceExpr] call to operator*
|
|
# 2293| Type = [LValueReferenceType] String &
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getQualifier(): [VariableAccess] (__begin)
|
|
# 2293| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2293| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2293| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2293| Type = [LValueReferenceType] const String &
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getExpr(): [CStyleCast] (const String)...
|
|
# 2293| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 2293| Type = [SpecifiedType] const String
|
|
# 2293| ValueCategory = lvalue
|
|
# 2293| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2293| Type = [Struct] String
|
|
# 2293| ValueCategory = lvalue
|
|
# 2293| getStmt(): [BlockStmt] { ... }
|
|
# 2294| getStmt(0): [DeclStmt] declaration
|
|
# 2294| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s2
|
|
# 2294| Type = [Struct] String
|
|
# 2294| getVariable().getInitializer(): [Initializer] initializer for s2
|
|
# 2294| getExpr(): [ConstructorCall] call to String
|
|
# 2294| Type = [VoidType] void
|
|
# 2294| ValueCategory = prvalue
|
|
# 2295| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2295| Type = [VoidType] void
|
|
# 2295| ValueCategory = prvalue
|
|
# 2295| getQualifier(): [VariableAccess] s2
|
|
# 2295| Type = [Struct] String
|
|
# 2295| ValueCategory = lvalue
|
|
# 2293| getImplicitDestructorCall(1): [DestructorCall] call to ~String
|
|
# 2293| Type = [VoidType] void
|
|
# 2293| ValueCategory = prvalue
|
|
# 2293| getQualifier(): [VariableAccess] s
|
|
# 2293| Type = [Struct] String
|
|
# 2293| ValueCategory = lvalue
|
|
# 2293| getUpdate().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2293| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, String, ptrdiff_t, String *, String &>
|
|
# 2293| ValueCategory = lvalue
|
|
# 2297| getStmt(3): [ForStmt] for(...;...;...) ...
|
|
# 2297| getInitialization(): [DeclStmt] declaration
|
|
# 2297| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2297| Type = [Struct] String
|
|
# 2297| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2297| getExpr(): [ConstructorCall] call to String
|
|
# 2297| Type = [VoidType] void
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getArgument(0): hello
|
|
# 2297| Type = [ArrayType] const char[6]
|
|
# 2297| Value = [StringLiteral] "hello"
|
|
# 2297| ValueCategory = lvalue
|
|
# 2297| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 2297| Type = [PointerType] const char *
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getDeclarationEntry(1): [VariableDeclarationEntry] definition of s2
|
|
# 2297| Type = [Struct] String
|
|
# 2297| getVariable().getInitializer(): [Initializer] initializer for s2
|
|
# 2297| getExpr(): [ConstructorCall] call to String
|
|
# 2297| Type = [VoidType] void
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getArgument(0): world
|
|
# 2297| Type = [ArrayType] const char[6]
|
|
# 2297| Value = [StringLiteral] "world"
|
|
# 2297| ValueCategory = lvalue
|
|
# 2297| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 2297| Type = [PointerType] const char *
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getCondition(): [NEExpr] ... != ...
|
|
# 2297| Type = [BoolType] bool
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getLeftOperand(): [VariableAccess] c
|
|
# 2297| Type = [PlainCharType] char
|
|
# 2297| ValueCategory = prvalue(load)
|
|
# 2297| getRightOperand(): [Literal] 0
|
|
# 2297| Type = [IntType] int
|
|
# 2297| Value = [Literal] 0
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getLeftOperand().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2297| Conversion = [IntegralConversion] integral conversion
|
|
# 2297| Type = [IntType] int
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getUpdate(): [AssignExpr] ... = ...
|
|
# 2297| Type = [PlainCharType] char
|
|
# 2297| ValueCategory = lvalue
|
|
# 2297| getLValue(): [VariableAccess] c
|
|
# 2297| Type = [PlainCharType] char
|
|
# 2297| ValueCategory = lvalue
|
|
# 2297| getRValue(): [FunctionCall] call to pop_back
|
|
# 2297| Type = [PlainCharType] char
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getQualifier(): [VariableAccess] s
|
|
# 2297| Type = [Struct] String
|
|
# 2297| ValueCategory = lvalue
|
|
# 2297| getStmt(): [BlockStmt] { ... }
|
|
# 2298| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2298| getExpr(): [AssignExpr] ... = ...
|
|
# 2298| Type = [PlainCharType] char
|
|
# 2298| ValueCategory = lvalue
|
|
# 2298| getLValue(): [VariableAccess] c
|
|
# 2298| Type = [PlainCharType] char
|
|
# 2298| ValueCategory = lvalue
|
|
# 2298| getRValue(): [Literal] 0
|
|
# 2298| Type = [IntType] int
|
|
# 2298| Value = [Literal] 0
|
|
# 2298| ValueCategory = prvalue
|
|
# 2298| getRValue().getFullyConverted(): [CStyleCast] (char)...
|
|
# 2298| Conversion = [IntegralConversion] integral conversion
|
|
# 2298| Type = [PlainCharType] char
|
|
# 2298| Value = [CStyleCast] 0
|
|
# 2298| ValueCategory = prvalue
|
|
# 2297| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2297| Type = [VoidType] void
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getQualifier(): [VariableAccess] s2
|
|
# 2297| Type = [Struct] String
|
|
# 2297| ValueCategory = lvalue
|
|
# 2297| getImplicitDestructorCall(1): [DestructorCall] call to ~String
|
|
# 2297| Type = [VoidType] void
|
|
# 2297| ValueCategory = prvalue
|
|
# 2297| getQualifier(): [VariableAccess] s
|
|
# 2297| Type = [Struct] String
|
|
# 2297| ValueCategory = lvalue
|
|
# 2300| getStmt(4): [ReturnStmt] return ...
|
|
# 2302| [TopLevelFunction] void IfDestructors2(bool)
|
|
# 2302| <params>:
|
|
# 2302| getParameter(0): [Parameter] b
|
|
# 2302| Type = [BoolType] bool
|
|
# 2302| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2303| getStmt(0): [IfStmt] if (...) ...
|
|
# 2303| getInitialization(): [DeclStmt] declaration
|
|
# 2303| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2303| Type = [Struct] String
|
|
# 2303| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2303| getExpr(): [ConstructorCall] call to String
|
|
# 2303| Type = [VoidType] void
|
|
# 2303| ValueCategory = prvalue
|
|
# 2303| getArgument(0): hello
|
|
# 2303| Type = [ArrayType] const char[6]
|
|
# 2303| Value = [StringLiteral] "hello"
|
|
# 2303| ValueCategory = lvalue
|
|
# 2303| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 2303| Type = [PointerType] const char *
|
|
# 2303| ValueCategory = prvalue
|
|
# 2303| getCondition(): [VariableAccess] b
|
|
# 2303| Type = [BoolType] bool
|
|
# 2303| ValueCategory = prvalue(load)
|
|
# 2303| getThen(): [BlockStmt] { ... }
|
|
# 2304| getStmt(0): [DeclStmt] declaration
|
|
# 2304| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2304| Type = [IntType] int
|
|
# 2304| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2304| getExpr(): [Literal] 0
|
|
# 2304| Type = [IntType] int
|
|
# 2304| Value = [Literal] 0
|
|
# 2304| ValueCategory = prvalue
|
|
# 2305| getElse(): [BlockStmt] { ... }
|
|
# 2306| getStmt(0): [DeclStmt] declaration
|
|
# 2306| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 2306| Type = [IntType] int
|
|
# 2306| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 2306| getExpr(): [Literal] 0
|
|
# 2306| Type = [IntType] int
|
|
# 2306| Value = [Literal] 0
|
|
# 2306| ValueCategory = prvalue
|
|
# 2307| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2307| Type = [VoidType] void
|
|
# 2307| ValueCategory = prvalue
|
|
# 2307| getQualifier(): [VariableAccess] s
|
|
# 2307| Type = [Struct] String
|
|
# 2307| ValueCategory = lvalue
|
|
# 2308| getStmt(1): [ReturnStmt] return ...
|
|
# 2310| [CopyAssignmentOperator] Bool& Bool::operator=(Bool const&)
|
|
# 2310| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Bool &
|
|
# 2310| [CopyConstructor] void Bool::Bool(Bool const&)
|
|
# 2310| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Bool &
|
|
# 2312| [Constructor] void Bool::Bool(bool)
|
|
# 2312| <params>:
|
|
# 2312| getParameter(0): [Parameter] b_
|
|
# 2312| Type = [BoolType] bool
|
|
# 2313| [ConversionOperator] bool Bool::operator bool()
|
|
# 2313| <params>:
|
|
# 2314| [Destructor] void Bool::~Bool()
|
|
# 2314| <params>:
|
|
# 2317| [TopLevelFunction] void IfDestructors3(bool)
|
|
# 2317| <params>:
|
|
# 2317| getParameter(0): [Parameter] b
|
|
# 2317| Type = [BoolType] bool
|
|
# 2317| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2318| getStmt(0): [IfStmt] if (...) ...
|
|
# 2318| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 2318| Type = [BoolType] bool
|
|
# 2318| ValueCategory = prvalue
|
|
# 2318| getChild(0): [FunctionCall] call to operator bool
|
|
# 2318| Type = [BoolType] bool
|
|
# 2318| ValueCategory = prvalue
|
|
# 2318| getQualifier(): [VariableAccess] B
|
|
# 2318| Type = [Class] Bool
|
|
# 2318| ValueCategory = prvalue(load)
|
|
# 2318| getInitializingExpr(): [ConstructorCall] call to Bool
|
|
# 2318| Type = [VoidType] void
|
|
# 2318| ValueCategory = prvalue
|
|
# 2318| getArgument(0): [VariableAccess] b
|
|
# 2318| Type = [BoolType] bool
|
|
# 2318| ValueCategory = prvalue(load)
|
|
# 2318| getThen(): [BlockStmt] { ... }
|
|
# 2319| getStmt(0): [DeclStmt] declaration
|
|
# 2319| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s1
|
|
# 2319| Type = [Struct] String
|
|
# 2319| getVariable().getInitializer(): [Initializer] initializer for s1
|
|
# 2319| getExpr(): [ConstructorCall] call to String
|
|
# 2319| Type = [VoidType] void
|
|
# 2319| ValueCategory = prvalue
|
|
# 2320| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2320| Type = [VoidType] void
|
|
# 2320| ValueCategory = prvalue
|
|
# 2320| getQualifier(): [VariableAccess] s1
|
|
# 2320| Type = [Struct] String
|
|
# 2320| ValueCategory = lvalue
|
|
# 2320| getElse(): [BlockStmt] { ... }
|
|
# 2321| getStmt(0): [DeclStmt] declaration
|
|
# 2321| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s2
|
|
# 2321| Type = [Struct] String
|
|
# 2321| getVariable().getInitializer(): [Initializer] initializer for s2
|
|
# 2321| getExpr(): [ConstructorCall] call to String
|
|
# 2321| Type = [VoidType] void
|
|
# 2321| ValueCategory = prvalue
|
|
# 2322| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2322| Type = [VoidType] void
|
|
# 2322| ValueCategory = prvalue
|
|
# 2322| getQualifier(): [VariableAccess] s2
|
|
# 2322| Type = [Struct] String
|
|
# 2322| ValueCategory = lvalue
|
|
# 2322| getImplicitDestructorCall(0): [DestructorCall] call to ~Bool
|
|
# 2322| Type = [VoidType] void
|
|
# 2322| ValueCategory = prvalue
|
|
# 2322| getQualifier(): [VariableAccess] B
|
|
# 2322| Type = [Class] Bool
|
|
# 2322| ValueCategory = lvalue
|
|
# 2323| getStmt(1): [ReturnStmt] return ...
|
|
# 2325| [TopLevelFunction] void WhileLoopDestructors(bool)
|
|
# 2325| <params>:
|
|
# 2325| getParameter(0): [Parameter] b
|
|
# 2325| Type = [BoolType] bool
|
|
# 2325| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2326| getStmt(0): [BlockStmt] { ... }
|
|
# 2327| getStmt(0): [DeclStmt] declaration
|
|
# 2327| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2327| Type = [Struct] String
|
|
# 2327| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2327| getExpr(): [ConstructorCall] call to String
|
|
# 2327| Type = [VoidType] void
|
|
# 2327| ValueCategory = prvalue
|
|
# 2328| getStmt(1): [WhileStmt] while (...) ...
|
|
# 2328| getCondition(): [VariableAccess] b
|
|
# 2328| Type = [BoolType] bool
|
|
# 2328| ValueCategory = prvalue(load)
|
|
# 2328| getStmt(): [BlockStmt] { ... }
|
|
# 2329| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2329| getExpr(): [AssignExpr] ... = ...
|
|
# 2329| Type = [BoolType] bool
|
|
# 2329| ValueCategory = lvalue
|
|
# 2329| getLValue(): [VariableAccess] b
|
|
# 2329| Type = [BoolType] bool
|
|
# 2329| ValueCategory = lvalue
|
|
# 2329| getRValue(): [Literal] 0
|
|
# 2329| Type = [BoolType] bool
|
|
# 2329| Value = [Literal] 0
|
|
# 2329| ValueCategory = prvalue
|
|
# 2331| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2331| Type = [VoidType] void
|
|
# 2331| ValueCategory = prvalue
|
|
# 2331| getQualifier(): [VariableAccess] s
|
|
# 2331| Type = [Struct] String
|
|
# 2331| ValueCategory = lvalue
|
|
# 2333| getStmt(1): [BlockStmt] { ... }
|
|
# 2334| getStmt(0): [WhileStmt] while (...) ...
|
|
# 2334| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 2334| Type = [BoolType] bool
|
|
# 2334| ValueCategory = prvalue
|
|
# 2334| getChild(0): [FunctionCall] call to operator bool
|
|
# 2334| Type = [BoolType] bool
|
|
# 2334| ValueCategory = prvalue
|
|
# 2334| getQualifier(): [VariableAccess] B
|
|
# 2334| Type = [Class] Bool
|
|
# 2334| ValueCategory = prvalue(load)
|
|
# 2334| getInitializingExpr(): [ConstructorCall] call to Bool
|
|
# 2334| Type = [VoidType] void
|
|
# 2334| ValueCategory = prvalue
|
|
# 2334| getArgument(0): [VariableAccess] b
|
|
# 2334| Type = [BoolType] bool
|
|
# 2334| ValueCategory = prvalue(load)
|
|
# 2334| getStmt(): [BlockStmt] { ... }
|
|
# 2335| getStmt(0): [ExprStmt] ExprStmt
|
|
# 2335| getExpr(): [AssignExpr] ... = ...
|
|
# 2335| Type = [BoolType] bool
|
|
# 2335| ValueCategory = lvalue
|
|
# 2335| getLValue(): [VariableAccess] b
|
|
# 2335| Type = [BoolType] bool
|
|
# 2335| ValueCategory = lvalue
|
|
# 2335| getRValue(): [Literal] 0
|
|
# 2335| Type = [BoolType] bool
|
|
# 2335| Value = [Literal] 0
|
|
# 2335| ValueCategory = prvalue
|
|
# 2336| getImplicitDestructorCall(0): [DestructorCall] call to ~Bool
|
|
# 2336| Type = [VoidType] void
|
|
# 2336| ValueCategory = prvalue
|
|
# 2336| getQualifier(): [VariableAccess] B
|
|
# 2336| Type = [Class] Bool
|
|
# 2336| ValueCategory = lvalue
|
|
# 2336| getImplicitDestructorCall(0): [DestructorCall] call to ~Bool
|
|
# 2336| Type = [VoidType] void
|
|
# 2336| ValueCategory = prvalue
|
|
# 2336| getQualifier(): [VariableAccess] B
|
|
# 2336| Type = [Class] Bool
|
|
# 2336| ValueCategory = lvalue
|
|
# 2338| getStmt(2): [ReturnStmt] return ...
|
|
# 2340| [TopLevelFunction] void VoidFunc()
|
|
# 2340| <params>:
|
|
# 2340| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2340| getStmt(0): [ReturnStmt] return ...
|
|
# 2342| [TopLevelFunction] void IfReturnDestructors(bool)
|
|
# 2342| <params>:
|
|
# 2342| getParameter(0): [Parameter] b
|
|
# 2342| Type = [BoolType] bool
|
|
# 2342| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2343| getStmt(0): [DeclStmt] declaration
|
|
# 2343| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2343| Type = [Struct] String
|
|
# 2343| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2343| getExpr(): [ConstructorCall] call to String
|
|
# 2343| Type = [VoidType] void
|
|
# 2343| ValueCategory = prvalue
|
|
# 2344| getStmt(1): [IfStmt] if (...) ...
|
|
# 2344| getCondition(): [VariableAccess] b
|
|
# 2344| Type = [BoolType] bool
|
|
# 2344| ValueCategory = prvalue(load)
|
|
# 2344| getThen(): [BlockStmt] { ... }
|
|
# 2345| getStmt(0): [ReturnStmt] return ...
|
|
# 2351| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2351| Type = [VoidType] void
|
|
# 2351| ValueCategory = prvalue
|
|
# 2351| getQualifier(): [VariableAccess] s
|
|
# 2351| Type = [Struct] String
|
|
# 2351| ValueCategory = lvalue
|
|
# 2347| getStmt(2): [IfStmt] if (...) ...
|
|
# 2347| getCondition(): [VariableAccess] b
|
|
# 2347| Type = [BoolType] bool
|
|
# 2347| ValueCategory = prvalue(load)
|
|
# 2347| getThen(): [BlockStmt] { ... }
|
|
# 2348| getStmt(0): [ReturnStmt] return ...
|
|
# 2348| getExpr(): [FunctionCall] call to VoidFunc
|
|
# 2348| Type = [VoidType] void
|
|
# 2348| ValueCategory = prvalue
|
|
# 2351| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2351| Type = [VoidType] void
|
|
# 2351| ValueCategory = prvalue
|
|
# 2351| getQualifier(): [VariableAccess] s
|
|
# 2351| Type = [Struct] String
|
|
# 2351| ValueCategory = lvalue
|
|
# 2350| getStmt(3): [ExprStmt] ExprStmt
|
|
# 2350| getExpr(): [VariableAccess] s
|
|
# 2350| Type = [Struct] String
|
|
# 2350| ValueCategory = lvalue
|
|
# 2351| getStmt(4): [ReturnStmt] return ...
|
|
# 2351| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2351| Type = [VoidType] void
|
|
# 2351| ValueCategory = prvalue
|
|
# 2351| getQualifier(): [VariableAccess] s
|
|
# 2351| Type = [Struct] String
|
|
# 2351| ValueCategory = lvalue
|
|
# 2353| [TopLevelFunction] int IfReturnDestructors3(bool)
|
|
# 2353| <params>:
|
|
# 2353| getParameter(0): [Parameter] b
|
|
# 2353| Type = [BoolType] bool
|
|
# 2353| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2354| getStmt(0): [DeclStmt] declaration
|
|
# 2354| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2354| Type = [Struct] String
|
|
# 2354| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2354| getExpr(): [ConstructorCall] call to String
|
|
# 2354| Type = [VoidType] void
|
|
# 2354| ValueCategory = prvalue
|
|
# 2355| getStmt(1): [IfStmt] if (...) ...
|
|
# 2355| getCondition(): [VariableAccess] b
|
|
# 2355| Type = [BoolType] bool
|
|
# 2355| ValueCategory = prvalue(load)
|
|
# 2355| getThen(): [BlockStmt] { ... }
|
|
# 2356| getStmt(0): [ReturnStmt] return ...
|
|
# 2356| getExpr(): [Literal] 1
|
|
# 2356| Type = [IntType] int
|
|
# 2356| Value = [Literal] 1
|
|
# 2356| ValueCategory = prvalue
|
|
# 2359| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2359| Type = [VoidType] void
|
|
# 2359| ValueCategory = prvalue
|
|
# 2359| getQualifier(): [VariableAccess] s
|
|
# 2359| Type = [Struct] String
|
|
# 2359| ValueCategory = lvalue
|
|
# 2358| getStmt(2): [ReturnStmt] return ...
|
|
# 2358| getExpr(): [Literal] 0
|
|
# 2358| Type = [IntType] int
|
|
# 2358| Value = [Literal] 0
|
|
# 2358| ValueCategory = prvalue
|
|
# 2359| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2359| Type = [VoidType] void
|
|
# 2359| ValueCategory = prvalue
|
|
# 2359| getQualifier(): [VariableAccess] s
|
|
# 2359| Type = [Struct] String
|
|
# 2359| ValueCategory = lvalue
|
|
# 2361| [TopLevelFunction] void VoidReturnDestructors()
|
|
# 2361| <params>:
|
|
# 2361| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2362| getStmt(0): [DeclStmt] declaration
|
|
# 2362| getDeclarationEntry(0): [VariableDeclarationEntry] definition of s
|
|
# 2362| Type = [Struct] String
|
|
# 2362| getVariable().getInitializer(): [Initializer] initializer for s
|
|
# 2362| getExpr(): [ConstructorCall] call to String
|
|
# 2362| Type = [VoidType] void
|
|
# 2362| ValueCategory = prvalue
|
|
# 2363| getStmt(1): [ReturnStmt] return ...
|
|
# 2363| getExpr(): [FunctionCall] call to VoidFunc
|
|
# 2363| Type = [VoidType] void
|
|
# 2363| ValueCategory = prvalue
|
|
# 2364| getImplicitDestructorCall(0): [DestructorCall] call to ~String
|
|
# 2364| Type = [VoidType] void
|
|
# 2364| ValueCategory = prvalue
|
|
# 2364| getQualifier(): [VariableAccess] s
|
|
# 2364| Type = [Struct] String
|
|
# 2364| ValueCategory = lvalue
|
|
# 2367| [CopyAssignmentOperator] return_routine_type::HasVoidToIntFunc& return_routine_type::HasVoidToIntFunc::operator=(return_routine_type::HasVoidToIntFunc const&)
|
|
# 2367| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const HasVoidToIntFunc &
|
|
# 2367| [MoveAssignmentOperator] return_routine_type::HasVoidToIntFunc& return_routine_type::HasVoidToIntFunc::operator=(return_routine_type::HasVoidToIntFunc&&)
|
|
# 2367| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] HasVoidToIntFunc &&
|
|
# 2369| [MemberFunction] void return_routine_type::HasVoidToIntFunc::VoidToInt(int)
|
|
# 2369| <params>:
|
|
# 2369| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 2369| Type = [IntType] int
|
|
# 2374| [TopLevelFunction] return_routine_type::VoidToIntMemberFunc return_routine_type::GetVoidToIntFunc()
|
|
# 2374| <params>:
|
|
# 2375| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2376| getStmt(0): [ReturnStmt] return ...
|
|
# 2376| getExpr(): [FunctionAccess] VoidToInt
|
|
# 2376| Type = [RoutineType] ..()(..)
|
|
# 2376| ValueCategory = prvalue
|
|
# 2381| [TopLevelFunction] int small_operation_should_not_be_constant_folded()
|
|
# 2381| <params>:
|
|
# 2381| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2382| getStmt(0): [ReturnStmt] return ...
|
|
# 2382| getExpr(): [BitwiseXorExpr] ... ^ ...
|
|
# 2382| Type = [IntType] int
|
|
# 2382| Value = [BitwiseXorExpr] 3
|
|
# 2382| ValueCategory = prvalue
|
|
# 2382| getLeftOperand(): [Literal] 1
|
|
# 2382| Type = [IntType] int
|
|
# 2382| Value = [Literal] 1
|
|
# 2382| ValueCategory = prvalue
|
|
# 2382| getRightOperand(): [Literal] 2
|
|
# 2382| Type = [IntType] int
|
|
# 2382| Value = [Literal] 2
|
|
# 2382| ValueCategory = prvalue
|
|
# 2392| [TopLevelFunction] int large_operation_should_be_constant_folded()
|
|
# 2392| <params>:
|
|
# 2392| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2393| getStmt(0): [ReturnStmt] return ...
|
|
# 2393| getExpr(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [BitwiseXorExpr] ... ^ ...
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [BitwiseXorExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand(): [Literal] 1
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [Literal] 1
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getLeftOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getRightOperand().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2393| getExpr().getFullyConverted(): [ParenthesisExpr] (...)
|
|
# 2393| Type = [IntType] int
|
|
# 2393| Value = [ParenthesisExpr] 0
|
|
# 2393| ValueCategory = prvalue
|
|
# 2396| [TopLevelFunction] void initialization_with_temp_destructor()
|
|
# 2396| <params>:
|
|
# 2396| getEntryPoint(): [BlockStmt] { ... }
|
|
# 2397| getStmt(0): [IfStmt] if (...) ...
|
|
# 2397| getCondition(): [ConditionDeclExpr] (condition decl)
|
|
# 2397| Type = [BoolType] bool
|
|
# 2397| ValueCategory = prvalue
|
|
# 2397| getVariableAccess(): [VariableAccess] x
|
|
# 2397| Type = [PlainCharType] char
|
|
# 2397| ValueCategory = prvalue(load)
|
|
# 2397| getInitializingExpr(): [FunctionCall] call to get_x
|
|
# 2397| Type = [PlainCharType] char
|
|
# 2397| ValueCategory = prvalue
|
|
# 2397| getQualifier(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2397| Type = [VoidType] void
|
|
# 2397| ValueCategory = prvalue
|
|
# 2397| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2397| Type = [VoidType] void
|
|
# 2397| ValueCategory = prvalue
|
|
# 2397| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2397| Type = [Class] ClassWithDestructor
|
|
# 2397| ValueCategory = xvalue
|
|
# 2397| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2397| Type = [Class] ClassWithDestructor
|
|
# 2397| ValueCategory = prvalue(load)
|
|
# 2397| getVariableAccess().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 2397| Conversion = [BoolConversion] conversion to bool
|
|
# 2397| Type = [BoolType] bool
|
|
# 2397| ValueCategory = prvalue
|
|
# 2398| getThen(): [ExprStmt] ExprStmt
|
|
# 2398| getExpr(): [PostfixIncrExpr] ... ++
|
|
# 2398| Type = [PlainCharType] char
|
|
# 2398| ValueCategory = prvalue
|
|
# 2398| getOperand(): [VariableAccess] x
|
|
# 2398| Type = [PlainCharType] char
|
|
# 2398| ValueCategory = lvalue
|
|
# 2400| getStmt(1): [IfStmt] if (...) ...
|
|
# 2400| getInitialization(): [DeclStmt] declaration
|
|
# 2400| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2400| Type = [PlainCharType] char
|
|
# 2400| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2400| getExpr(): [FunctionCall] call to get_x
|
|
# 2400| Type = [PlainCharType] char
|
|
# 2400| ValueCategory = prvalue
|
|
# 2400| getQualifier(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2400| Type = [VoidType] void
|
|
# 2400| ValueCategory = prvalue
|
|
# 2400| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2400| Type = [Class] ClassWithDestructor
|
|
# 2400| ValueCategory = prvalue(load)
|
|
# 2400| getCondition(): [VariableAccess] x
|
|
# 2400| Type = [PlainCharType] char
|
|
# 2400| ValueCategory = prvalue(load)
|
|
# 2401| getThen(): [ExprStmt] ExprStmt
|
|
# 2401| getExpr(): [PostfixIncrExpr] ... ++
|
|
# 2401| Type = [PlainCharType] char
|
|
# 2401| ValueCategory = prvalue
|
|
# 2401| getOperand(): [VariableAccess] x
|
|
# 2401| Type = [PlainCharType] char
|
|
# 2401| ValueCategory = lvalue
|
|
# 2400| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 2400| Conversion = [BoolConversion] conversion to bool
|
|
# 2400| Type = [BoolType] bool
|
|
# 2400| ValueCategory = prvalue
|
|
# 2403| getStmt(2): [ConstexprIfStmt] if constexpr (...) ...
|
|
# 2403| getInitialization(): [DeclStmt] declaration
|
|
# 2403| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2403| Type = [PlainCharType] char
|
|
# 2403| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2403| getExpr(): [FunctionCall] call to get_x
|
|
# 2403| Type = [PlainCharType] char
|
|
# 2403| ValueCategory = prvalue
|
|
# 2403| getQualifier(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2403| Type = [VoidType] void
|
|
# 2403| ValueCategory = prvalue
|
|
# 2403| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2403| Type = [Class] ClassWithDestructor
|
|
# 2403| ValueCategory = prvalue(load)
|
|
# 2403| getCondition(): [VariableAccess] initialization_with_destructor_bool
|
|
# 2403| Type = [BoolType] bool
|
|
# 2403| Value = [VariableAccess] 1
|
|
# 2403| ValueCategory = prvalue(load)
|
|
# 2404| getThen(): [ExprStmt] ExprStmt
|
|
# 2404| getExpr(): [PostfixIncrExpr] ... ++
|
|
# 2404| Type = [PlainCharType] char
|
|
# 2404| ValueCategory = prvalue
|
|
# 2404| getOperand(): [VariableAccess] x
|
|
# 2404| Type = [PlainCharType] char
|
|
# 2404| ValueCategory = lvalue
|
|
# 2406| getStmt(3): [SwitchStmt] switch (...) ...
|
|
# 2406| getExpr(): [ConditionDeclExpr] (condition decl)
|
|
# 2406| Type = [IntType] int
|
|
# 2406| ValueCategory = prvalue
|
|
# 2406| getVariableAccess(): [VariableAccess] x
|
|
# 2406| Type = [PlainCharType] char
|
|
# 2406| ValueCategory = prvalue(load)
|
|
# 2406| getInitializingExpr(): [FunctionCall] call to get_x
|
|
# 2406| Type = [PlainCharType] char
|
|
# 2406| ValueCategory = prvalue
|
|
# 2406| getQualifier(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2406| Type = [VoidType] void
|
|
# 2406| ValueCategory = prvalue
|
|
# 2406| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2406| Type = [VoidType] void
|
|
# 2406| ValueCategory = prvalue
|
|
# 2406| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2406| Type = [Class] ClassWithDestructor
|
|
# 2406| ValueCategory = xvalue
|
|
# 2406| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2406| Type = [Class] ClassWithDestructor
|
|
# 2406| ValueCategory = prvalue(load)
|
|
# 2406| getVariableAccess().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2406| Conversion = [IntegralConversion] integral conversion
|
|
# 2406| Type = [IntType] int
|
|
# 2406| ValueCategory = prvalue
|
|
# 2406| getStmt(): [BlockStmt] { ... }
|
|
# 2407| getStmt(0): [SwitchCase] case ...:
|
|
# 2407| getExpr(): [CharLiteral] 97
|
|
# 2407| Type = [PlainCharType] char
|
|
# 2407| Value = [CharLiteral] 97
|
|
# 2407| ValueCategory = prvalue
|
|
# 2407| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2407| Conversion = [IntegralConversion] integral conversion
|
|
# 2407| Type = [IntType] int
|
|
# 2407| Value = [CStyleCast] 97
|
|
# 2407| ValueCategory = prvalue
|
|
# 2408| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2408| getExpr(): [PostfixIncrExpr] ... ++
|
|
# 2408| Type = [PlainCharType] char
|
|
# 2408| ValueCategory = prvalue
|
|
# 2408| getOperand(): [VariableAccess] x
|
|
# 2408| Type = [PlainCharType] char
|
|
# 2408| ValueCategory = lvalue
|
|
# 2411| getStmt(4): [SwitchStmt] switch (...) ...
|
|
# 2411| getInitialization(): [DeclStmt] declaration
|
|
# 2411| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2411| Type = [PlainCharType] char
|
|
# 2411| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2411| getExpr(): [FunctionCall] call to get_x
|
|
# 2411| Type = [PlainCharType] char
|
|
# 2411| ValueCategory = prvalue
|
|
# 2411| getQualifier(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2411| Type = [VoidType] void
|
|
# 2411| ValueCategory = prvalue
|
|
# 2411| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2411| Type = [Class] ClassWithDestructor
|
|
# 2411| ValueCategory = prvalue(load)
|
|
# 2411| getExpr(): [VariableAccess] x
|
|
# 2411| Type = [PlainCharType] char
|
|
# 2411| ValueCategory = prvalue(load)
|
|
# 2411| getStmt(): [BlockStmt] { ... }
|
|
# 2412| getStmt(0): [SwitchCase] case ...:
|
|
# 2412| getExpr(): [CharLiteral] 97
|
|
# 2412| Type = [PlainCharType] char
|
|
# 2412| Value = [CharLiteral] 97
|
|
# 2412| ValueCategory = prvalue
|
|
# 2412| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2412| Conversion = [IntegralConversion] integral conversion
|
|
# 2412| Type = [IntType] int
|
|
# 2412| Value = [CStyleCast] 97
|
|
# 2412| ValueCategory = prvalue
|
|
# 2413| getStmt(1): [ExprStmt] ExprStmt
|
|
# 2413| getExpr(): [PostfixIncrExpr] ... ++
|
|
# 2413| Type = [PlainCharType] char
|
|
# 2413| ValueCategory = prvalue
|
|
# 2413| getOperand(): [VariableAccess] x
|
|
# 2413| Type = [PlainCharType] char
|
|
# 2413| ValueCategory = lvalue
|
|
# 2411| getExpr().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2411| Conversion = [IntegralConversion] integral conversion
|
|
# 2411| Type = [IntType] int
|
|
# 2411| ValueCategory = prvalue
|
|
# 2416| getStmt(5): [RangeBasedForStmt] for(...:...) ...
|
|
# 2416| getInitialization(): [DeclStmt] declaration
|
|
# 2416| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 2416| Type = [PlainCharType] char
|
|
# 2416| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 2416| getExpr(): [FunctionCall] call to get_x
|
|
# 2416| Type = [PlainCharType] char
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getQualifier(): [ConstructorCall] call to ClassWithDestructor
|
|
# 2416| Type = [VoidType] void
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getImplicitDestructorCall(0): [DestructorCall] call to ~ClassWithDestructor
|
|
# 2416| Type = [VoidType] void
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 2416| Type = [Class] ClassWithDestructor
|
|
# 2416| ValueCategory = xvalue
|
|
# 2416| getQualifier().getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 2416| Type = [Class] ClassWithDestructor
|
|
# 2416| ValueCategory = prvalue(load)
|
|
# 2416| getChild(1): [DeclStmt] declaration
|
|
# 2416| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__range)
|
|
# 2416| Type = [RValueReferenceType] vector<char> &&
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__range)
|
|
# 2416| getExpr(): [ConstructorCall] call to vector
|
|
# 2416| Type = [VoidType] void
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getArgument(0): [VariableAccess] x
|
|
# 2416| Type = [PlainCharType] char
|
|
# 2416| ValueCategory = prvalue(load)
|
|
# 2416| getExpr().getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 2416| Type = [LValueReferenceType] vector<char> &
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getExpr(): [TemporaryObjectExpr] temporary object
|
|
# 2416| Type = [ClassTemplateInstantiation,Struct] vector<char>
|
|
# 2416| ValueCategory = xvalue
|
|
# 2416| getBeginEndDeclaration(): [DeclStmt] declaration
|
|
# 2416| getDeclarationEntry(0): [VariableDeclarationEntry] declaration of (__begin)
|
|
# 2416| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__begin)
|
|
# 2416| getExpr(): [FunctionCall] call to begin
|
|
# 2416| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getQualifier(): [VariableAccess] (__range)
|
|
# 2416| Type = [RValueReferenceType] vector<char> &&
|
|
# 2416| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<char>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<char>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<char>
|
|
#-----| ValueCategory = lvalue
|
|
# 2416| getDeclarationEntry(1): [VariableDeclarationEntry] declaration of (__end)
|
|
# 2416| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
#-----| getVariable().getInitializer(): [Initializer] initializer for (__end)
|
|
# 2416| getExpr(): [FunctionCall] call to end
|
|
# 2416| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getQualifier(): [VariableAccess] (__range)
|
|
# 2416| Type = [RValueReferenceType] vector<char> &&
|
|
# 2416| ValueCategory = prvalue(load)
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const vector<char>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const vector<char>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] vector<char>
|
|
#-----| ValueCategory = lvalue
|
|
# 2416| getCondition(): [FunctionCall] call to operator!=
|
|
# 2416| Type = [BoolType] bool
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getQualifier(): [VariableAccess] (__begin)
|
|
# 2416| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2416| ValueCategory = lvalue
|
|
# 2416| getArgument(0): [ConstructorCall] call to iterator
|
|
# 2416| Type = [VoidType] void
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getArgument(0): [VariableAccess] (__end)
|
|
# 2416| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2416| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
#-----| Type = [LValueReferenceType] const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &> &
|
|
#-----| ValueCategory = prvalue
|
|
#-----| getExpr(): [CStyleCast] (const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>
|
|
#-----| ValueCategory = lvalue
|
|
#-----| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
#-----| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2416| getUpdate(): [FunctionCall] call to operator++
|
|
# 2416| Type = [LValueReferenceType] iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &> &
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getQualifier(): [VariableAccess] (__begin)
|
|
# 2416| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2416| ValueCategory = lvalue
|
|
# 2416| getChild(5): [DeclStmt] declaration
|
|
# 2416| getDeclarationEntry(0): [VariableDeclarationEntry] definition of y
|
|
# 2416| Type = [PlainCharType] char
|
|
# 2416| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 2416| getExpr(): [OverloadedPointerDereferenceExpr] call to operator*
|
|
# 2416| Type = [LValueReferenceType] char &
|
|
# 2416| ValueCategory = prvalue
|
|
# 2416| getQualifier(): [VariableAccess] (__begin)
|
|
# 2416| Type = [NestedTypedefType,UsingAliasTypedefType] iterator
|
|
# 2416| ValueCategory = lvalue
|
|
#-----| getQualifier().getFullyConverted(): [CStyleCast] (const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>)...
|
|
#-----| Conversion = [GlvalueConversion] glvalue conversion
|
|
#-----| Type = [SpecifiedType] const iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>
|
|
#-----| ValueCategory = lvalue
|
|
# 2416| getExpr().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2416| Type = [PlainCharType] char
|
|
# 2416| ValueCategory = prvalue(load)
|
|
# 2417| getStmt(): [ExprStmt] ExprStmt
|
|
# 2417| getExpr(): [AssignAddExpr] ... += ...
|
|
# 2417| Type = [PlainCharType] char
|
|
# 2417| ValueCategory = lvalue
|
|
# 2417| getLValue(): [VariableAccess] y
|
|
# 2417| Type = [PlainCharType] char
|
|
# 2417| ValueCategory = lvalue
|
|
# 2417| getRValue(): [VariableAccess] x
|
|
# 2417| Type = [PlainCharType] char
|
|
# 2417| ValueCategory = prvalue(load)
|
|
# 2417| getRValue().getFullyConverted(): [CStyleCast] (int)...
|
|
# 2417| Conversion = [IntegralConversion] integral conversion
|
|
# 2417| Type = [IntType] int
|
|
# 2417| ValueCategory = prvalue
|
|
# 2416| getUpdate().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 2416| Type = [ClassTemplateInstantiation,Struct] iterator<random_access_iterator_tag, char, ptrdiff_t, char *, char &>
|
|
# 2416| ValueCategory = lvalue
|
|
# 2418| getStmt(6): [ReturnStmt] return ...
|
|
perf-regression.cpp:
|
|
# 4| [CopyAssignmentOperator] Big& Big::operator=(Big const&)
|
|
# 4| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Big &
|
|
# 4| [MoveAssignmentOperator] Big& Big::operator=(Big&&)
|
|
# 4| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Big &&
|
|
# 4| [CopyConstructor] void Big::Big(Big const&)
|
|
# 4| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Big &
|
|
# 4| [MoveConstructor] void Big::Big(Big&&)
|
|
# 4| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Big &&
|
|
# 6| [Constructor] void Big::Big()
|
|
# 6| <params>:
|
|
# 6| <initializations>:
|
|
# 6| getInitializer(0): [ConstructorFieldInit] constructor init of field buffer
|
|
# 6| Type = [ArrayType] char[1073741824]
|
|
# 6| ValueCategory = prvalue
|
|
# 6| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 6| Type = [ArrayType] char[1073741824]
|
|
# 6| ValueCategory = prvalue
|
|
# 6| getEntryPoint(): [BlockStmt] { ... }
|
|
# 6| getStmt(0): [ReturnStmt] return ...
|
|
# 9| [TopLevelFunction] int main()
|
|
# 9| <params>:
|
|
# 9| getEntryPoint(): [BlockStmt] { ... }
|
|
# 10| getStmt(0): [DeclStmt] declaration
|
|
# 10| getDeclarationEntry(0): [VariableDeclarationEntry] definition of big
|
|
# 10| Type = [PointerType] Big *
|
|
# 10| getVariable().getInitializer(): [Initializer] initializer for big
|
|
# 10| getExpr(): [NewExpr] new
|
|
# 10| Type = [PointerType] Big *
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getInitializer(): [ConstructorCall] call to Big
|
|
# 10| Type = [VoidType] void
|
|
# 10| ValueCategory = prvalue
|
|
# 12| getStmt(1): [ReturnStmt] return ...
|
|
# 12| getExpr(): [Literal] 0
|
|
# 12| Type = [IntType] int
|
|
# 12| Value = [Literal] 0
|
|
# 12| ValueCategory = prvalue
|
|
smart_ptr.cpp:
|
|
# 8| [TopLevelFunction] void unique_ptr_arg(std::unique_ptr<int, std::default_delete<int>>)
|
|
# 8| <params>:
|
|
# 8| getParameter(0): [Parameter] up
|
|
# 8| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
|
|
# 10| [TopLevelFunction] void call_unique_ptr_arg(int*)
|
|
# 10| <params>:
|
|
# 10| getParameter(0): [Parameter] p
|
|
# 10| Type = [IntPointerType] int *
|
|
# 10| getEntryPoint(): [BlockStmt] { ... }
|
|
# 11| getStmt(0): [DeclStmt] declaration
|
|
# 11| getDeclarationEntry(0): [VariableDeclarationEntry] definition of up
|
|
# 11| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
|
|
# 11| getVariable().getInitializer(): [Initializer] initializer for up
|
|
# 11| getExpr(): [ConstructorCall] call to unique_ptr
|
|
# 11| Type = [VoidType] void
|
|
# 11| ValueCategory = prvalue
|
|
# 11| getArgument(0): [VariableAccess] p
|
|
# 11| Type = [IntPointerType] int *
|
|
# 11| ValueCategory = prvalue(load)
|
|
# 12| getStmt(1): [ExprStmt] ExprStmt
|
|
# 12| getExpr(): [FunctionCall] call to unique_ptr_arg
|
|
# 12| Type = [VoidType] void
|
|
# 12| ValueCategory = prvalue
|
|
# 12| getArgument(0): [FunctionCall] call to move
|
|
# 12| Type = [RValueReferenceType] type &&
|
|
# 12| ValueCategory = prvalue
|
|
# 12| getArgument(0): [VariableAccess] up
|
|
# 12| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
|
|
# 12| ValueCategory = lvalue
|
|
# 12| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 12| Type = [LValueReferenceType] unique_ptr<int, default_delete<int>> &
|
|
# 12| ValueCategory = prvalue
|
|
# 12| getImplicitDestructorCall(0): [DestructorCall] call to ~unique_ptr
|
|
# 12| Type = [VoidType] void
|
|
# 12| ValueCategory = prvalue
|
|
# 12| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 12| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
|
|
# 12| ValueCategory = xvalue
|
|
# 12| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 12| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
|
|
# 12| ValueCategory = lvalue
|
|
# 12| getExpr(): [ReferenceDereferenceExpr] (reference dereference)
|
|
# 12| Type = [CTypedefType,NestedTypedefType] type
|
|
# 12| ValueCategory = prvalue(load)
|
|
# 13| getStmt(2): [ReturnStmt] return ...
|
|
# 13| getImplicitDestructorCall(0): [DestructorCall] call to ~unique_ptr
|
|
# 13| Type = [VoidType] void
|
|
# 13| ValueCategory = prvalue
|
|
# 13| getQualifier(): [VariableAccess] up
|
|
# 13| Type = [ClassTemplateInstantiation] unique_ptr<int, default_delete<int>>
|
|
# 13| ValueCategory = lvalue
|
|
# 15| [TopLevelFunction] void shared_ptr_arg(std::shared_ptr<float>)
|
|
# 15| <params>:
|
|
# 15| getParameter(0): [Parameter] sp
|
|
# 15| Type = [ClassTemplateInstantiation] shared_ptr<float>
|
|
# 17| [TopLevelFunction] void call_shared_ptr_arg(float*)
|
|
# 17| <params>:
|
|
# 17| getParameter(0): [Parameter] p
|
|
# 17| Type = [PointerType] float *
|
|
# 17| getEntryPoint(): [BlockStmt] { ... }
|
|
# 18| getStmt(0): [DeclStmt] declaration
|
|
# 18| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sp
|
|
# 18| Type = [ClassTemplateInstantiation] shared_ptr<float>
|
|
# 18| getVariable().getInitializer(): [Initializer] initializer for sp
|
|
# 18| getExpr(): [ConstructorCall] call to shared_ptr
|
|
# 18| Type = [VoidType] void
|
|
# 18| ValueCategory = prvalue
|
|
# 18| getArgument(0): [VariableAccess] p
|
|
# 18| Type = [PointerType] float *
|
|
# 18| ValueCategory = prvalue(load)
|
|
# 19| getStmt(1): [ExprStmt] ExprStmt
|
|
# 19| getExpr(): [FunctionCall] call to shared_ptr_arg
|
|
# 19| Type = [VoidType] void
|
|
# 19| ValueCategory = prvalue
|
|
# 19| getArgument(0): [ConstructorCall] call to shared_ptr
|
|
# 19| Type = [VoidType] void
|
|
# 19| ValueCategory = prvalue
|
|
# 19| getArgument(0): [VariableAccess] sp
|
|
# 19| Type = [ClassTemplateInstantiation] shared_ptr<float>
|
|
# 19| ValueCategory = lvalue
|
|
# 19| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 19| Type = [LValueReferenceType] const shared_ptr<float> &
|
|
# 19| ValueCategory = prvalue
|
|
# 19| getExpr(): [CStyleCast] (const shared_ptr<float>)...
|
|
# 19| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 19| Type = [SpecifiedType] const shared_ptr<float>
|
|
# 19| ValueCategory = lvalue
|
|
# 19| getImplicitDestructorCall(0): [DestructorCall] call to ~shared_ptr
|
|
# 19| Type = [VoidType] void
|
|
# 19| ValueCategory = prvalue
|
|
# 19| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 19| Type = [ClassTemplateInstantiation] shared_ptr<float>
|
|
# 19| ValueCategory = xvalue
|
|
# 19| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 19| Type = [ClassTemplateInstantiation] shared_ptr<float>
|
|
# 19| ValueCategory = lvalue
|
|
# 20| getStmt(2): [ReturnStmt] return ...
|
|
# 20| getImplicitDestructorCall(0): [DestructorCall] call to ~shared_ptr
|
|
# 20| Type = [VoidType] void
|
|
# 20| ValueCategory = prvalue
|
|
# 20| getQualifier(): [VariableAccess] sp
|
|
# 20| Type = [ClassTemplateInstantiation] shared_ptr<float>
|
|
# 20| ValueCategory = lvalue
|
|
# 22| [TopLevelFunction] void shared_ptr_const_int(std::shared_ptr<int const>)
|
|
# 22| <params>:
|
|
# 22| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 22| Type = [ClassTemplateInstantiation] shared_ptr<const int>
|
|
# 23| [TopLevelFunction] void shared_ptr_const_int_ptr(std::shared_ptr<int* const>)
|
|
# 23| <params>:
|
|
# 23| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 23| Type = [ClassTemplateInstantiation] shared_ptr<int *const>
|
|
# 24| [TopLevelFunction] void shared_ptr_shared_ptr_const_int(std::shared_ptr<std::shared_ptr<int const>>)
|
|
# 24| <params>:
|
|
# 24| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 24| Type = [ClassTemplateInstantiation] shared_ptr<shared_ptr<const int>>
|
|
# 25| [TopLevelFunction] void shared_ptr_const_shared_ptr_int(std::shared_ptr<std::shared_ptr<int> const>)
|
|
# 25| <params>:
|
|
# 25| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 25| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<int>>
|
|
# 26| [TopLevelFunction] void shared_ptr_const_shared_ptr_const_int(std::shared_ptr<std::shared_ptr<int const> const>)
|
|
# 26| <params>:
|
|
# 26| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
# 26| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<const int>>
|
|
# 28| [TopLevelFunction] void call_shared_ptr_consts()
|
|
# 28| <params>:
|
|
# 28| getEntryPoint(): [BlockStmt] { ... }
|
|
# 29| getStmt(0): [DeclStmt] declaration
|
|
# 29| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sp_const_int
|
|
# 29| Type = [ClassTemplateInstantiation] shared_ptr<const int>
|
|
# 31| getStmt(1): [ExprStmt] ExprStmt
|
|
# 31| getExpr(): [FunctionCall] call to shared_ptr_const_int
|
|
# 31| Type = [VoidType] void
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getArgument(0): [ConstructorCall] call to shared_ptr
|
|
# 31| Type = [VoidType] void
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getArgument(0): [VariableAccess] sp_const_int
|
|
# 31| Type = [ClassTemplateInstantiation] shared_ptr<const int>
|
|
# 31| ValueCategory = lvalue
|
|
# 31| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 31| Type = [LValueReferenceType] const shared_ptr<const int> &
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getExpr(): [CStyleCast] (const shared_ptr<const int>)...
|
|
# 31| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 31| Type = [SpecifiedType] const shared_ptr<const int>
|
|
# 31| ValueCategory = lvalue
|
|
# 31| getImplicitDestructorCall(0): [DestructorCall] call to ~shared_ptr
|
|
# 31| Type = [VoidType] void
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 31| Type = [ClassTemplateInstantiation] shared_ptr<const int>
|
|
# 31| ValueCategory = xvalue
|
|
# 31| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 31| Type = [ClassTemplateInstantiation] shared_ptr<const int>
|
|
# 31| ValueCategory = lvalue
|
|
# 33| getStmt(2): [DeclStmt] declaration
|
|
# 33| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sp_const_int_pointer
|
|
# 33| Type = [ClassTemplateInstantiation] shared_ptr<int *const>
|
|
# 35| getStmt(3): [ExprStmt] ExprStmt
|
|
# 35| getExpr(): [FunctionCall] call to shared_ptr_const_int_ptr
|
|
# 35| Type = [VoidType] void
|
|
# 35| ValueCategory = prvalue
|
|
# 35| getArgument(0): [ConstructorCall] call to shared_ptr
|
|
# 35| Type = [VoidType] void
|
|
# 35| ValueCategory = prvalue
|
|
# 35| getArgument(0): [VariableAccess] sp_const_int_pointer
|
|
# 35| Type = [ClassTemplateInstantiation] shared_ptr<int *const>
|
|
# 35| ValueCategory = lvalue
|
|
# 35| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 35| Type = [LValueReferenceType] const shared_ptr<int *const> &
|
|
# 35| ValueCategory = prvalue
|
|
# 35| getExpr(): [CStyleCast] (const shared_ptr<int *const>)...
|
|
# 35| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 35| Type = [SpecifiedType] const shared_ptr<int *const>
|
|
# 35| ValueCategory = lvalue
|
|
# 35| getImplicitDestructorCall(0): [DestructorCall] call to ~shared_ptr
|
|
# 35| Type = [VoidType] void
|
|
# 35| ValueCategory = prvalue
|
|
# 35| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 35| Type = [ClassTemplateInstantiation] shared_ptr<int *const>
|
|
# 35| ValueCategory = xvalue
|
|
# 35| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 35| Type = [ClassTemplateInstantiation] shared_ptr<int *const>
|
|
# 35| ValueCategory = lvalue
|
|
# 37| getStmt(4): [DeclStmt] declaration
|
|
# 37| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sp_sp_const_int
|
|
# 37| Type = [ClassTemplateInstantiation] shared_ptr<shared_ptr<const int>>
|
|
# 39| getStmt(5): [ExprStmt] ExprStmt
|
|
# 39| getExpr(): [FunctionCall] call to shared_ptr_shared_ptr_const_int
|
|
# 39| Type = [VoidType] void
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getArgument(0): [ConstructorCall] call to shared_ptr
|
|
# 39| Type = [VoidType] void
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getArgument(0): [VariableAccess] sp_sp_const_int
|
|
# 39| Type = [ClassTemplateInstantiation] shared_ptr<shared_ptr<const int>>
|
|
# 39| ValueCategory = lvalue
|
|
# 39| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 39| Type = [LValueReferenceType] const shared_ptr<shared_ptr<const int>> &
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getExpr(): [CStyleCast] (const shared_ptr<shared_ptr<const int>>)...
|
|
# 39| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 39| Type = [SpecifiedType] const shared_ptr<shared_ptr<const int>>
|
|
# 39| ValueCategory = lvalue
|
|
# 39| getImplicitDestructorCall(0): [DestructorCall] call to ~shared_ptr
|
|
# 39| Type = [VoidType] void
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 39| Type = [ClassTemplateInstantiation] shared_ptr<shared_ptr<const int>>
|
|
# 39| ValueCategory = xvalue
|
|
# 39| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 39| Type = [ClassTemplateInstantiation] shared_ptr<shared_ptr<const int>>
|
|
# 39| ValueCategory = lvalue
|
|
# 41| getStmt(6): [DeclStmt] declaration
|
|
# 41| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sp_const_sp_int
|
|
# 41| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<int>>
|
|
# 43| getStmt(7): [ExprStmt] ExprStmt
|
|
# 43| getExpr(): [FunctionCall] call to shared_ptr_const_shared_ptr_int
|
|
# 43| Type = [VoidType] void
|
|
# 43| ValueCategory = prvalue
|
|
# 43| getArgument(0): [ConstructorCall] call to shared_ptr
|
|
# 43| Type = [VoidType] void
|
|
# 43| ValueCategory = prvalue
|
|
# 43| getArgument(0): [VariableAccess] sp_const_sp_int
|
|
# 43| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<int>>
|
|
# 43| ValueCategory = lvalue
|
|
# 43| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 43| Type = [LValueReferenceType] const shared_ptr<const shared_ptr<int>> &
|
|
# 43| ValueCategory = prvalue
|
|
# 43| getExpr(): [CStyleCast] (const shared_ptr<const shared_ptr<int>>)...
|
|
# 43| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 43| Type = [SpecifiedType] const shared_ptr<const shared_ptr<int>>
|
|
# 43| ValueCategory = lvalue
|
|
# 43| getImplicitDestructorCall(0): [DestructorCall] call to ~shared_ptr
|
|
# 43| Type = [VoidType] void
|
|
# 43| ValueCategory = prvalue
|
|
# 43| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 43| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<int>>
|
|
# 43| ValueCategory = xvalue
|
|
# 43| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 43| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<int>>
|
|
# 43| ValueCategory = lvalue
|
|
# 45| getStmt(8): [DeclStmt] declaration
|
|
# 45| getDeclarationEntry(0): [VariableDeclarationEntry] definition of sp_const_sp_const_int
|
|
# 45| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<const int>>
|
|
# 47| getStmt(9): [ExprStmt] ExprStmt
|
|
# 47| getExpr(): [FunctionCall] call to shared_ptr_const_shared_ptr_const_int
|
|
# 47| Type = [VoidType] void
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getArgument(0): [ConstructorCall] call to shared_ptr
|
|
# 47| Type = [VoidType] void
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getArgument(0): [VariableAccess] sp_const_sp_const_int
|
|
# 47| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<const int>>
|
|
# 47| ValueCategory = lvalue
|
|
# 47| getArgument(0).getFullyConverted(): [ReferenceToExpr] (reference to)
|
|
# 47| Type = [LValueReferenceType] const shared_ptr<const shared_ptr<const int>> &
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getExpr(): [CStyleCast] (const shared_ptr<const shared_ptr<const int>>)...
|
|
# 47| Conversion = [GlvalueConversion] glvalue conversion
|
|
# 47| Type = [SpecifiedType] const shared_ptr<const shared_ptr<const int>>
|
|
# 47| ValueCategory = lvalue
|
|
# 47| getImplicitDestructorCall(0): [DestructorCall] call to ~shared_ptr
|
|
# 47| Type = [VoidType] void
|
|
# 47| ValueCategory = prvalue
|
|
# 47| getQualifier(): [ReuseExpr] reuse of temporary object
|
|
# 47| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<const int>>
|
|
# 47| ValueCategory = xvalue
|
|
# 47| getArgument(0).getFullyConverted(): [TemporaryObjectExpr] temporary object
|
|
# 47| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<const int>>
|
|
# 47| ValueCategory = lvalue
|
|
# 48| getStmt(10): [ReturnStmt] return ...
|
|
# 48| getImplicitDestructorCall(0): [DestructorCall] call to ~shared_ptr
|
|
# 48| Type = [VoidType] void
|
|
# 48| ValueCategory = prvalue
|
|
# 48| getQualifier(): [VariableAccess] sp_const_sp_const_int
|
|
# 48| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<const int>>
|
|
# 48| ValueCategory = lvalue
|
|
# 48| getImplicitDestructorCall(1): [DestructorCall] call to ~shared_ptr
|
|
# 48| Type = [VoidType] void
|
|
# 48| ValueCategory = prvalue
|
|
# 48| getQualifier(): [VariableAccess] sp_const_sp_int
|
|
# 48| Type = [ClassTemplateInstantiation] shared_ptr<const shared_ptr<int>>
|
|
# 48| ValueCategory = lvalue
|
|
# 48| getImplicitDestructorCall(2): [DestructorCall] call to ~shared_ptr
|
|
# 48| Type = [VoidType] void
|
|
# 48| ValueCategory = prvalue
|
|
# 48| getQualifier(): [VariableAccess] sp_sp_const_int
|
|
# 48| Type = [ClassTemplateInstantiation] shared_ptr<shared_ptr<const int>>
|
|
# 48| ValueCategory = lvalue
|
|
# 48| getImplicitDestructorCall(3): [DestructorCall] call to ~shared_ptr
|
|
# 48| Type = [VoidType] void
|
|
# 48| ValueCategory = prvalue
|
|
# 48| getQualifier(): [VariableAccess] sp_const_int_pointer
|
|
# 48| Type = [ClassTemplateInstantiation] shared_ptr<int *const>
|
|
# 48| ValueCategory = lvalue
|
|
# 48| getImplicitDestructorCall(4): [DestructorCall] call to ~shared_ptr
|
|
# 48| Type = [VoidType] void
|
|
# 48| ValueCategory = prvalue
|
|
# 48| getQualifier(): [VariableAccess] sp_const_int
|
|
# 48| Type = [ClassTemplateInstantiation] shared_ptr<const int>
|
|
# 48| ValueCategory = lvalue
|
|
struct_init.cpp:
|
|
# 1| [TopLevelFunction] int handler1(void*)
|
|
# 1| <params>:
|
|
# 1| getParameter(0): [Parameter] p
|
|
# 1| Type = [VoidPointerType] void *
|
|
# 2| [TopLevelFunction] int handler2(void*)
|
|
# 2| <params>:
|
|
# 2| getParameter(0): [Parameter] p
|
|
# 2| Type = [VoidPointerType] void *
|
|
# 4| [CopyAssignmentOperator] Info& Info::operator=(Info const&)
|
|
# 4| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [LValueReferenceType] const Info &
|
|
# 4| [MoveAssignmentOperator] Info& Info::operator=(Info&&)
|
|
# 4| <params>:
|
|
#-----| getParameter(0): [Parameter] (unnamed parameter 0)
|
|
#-----| Type = [RValueReferenceType] Info &&
|
|
# 9| [GlobalVariable] Info infos_in_file[]
|
|
# 9| getInitializer(): [Initializer] initializer for infos_in_file
|
|
# 9| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 9| Type = [ArrayType] Info[2]
|
|
# 9| ValueCategory = prvalue
|
|
# 10| getAnElementExpr(0): [ClassAggregateLiteral] {...}
|
|
# 10| Type = [Struct] Info
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getAFieldExpr(name): 1
|
|
# 10| Type = [ArrayType] const char[2]
|
|
# 10| Value = [StringLiteral] "1"
|
|
# 10| ValueCategory = lvalue
|
|
# 10| getAFieldExpr(handler): [FunctionAccess] handler1
|
|
# 10| Type = [FunctionPointerType] ..(*)(..)
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 10| getAFieldExpr(name).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 10| Type = [PointerType] const char *
|
|
# 10| ValueCategory = prvalue
|
|
# 11| getAnElementExpr(1): [ClassAggregateLiteral] {...}
|
|
# 11| Type = [Struct] Info
|
|
# 11| ValueCategory = prvalue
|
|
# 11| getAFieldExpr(name): 3
|
|
# 11| Type = [ArrayType] const char[2]
|
|
# 11| Value = [StringLiteral] "3"
|
|
# 11| ValueCategory = lvalue
|
|
# 11| getAFieldExpr(handler): [AddressOfExpr] & ...
|
|
# 11| Type = [FunctionPointerType] ..(*)(..)
|
|
# 11| ValueCategory = prvalue
|
|
# 11| getOperand(): [FunctionAccess] handler2
|
|
# 11| Type = [RoutineType] ..()(..)
|
|
# 11| ValueCategory = lvalue
|
|
# 11| getAFieldExpr(name).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 11| Type = [PointerType] const char *
|
|
# 11| ValueCategory = prvalue
|
|
# 16| [TopLevelFunction] void let_info_escape(Info*)
|
|
# 16| <params>:
|
|
# 16| getParameter(0): [Parameter] info
|
|
# 16| Type = [PointerType] Info *
|
|
# 16| getEntryPoint(): [BlockStmt] { ... }
|
|
# 17| getStmt(0): [ExprStmt] ExprStmt
|
|
# 17| getExpr(): [AssignExpr] ... = ...
|
|
# 17| Type = [PointerType] Info *
|
|
# 17| ValueCategory = lvalue
|
|
# 17| getLValue(): [VariableAccess] global_pointer
|
|
# 17| Type = [PointerType] Info *
|
|
# 17| ValueCategory = lvalue
|
|
# 17| getRValue(): [VariableAccess] info
|
|
# 17| Type = [PointerType] Info *
|
|
# 17| ValueCategory = prvalue(load)
|
|
# 18| getStmt(1): [ReturnStmt] return ...
|
|
# 20| [TopLevelFunction] void declare_static_infos()
|
|
# 20| <params>:
|
|
# 20| getEntryPoint(): [BlockStmt] { ... }
|
|
# 21| getStmt(0): [DeclStmt] declaration
|
|
# 21| getDeclarationEntry(0): [VariableDeclarationEntry] definition of static_infos
|
|
# 21| Type = [ArrayType] Info[]
|
|
# 21| getVariable().getInitializer(): [Initializer] initializer for static_infos
|
|
# 21| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 21| Type = [ArrayType] Info[2]
|
|
# 21| ValueCategory = prvalue
|
|
# 22| getAnElementExpr(0): [ClassAggregateLiteral] {...}
|
|
# 22| Type = [Struct] Info
|
|
# 22| ValueCategory = prvalue
|
|
# 22| getAFieldExpr(name): 1
|
|
# 22| Type = [ArrayType] const char[2]
|
|
# 22| Value = [StringLiteral] "1"
|
|
# 22| ValueCategory = lvalue
|
|
# 22| getAFieldExpr(handler): [FunctionAccess] handler1
|
|
# 22| Type = [FunctionPointerType] ..(*)(..)
|
|
# 22| ValueCategory = prvalue(load)
|
|
# 22| getAFieldExpr(name).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 22| Type = [PointerType] const char *
|
|
# 22| ValueCategory = prvalue
|
|
# 23| getAnElementExpr(1): [ClassAggregateLiteral] {...}
|
|
# 23| Type = [Struct] Info
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getAFieldExpr(name): 2
|
|
# 23| Type = [ArrayType] const char[2]
|
|
# 23| Value = [StringLiteral] "2"
|
|
# 23| ValueCategory = lvalue
|
|
# 23| getAFieldExpr(handler): [AddressOfExpr] & ...
|
|
# 23| Type = [FunctionPointerType] ..(*)(..)
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getOperand(): [FunctionAccess] handler2
|
|
# 23| Type = [RoutineType] ..()(..)
|
|
# 23| ValueCategory = lvalue
|
|
# 23| getAFieldExpr(name).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 23| Type = [PointerType] const char *
|
|
# 23| ValueCategory = prvalue
|
|
# 25| getStmt(1): [ExprStmt] ExprStmt
|
|
# 25| getExpr(): [FunctionCall] call to let_info_escape
|
|
# 25| Type = [VoidType] void
|
|
# 25| ValueCategory = prvalue
|
|
# 25| getArgument(0): [VariableAccess] static_infos
|
|
# 25| Type = [ArrayType] Info[2]
|
|
# 25| ValueCategory = lvalue
|
|
# 25| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 25| Type = [PointerType] Info *
|
|
# 25| ValueCategory = prvalue
|
|
# 26| getStmt(2): [ReturnStmt] return ...
|
|
# 28| [TopLevelFunction] void declare_local_infos()
|
|
# 28| <params>:
|
|
# 28| getEntryPoint(): [BlockStmt] { ... }
|
|
# 29| getStmt(0): [DeclStmt] declaration
|
|
# 29| getDeclarationEntry(0): [VariableDeclarationEntry] definition of local_infos
|
|
# 29| Type = [ArrayType] Info[]
|
|
# 29| getVariable().getInitializer(): [Initializer] initializer for local_infos
|
|
# 29| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 29| Type = [ArrayType] Info[2]
|
|
# 29| ValueCategory = prvalue
|
|
# 30| getAnElementExpr(0): [ClassAggregateLiteral] {...}
|
|
# 30| Type = [Struct] Info
|
|
# 30| ValueCategory = prvalue
|
|
# 30| getAFieldExpr(name): 1
|
|
# 30| Type = [ArrayType] const char[2]
|
|
# 30| Value = [StringLiteral] "1"
|
|
# 30| ValueCategory = lvalue
|
|
# 30| getAFieldExpr(handler): [FunctionAccess] handler1
|
|
# 30| Type = [FunctionPointerType] ..(*)(..)
|
|
# 30| ValueCategory = prvalue(load)
|
|
# 30| getAFieldExpr(name).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 30| Type = [PointerType] const char *
|
|
# 30| ValueCategory = prvalue
|
|
# 31| getAnElementExpr(1): [ClassAggregateLiteral] {...}
|
|
# 31| Type = [Struct] Info
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getAFieldExpr(name): 2
|
|
# 31| Type = [ArrayType] const char[2]
|
|
# 31| Value = [StringLiteral] "2"
|
|
# 31| ValueCategory = lvalue
|
|
# 31| getAFieldExpr(handler): [AddressOfExpr] & ...
|
|
# 31| Type = [FunctionPointerType] ..(*)(..)
|
|
# 31| ValueCategory = prvalue
|
|
# 31| getOperand(): [FunctionAccess] handler2
|
|
# 31| Type = [RoutineType] ..()(..)
|
|
# 31| ValueCategory = lvalue
|
|
# 31| getAFieldExpr(name).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 31| Type = [PointerType] const char *
|
|
# 31| ValueCategory = prvalue
|
|
# 33| getStmt(1): [ExprStmt] ExprStmt
|
|
# 33| getExpr(): [FunctionCall] call to let_info_escape
|
|
# 33| Type = [VoidType] void
|
|
# 33| ValueCategory = prvalue
|
|
# 33| getArgument(0): [VariableAccess] local_infos
|
|
# 33| Type = [ArrayType] Info[2]
|
|
# 33| ValueCategory = lvalue
|
|
# 33| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 33| Type = [PointerType] Info *
|
|
# 33| ValueCategory = prvalue
|
|
# 34| getStmt(2): [ReturnStmt] return ...
|
|
# 36| [TopLevelFunction] void declare_static_runtime_infos(char const*)
|
|
# 36| <params>:
|
|
# 36| getParameter(0): [Parameter] name1
|
|
# 36| Type = [PointerType] const char *
|
|
# 36| getEntryPoint(): [BlockStmt] { ... }
|
|
# 37| getStmt(0): [DeclStmt] declaration
|
|
# 37| getDeclarationEntry(0): [VariableDeclarationEntry] definition of static_infos
|
|
# 37| Type = [ArrayType] Info[]
|
|
# 37| getVariable().getInitializer(): [Initializer] initializer for static_infos
|
|
# 37| getExpr(): [ArrayAggregateLiteral] {...}
|
|
# 37| Type = [ArrayType] Info[2]
|
|
# 37| ValueCategory = prvalue
|
|
# 38| getAnElementExpr(0): [ClassAggregateLiteral] {...}
|
|
# 38| Type = [Struct] Info
|
|
# 38| ValueCategory = prvalue
|
|
# 38| getAFieldExpr(name): [VariableAccess] name1
|
|
# 38| Type = [PointerType] const char *
|
|
# 38| ValueCategory = prvalue(load)
|
|
# 38| getAFieldExpr(handler): [FunctionAccess] handler1
|
|
# 38| Type = [FunctionPointerType] ..(*)(..)
|
|
# 38| ValueCategory = prvalue(load)
|
|
# 39| getAnElementExpr(1): [ClassAggregateLiteral] {...}
|
|
# 39| Type = [Struct] Info
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getAFieldExpr(name): 2
|
|
# 39| Type = [ArrayType] const char[2]
|
|
# 39| Value = [StringLiteral] "2"
|
|
# 39| ValueCategory = lvalue
|
|
# 39| getAFieldExpr(handler): [AddressOfExpr] & ...
|
|
# 39| Type = [FunctionPointerType] ..(*)(..)
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getOperand(): [FunctionAccess] handler2
|
|
# 39| Type = [RoutineType] ..()(..)
|
|
# 39| ValueCategory = lvalue
|
|
# 39| getAFieldExpr(name).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 39| Type = [PointerType] const char *
|
|
# 39| ValueCategory = prvalue
|
|
# 41| getStmt(1): [ExprStmt] ExprStmt
|
|
# 41| getExpr(): [FunctionCall] call to let_info_escape
|
|
# 41| Type = [VoidType] void
|
|
# 41| ValueCategory = prvalue
|
|
# 41| getArgument(0): [VariableAccess] static_infos
|
|
# 41| Type = [ArrayType] Info[2]
|
|
# 41| ValueCategory = lvalue
|
|
# 41| getArgument(0).getFullyConverted(): [ArrayToPointerConversion] array to pointer conversion
|
|
# 41| Type = [PointerType] Info *
|
|
# 41| ValueCategory = prvalue
|
|
# 42| getStmt(2): [ReturnStmt] return ...
|
|
try_except.c:
|
|
# 3| [TopLevelFunction] void ProbeFunction()
|
|
# 3| <params>:
|
|
# 4| [TopLevelFunction] void sink()
|
|
# 4| <params>:
|
|
# 6| [TopLevelFunction] void f()
|
|
# 6| <params>:
|
|
# 6| getEntryPoint(): [BlockStmt] { ... }
|
|
# 7| getStmt(0): [DeclStmt] declaration
|
|
# 7| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 7| Type = [IntType] int
|
|
# 7| getDeclarationEntry(1): [VariableDeclarationEntry] definition of y
|
|
# 7| Type = [IntType] int
|
|
# 7| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 7| getExpr(): [Literal] 0
|
|
# 7| Type = [IntType] int
|
|
# 7| Value = [Literal] 0
|
|
# 7| ValueCategory = prvalue
|
|
# 8| getStmt(1): [MicrosoftTryExceptStmt] __try { ... } __except( ... ) { ... }
|
|
# 8| getStmt(): [BlockStmt] { ... }
|
|
# 9| getStmt(0): [ExprStmt] ExprStmt
|
|
# 9| getExpr(): [FunctionCall] call to ProbeFunction
|
|
# 9| Type = [VoidType] void
|
|
# 9| ValueCategory = prvalue
|
|
# 9| getArgument(0): [Literal] 0
|
|
# 9| Type = [IntType] int
|
|
# 9| Value = [Literal] 0
|
|
# 9| ValueCategory = prvalue
|
|
# 10| getStmt(1): [ExprStmt] ExprStmt
|
|
# 10| getExpr(): [AssignExpr] ... = ...
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue
|
|
# 10| getLValue(): [VariableAccess] x
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = lvalue
|
|
# 10| getRValue(): [VariableAccess] y
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 11| getStmt(2): [ExprStmt] ExprStmt
|
|
# 11| getExpr(): [FunctionCall] call to ProbeFunction
|
|
# 11| Type = [VoidType] void
|
|
# 11| ValueCategory = prvalue
|
|
# 11| getArgument(0): [Literal] 0
|
|
# 11| Type = [IntType] int
|
|
# 11| Value = [Literal] 0
|
|
# 11| ValueCategory = prvalue
|
|
# 13| getCondition(): [Literal] 0
|
|
# 13| Type = [IntType] int
|
|
# 13| Value = [Literal] 0
|
|
# 13| ValueCategory = prvalue
|
|
# 13| getExcept(): [BlockStmt] { ... }
|
|
# 14| getStmt(0): [ExprStmt] ExprStmt
|
|
# 14| getExpr(): [FunctionCall] call to sink
|
|
# 14| Type = [VoidType] void
|
|
# 14| ValueCategory = prvalue
|
|
# 14| getArgument(0): [VariableAccess] x
|
|
# 14| Type = [IntType] int
|
|
# 14| ValueCategory = prvalue(load)
|
|
# 16| getStmt(2): [ReturnStmt] return ...
|
|
# 18| [TopLevelFunction] void g()
|
|
# 18| <params>:
|
|
# 18| getEntryPoint(): [BlockStmt] { ... }
|
|
# 19| getStmt(0): [DeclStmt] declaration
|
|
# 19| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 19| Type = [IntType] int
|
|
# 19| getDeclarationEntry(1): [VariableDeclarationEntry] definition of y
|
|
# 19| Type = [IntType] int
|
|
# 19| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 19| getExpr(): [Literal] 0
|
|
# 19| Type = [IntType] int
|
|
# 19| Value = [Literal] 0
|
|
# 19| ValueCategory = prvalue
|
|
# 20| getStmt(1): [MicrosoftTryFinallyStmt] __try { ... } __finally { ... }
|
|
# 20| getStmt(): [BlockStmt] { ... }
|
|
# 21| getStmt(0): [ExprStmt] ExprStmt
|
|
# 21| getExpr(): [FunctionCall] call to ProbeFunction
|
|
# 21| Type = [VoidType] void
|
|
# 21| ValueCategory = prvalue
|
|
# 21| getArgument(0): [Literal] 0
|
|
# 21| Type = [IntType] int
|
|
# 21| Value = [Literal] 0
|
|
# 21| ValueCategory = prvalue
|
|
# 22| getStmt(1): [ExprStmt] ExprStmt
|
|
# 22| getExpr(): [AssignExpr] ... = ...
|
|
# 22| Type = [IntType] int
|
|
# 22| ValueCategory = prvalue
|
|
# 22| getLValue(): [VariableAccess] x
|
|
# 22| Type = [IntType] int
|
|
# 22| ValueCategory = lvalue
|
|
# 22| getRValue(): [VariableAccess] y
|
|
# 22| Type = [IntType] int
|
|
# 22| ValueCategory = prvalue(load)
|
|
# 23| getStmt(2): [ExprStmt] ExprStmt
|
|
# 23| getExpr(): [FunctionCall] call to ProbeFunction
|
|
# 23| Type = [VoidType] void
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getArgument(0): [Literal] 0
|
|
# 23| Type = [IntType] int
|
|
# 23| Value = [Literal] 0
|
|
# 23| ValueCategory = prvalue
|
|
# 25| getFinally(): [BlockStmt] { ... }
|
|
# 26| getStmt(0): [ExprStmt] ExprStmt
|
|
# 26| getExpr(): [FunctionCall] call to sink
|
|
# 26| Type = [VoidType] void
|
|
# 26| ValueCategory = prvalue
|
|
# 26| getArgument(0): [VariableAccess] x
|
|
# 26| Type = [IntType] int
|
|
# 26| ValueCategory = prvalue(load)
|
|
# 28| getStmt(2): [ReturnStmt] return ...
|
|
# 30| [TopLevelFunction] void AfxThrowMemoryException()
|
|
# 30| <params>:
|
|
# 32| [TopLevelFunction] void h(int)
|
|
# 32| <params>:
|
|
# 32| getParameter(0): [Parameter] b
|
|
# 32| Type = [IntType] int
|
|
# 32| getEntryPoint(): [BlockStmt] { ... }
|
|
# 33| getStmt(0): [DeclStmt] declaration
|
|
# 33| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 33| Type = [IntType] int
|
|
# 33| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 33| getExpr(): [Literal] 0
|
|
# 33| Type = [IntType] int
|
|
# 33| Value = [Literal] 0
|
|
# 33| ValueCategory = prvalue
|
|
# 34| getStmt(1): [MicrosoftTryExceptStmt] __try { ... } __except( ... ) { ... }
|
|
# 34| getStmt(): [BlockStmt] { ... }
|
|
# 35| getStmt(0): [IfStmt] if (...) ...
|
|
# 35| getCondition(): [VariableAccess] b
|
|
# 35| Type = [IntType] int
|
|
# 35| ValueCategory = prvalue(load)
|
|
# 35| getThen(): [BlockStmt] { ... }
|
|
# 36| getStmt(0): [ExprStmt] ExprStmt
|
|
# 36| getExpr(): [FunctionCall] call to AfxThrowMemoryException
|
|
# 36| Type = [VoidType] void
|
|
# 36| ValueCategory = prvalue
|
|
# 39| getCondition(): [Literal] 1
|
|
# 39| Type = [IntType] int
|
|
# 39| Value = [Literal] 1
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getExcept(): [BlockStmt] { ... }
|
|
# 40| getStmt(0): [ExprStmt] ExprStmt
|
|
# 40| getExpr(): [FunctionCall] call to sink
|
|
# 40| Type = [VoidType] void
|
|
# 40| ValueCategory = prvalue
|
|
# 40| getArgument(0): [VariableAccess] x
|
|
# 40| Type = [IntType] int
|
|
# 40| ValueCategory = prvalue(load)
|
|
# 42| getStmt(2): [ReturnStmt] return ...
|
|
try_except.cpp:
|
|
# 3| [TopLevelFunction] void ProbeFunction()
|
|
# 3| <params>:
|
|
# 4| [TopLevelFunction] void sink()
|
|
# 4| <params>:
|
|
# 6| [TopLevelFunction] void f_cpp()
|
|
# 6| <params>:
|
|
# 6| getEntryPoint(): [BlockStmt] { ... }
|
|
# 7| getStmt(0): [DeclStmt] declaration
|
|
# 7| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 7| Type = [IntType] int
|
|
# 7| getDeclarationEntry(1): [VariableDeclarationEntry] definition of y
|
|
# 7| Type = [IntType] int
|
|
# 7| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 7| getExpr(): [Literal] 0
|
|
# 7| Type = [IntType] int
|
|
# 7| Value = [Literal] 0
|
|
# 7| ValueCategory = prvalue
|
|
# 8| getStmt(1): [MicrosoftTryExceptStmt] __try { ... } __except( ... ) { ... }
|
|
# 8| getStmt(): [BlockStmt] { ... }
|
|
# 9| getStmt(0): [ExprStmt] ExprStmt
|
|
# 9| getExpr(): [FunctionCall] call to ProbeFunction
|
|
# 9| Type = [VoidType] void
|
|
# 9| ValueCategory = prvalue
|
|
# 9| getArgument(0): [Literal] 0
|
|
# 9| Type = [IntType] int
|
|
# 9| Value = [Literal] 0
|
|
# 9| ValueCategory = prvalue
|
|
# 10| getStmt(1): [ExprStmt] ExprStmt
|
|
# 10| getExpr(): [AssignExpr] ... = ...
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = lvalue
|
|
# 10| getLValue(): [VariableAccess] x
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = lvalue
|
|
# 10| getRValue(): [VariableAccess] y
|
|
# 10| Type = [IntType] int
|
|
# 10| ValueCategory = prvalue(load)
|
|
# 11| getStmt(2): [ExprStmt] ExprStmt
|
|
# 11| getExpr(): [FunctionCall] call to ProbeFunction
|
|
# 11| Type = [VoidType] void
|
|
# 11| ValueCategory = prvalue
|
|
# 11| getArgument(0): [Literal] 0
|
|
# 11| Type = [IntType] int
|
|
# 11| Value = [Literal] 0
|
|
# 11| ValueCategory = prvalue
|
|
# 13| getCondition(): [Literal] 0
|
|
# 13| Type = [IntType] int
|
|
# 13| Value = [Literal] 0
|
|
# 13| ValueCategory = prvalue
|
|
# 13| getExcept(): [BlockStmt] { ... }
|
|
# 14| getStmt(0): [ExprStmt] ExprStmt
|
|
# 14| getExpr(): [FunctionCall] call to sink
|
|
# 14| Type = [VoidType] void
|
|
# 14| ValueCategory = prvalue
|
|
# 14| getArgument(0): [VariableAccess] x
|
|
# 14| Type = [IntType] int
|
|
# 14| ValueCategory = prvalue(load)
|
|
# 16| getStmt(2): [ReturnStmt] return ...
|
|
# 18| [TopLevelFunction] void g_cpp()
|
|
# 18| <params>:
|
|
# 18| getEntryPoint(): [BlockStmt] { ... }
|
|
# 19| getStmt(0): [DeclStmt] declaration
|
|
# 19| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 19| Type = [IntType] int
|
|
# 19| getDeclarationEntry(1): [VariableDeclarationEntry] definition of y
|
|
# 19| Type = [IntType] int
|
|
# 19| getVariable().getInitializer(): [Initializer] initializer for y
|
|
# 19| getExpr(): [Literal] 0
|
|
# 19| Type = [IntType] int
|
|
# 19| Value = [Literal] 0
|
|
# 19| ValueCategory = prvalue
|
|
# 20| getStmt(1): [MicrosoftTryFinallyStmt] __try { ... } __finally { ... }
|
|
# 20| getStmt(): [BlockStmt] { ... }
|
|
# 21| getStmt(0): [ExprStmt] ExprStmt
|
|
# 21| getExpr(): [FunctionCall] call to ProbeFunction
|
|
# 21| Type = [VoidType] void
|
|
# 21| ValueCategory = prvalue
|
|
# 21| getArgument(0): [Literal] 0
|
|
# 21| Type = [IntType] int
|
|
# 21| Value = [Literal] 0
|
|
# 21| ValueCategory = prvalue
|
|
# 22| getStmt(1): [ExprStmt] ExprStmt
|
|
# 22| getExpr(): [AssignExpr] ... = ...
|
|
# 22| Type = [IntType] int
|
|
# 22| ValueCategory = lvalue
|
|
# 22| getLValue(): [VariableAccess] x
|
|
# 22| Type = [IntType] int
|
|
# 22| ValueCategory = lvalue
|
|
# 22| getRValue(): [VariableAccess] y
|
|
# 22| Type = [IntType] int
|
|
# 22| ValueCategory = prvalue(load)
|
|
# 23| getStmt(2): [ExprStmt] ExprStmt
|
|
# 23| getExpr(): [FunctionCall] call to ProbeFunction
|
|
# 23| Type = [VoidType] void
|
|
# 23| ValueCategory = prvalue
|
|
# 23| getArgument(0): [Literal] 0
|
|
# 23| Type = [IntType] int
|
|
# 23| Value = [Literal] 0
|
|
# 23| ValueCategory = prvalue
|
|
# 25| getFinally(): [BlockStmt] { ... }
|
|
# 26| getStmt(0): [ExprStmt] ExprStmt
|
|
# 26| getExpr(): [FunctionCall] call to sink
|
|
# 26| Type = [VoidType] void
|
|
# 26| ValueCategory = prvalue
|
|
# 26| getArgument(0): [VariableAccess] x
|
|
# 26| Type = [IntType] int
|
|
# 26| ValueCategory = prvalue(load)
|
|
# 28| getStmt(2): [ReturnStmt] return ...
|
|
# 30| [TopLevelFunction] void AfxThrowMemoryException()
|
|
# 30| <params>:
|
|
# 32| [TopLevelFunction] void h_cpp(int)
|
|
# 32| <params>:
|
|
# 32| getParameter(0): [Parameter] b
|
|
# 32| Type = [IntType] int
|
|
# 32| getEntryPoint(): [BlockStmt] { ... }
|
|
# 33| getStmt(0): [DeclStmt] declaration
|
|
# 33| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 33| Type = [IntType] int
|
|
# 33| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 33| getExpr(): [Literal] 0
|
|
# 33| Type = [IntType] int
|
|
# 33| Value = [Literal] 0
|
|
# 33| ValueCategory = prvalue
|
|
# 34| getStmt(1): [MicrosoftTryExceptStmt] __try { ... } __except( ... ) { ... }
|
|
# 34| getStmt(): [BlockStmt] { ... }
|
|
# 35| getStmt(0): [IfStmt] if (...) ...
|
|
# 35| getCondition(): [VariableAccess] b
|
|
# 35| Type = [IntType] int
|
|
# 35| ValueCategory = prvalue(load)
|
|
# 35| getThen(): [BlockStmt] { ... }
|
|
# 36| getStmt(0): [ExprStmt] ExprStmt
|
|
# 36| getExpr(): [FunctionCall] call to AfxThrowMemoryException
|
|
# 36| Type = [VoidType] void
|
|
# 36| ValueCategory = prvalue
|
|
# 35| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 35| Conversion = [BoolConversion] conversion to bool
|
|
# 35| Type = [BoolType] bool
|
|
# 35| ValueCategory = prvalue
|
|
# 39| getCondition(): [Literal] 1
|
|
# 39| Type = [IntType] int
|
|
# 39| Value = [Literal] 1
|
|
# 39| ValueCategory = prvalue
|
|
# 39| getExcept(): [BlockStmt] { ... }
|
|
# 40| getStmt(0): [ExprStmt] ExprStmt
|
|
# 40| getExpr(): [FunctionCall] call to sink
|
|
# 40| Type = [VoidType] void
|
|
# 40| ValueCategory = prvalue
|
|
# 40| getArgument(0): [VariableAccess] x
|
|
# 40| Type = [IntType] int
|
|
# 40| ValueCategory = prvalue(load)
|
|
# 42| getStmt(2): [ReturnStmt] return ...
|
|
# 44| [TopLevelFunction] void throw_cpp(int)
|
|
# 44| <params>:
|
|
# 44| getParameter(0): [Parameter] b
|
|
# 44| Type = [IntType] int
|
|
# 44| getEntryPoint(): [BlockStmt] { ... }
|
|
# 45| getStmt(0): [DeclStmt] declaration
|
|
# 45| getDeclarationEntry(0): [VariableDeclarationEntry] definition of x
|
|
# 45| Type = [IntType] int
|
|
# 45| getVariable().getInitializer(): [Initializer] initializer for x
|
|
# 45| getExpr(): [Literal] 0
|
|
# 45| Type = [IntType] int
|
|
# 45| Value = [Literal] 0
|
|
# 45| ValueCategory = prvalue
|
|
# 46| getStmt(1): [MicrosoftTryExceptStmt] __try { ... } __except( ... ) { ... }
|
|
# 46| getStmt(): [BlockStmt] { ... }
|
|
# 47| getStmt(0): [IfStmt] if (...) ...
|
|
# 47| getCondition(): [VariableAccess] b
|
|
# 47| Type = [IntType] int
|
|
# 47| ValueCategory = prvalue(load)
|
|
# 47| getThen(): [BlockStmt] { ... }
|
|
# 48| getStmt(0): [ExprStmt] ExprStmt
|
|
# 48| getExpr(): [ThrowExpr] throw ...
|
|
# 48| Type = [IntType] int
|
|
# 48| ValueCategory = prvalue
|
|
# 48| getExpr(): [Literal] 1
|
|
# 48| Type = [IntType] int
|
|
# 48| Value = [Literal] 1
|
|
# 48| ValueCategory = prvalue
|
|
# 47| getCondition().getFullyConverted(): [CStyleCast] (bool)...
|
|
# 47| Conversion = [BoolConversion] conversion to bool
|
|
# 47| Type = [BoolType] bool
|
|
# 47| ValueCategory = prvalue
|
|
# 51| getCondition(): [Literal] 1
|
|
# 51| Type = [IntType] int
|
|
# 51| Value = [Literal] 1
|
|
# 51| ValueCategory = prvalue
|
|
# 51| getExcept(): [BlockStmt] { ... }
|
|
# 52| getStmt(0): [ExprStmt] ExprStmt
|
|
# 52| getExpr(): [FunctionCall] call to sink
|
|
# 52| Type = [VoidType] void
|
|
# 52| ValueCategory = prvalue
|
|
# 52| getArgument(0): [VariableAccess] x
|
|
# 52| Type = [IntType] int
|
|
# 52| ValueCategory = prvalue(load)
|
|
# 54| getStmt(2): [ReturnStmt] return ...
|