@@ -155,21 +155,27 @@ bad_asts.cpp:
155155# 19| getInitializer(0): [ConstructorFieldInit] constructor init of field x
156156# 19| Type = [IntType] int
157157# 19| ValueCategory = prvalue
158- # 19| getExpr(): [FieldAccess ] x
158+ # 19| getExpr(): [ReferenceFieldAccess ] x
159159# 19| Type = [IntType] int
160160# 19| ValueCategory = prvalue(load)
161161# 19| getQualifier(): [VariableAccess] (unnamed parameter 0)
162162# 19| Type = [LValueReferenceType] const Point &
163163# 19| ValueCategory = prvalue(load)
164+ # 19| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
165+ # 19| Type = [SpecifiedType] const Point
166+ # 19| ValueCategory = lvalue
164167# 19| getInitializer(1): [ConstructorFieldInit] constructor init of field y
165168# 19| Type = [IntType] int
166169# 19| ValueCategory = prvalue
167- # 19| getExpr(): [FieldAccess ] y
170+ # 19| getExpr(): [ReferenceFieldAccess ] y
168171# 19| Type = [IntType] int
169172# 19| ValueCategory = prvalue(load)
170173# 19| getQualifier(): [VariableAccess] (unnamed parameter 0)
171174# 19| Type = [LValueReferenceType] const Point &
172175# 19| ValueCategory = prvalue(load)
176+ # 19| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
177+ # 19| Type = [SpecifiedType] const Point
178+ # 19| ValueCategory = lvalue
173179# 19| getEntryPoint(): [BlockStmt] { ... }
174180# 19| getStmt(0): [ReturnStmt] return ...
175181# 19| [MoveConstructor] void Bad::Point::Point(Bad::Point&&)
@@ -11651,75 +11657,99 @@ ir.cpp:
1165111657# 1486| getInitializer(0): [ConstructorFieldInit] constructor init of field i
1165211658# 1486| Type = [IntType] int
1165311659# 1486| ValueCategory = prvalue
11654- # 1486| getExpr(): [FieldAccess ] i
11660+ # 1486| getExpr(): [ReferenceFieldAccess ] i
1165511661# 1486| Type = [IntType] int
1165611662# 1486| ValueCategory = prvalue(load)
1165711663# 1486| getQualifier(): [VariableAccess] (unnamed parameter 0)
1165811664# 1486| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
1165911665# 1486| ValueCategory = prvalue(load)
11666+ # 1486| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
11667+ # 1486| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
11668+ # 1486| ValueCategory = lvalue
1166011669# 1486| getInitializer(1): [ConstructorFieldInit] constructor init of field d
1166111670# 1486| Type = [DoubleType] double
1166211671# 1486| ValueCategory = prvalue
11663- # 1486| getExpr(): [FieldAccess ] d
11672+ # 1486| getExpr(): [ReferenceFieldAccess ] d
1166411673# 1486| Type = [DoubleType] double
1166511674# 1486| ValueCategory = prvalue(load)
1166611675# 1486| getQualifier(): [VariableAccess] (unnamed parameter 0)
1166711676# 1486| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
1166811677# 1486| ValueCategory = prvalue(load)
11678+ # 1486| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
11679+ # 1486| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
11680+ # 1486| ValueCategory = lvalue
1166911681# 1486| getInitializer(2): [ConstructorFieldInit] constructor init of field b
1167011682# 1486| Type = [IntType] unsigned int
1167111683# 1486| ValueCategory = prvalue
11672- # 1486| getExpr(): [FieldAccess ] b
11684+ # 1486| getExpr(): [ReferenceFieldAccess ] b
1167311685# 1486| Type = [IntType] unsigned int
1167411686# 1486| ValueCategory = prvalue(load)
1167511687# 1486| getQualifier(): [VariableAccess] (unnamed parameter 0)
1167611688# 1486| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
1167711689# 1486| ValueCategory = prvalue(load)
11690+ # 1486| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
11691+ # 1486| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
11692+ # 1486| ValueCategory = lvalue
1167811693# 1486| getInitializer(3): [ConstructorFieldInit] constructor init of field r
1167911694# 1486| Type = [LValueReferenceType] int &
1168011695# 1486| ValueCategory = prvalue
11681- # 1486| getExpr(): [FieldAccess ] r
11696+ # 1486| getExpr(): [ReferenceFieldAccess ] r
1168211697# 1486| Type = [LValueReferenceType] int &
1168311698# 1486| ValueCategory = prvalue(load)
1168411699# 1486| getQualifier(): [VariableAccess] (unnamed parameter 0)
1168511700# 1486| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
1168611701# 1486| ValueCategory = prvalue(load)
11702+ # 1486| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
11703+ # 1486| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
11704+ # 1486| ValueCategory = lvalue
1168711705# 1486| getInitializer(4): [ConstructorFieldInit] constructor init of field p
1168811706# 1486| Type = [IntPointerType] int *
1168911707# 1486| ValueCategory = prvalue
11690- # 1486| getExpr(): [FieldAccess ] p
11708+ # 1486| getExpr(): [ReferenceFieldAccess ] p
1169111709# 1486| Type = [IntPointerType] int *
1169211710# 1486| ValueCategory = prvalue(load)
1169311711# 1486| getQualifier(): [VariableAccess] (unnamed parameter 0)
1169411712# 1486| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
1169511713# 1486| ValueCategory = prvalue(load)
11714+ # 1486| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
11715+ # 1486| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
11716+ # 1486| ValueCategory = lvalue
1169611717# 1486| getInitializer(5): [ConstructorFieldInit] constructor init of field xs
1169711718# 1486| Type = [CTypedefType,NestedTypedefType] ArrayType
1169811719# 1486| ValueCategory = prvalue
11699- # 1486| getExpr(): [FieldAccess ] xs
11720+ # 1486| getExpr(): [ReferenceFieldAccess ] xs
1170011721# 1486| Type = [CTypedefType,NestedTypedefType] ArrayType
1170111722# 1486| ValueCategory = prvalue(load)
1170211723# 1486| getQualifier(): [VariableAccess] (unnamed parameter 0)
1170311724# 1486| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
1170411725# 1486| ValueCategory = prvalue(load)
11726+ # 1486| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
11727+ # 1486| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
11728+ # 1486| ValueCategory = lvalue
1170511729# 1486| getInitializer(6): [ConstructorFieldInit] constructor init of field r_alt
1170611730# 1486| Type = [CTypedefType,NestedTypedefType] RefType
1170711731# 1486| ValueCategory = prvalue
11708- # 1486| getExpr(): [FieldAccess ] r_alt
11732+ # 1486| getExpr(): [ReferenceFieldAccess ] r_alt
1170911733# 1486| Type = [CTypedefType,NestedTypedefType] RefType
1171011734# 1486| ValueCategory = prvalue(load)
1171111735# 1486| getQualifier(): [VariableAccess] (unnamed parameter 0)
1171211736# 1486| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
1171311737# 1486| ValueCategory = prvalue(load)
11738+ # 1486| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
11739+ # 1486| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
11740+ # 1486| ValueCategory = lvalue
1171411741# 1486| getInitializer(7): [ConstructorFieldInit] constructor init of field m
1171511742# 1486| Type = [Struct] StructuredBindingDataMemberMemberStruct
1171611743# 1486| ValueCategory = prvalue
11717- # 1486| getExpr(): [FieldAccess ] m
11744+ # 1486| getExpr(): [ReferenceFieldAccess ] m
1171811745# 1486| Type = [Struct] StructuredBindingDataMemberMemberStruct
1171911746# 1486| ValueCategory = prvalue(load)
1172011747# 1486| getQualifier(): [VariableAccess] (unnamed parameter 0)
1172111748# 1486| Type = [LValueReferenceType] const StructuredBindingDataMemberStruct &
1172211749# 1486| ValueCategory = prvalue(load)
11750+ # 1486| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
11751+ # 1486| Type = [SpecifiedType] const StructuredBindingDataMemberStruct
11752+ # 1486| ValueCategory = lvalue
1172311753# 1486| getEntryPoint(): [BlockStmt] { ... }
1172411754# 1486| getStmt(0): [ReturnStmt] return ...
1172511755# 1486| [MoveConstructor] void StructuredBindingDataMemberStruct::StructuredBindingDataMemberStruct(StructuredBindingDataMemberStruct&&)
@@ -12096,30 +12126,39 @@ ir.cpp:
1209612126# 1539| getInitializer(0): [ConstructorFieldInit] constructor init of field i
1209712127# 1539| Type = [IntType] int
1209812128# 1539| ValueCategory = prvalue
12099- # 1539| getExpr(): [FieldAccess ] i
12129+ # 1539| getExpr(): [ReferenceFieldAccess ] i
1210012130# 1539| Type = [IntType] int
1210112131# 1539| ValueCategory = prvalue(load)
1210212132# 1539| getQualifier(): [VariableAccess] (unnamed parameter 0)
1210312133# 1539| Type = [LValueReferenceType] const StructuredBindingTupleRefGet &
1210412134# 1539| ValueCategory = prvalue(load)
12135+ # 1539| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
12136+ # 1539| Type = [SpecifiedType] const StructuredBindingTupleRefGet
12137+ # 1539| ValueCategory = lvalue
1210512138# 1539| getInitializer(1): [ConstructorFieldInit] constructor init of field d
1210612139# 1539| Type = [DoubleType] double
1210712140# 1539| ValueCategory = prvalue
12108- # 1539| getExpr(): [FieldAccess ] d
12141+ # 1539| getExpr(): [ReferenceFieldAccess ] d
1210912142# 1539| Type = [DoubleType] double
1211012143# 1539| ValueCategory = prvalue(load)
1211112144# 1539| getQualifier(): [VariableAccess] (unnamed parameter 0)
1211212145# 1539| Type = [LValueReferenceType] const StructuredBindingTupleRefGet &
1211312146# 1539| ValueCategory = prvalue(load)
12147+ # 1539| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
12148+ # 1539| Type = [SpecifiedType] const StructuredBindingTupleRefGet
12149+ # 1539| ValueCategory = lvalue
1211412150# 1539| getInitializer(2): [ConstructorFieldInit] constructor init of field r
1211512151# 1539| Type = [LValueReferenceType] int &
1211612152# 1539| ValueCategory = prvalue
12117- # 1539| getExpr(): [FieldAccess ] r
12153+ # 1539| getExpr(): [ReferenceFieldAccess ] r
1211812154# 1539| Type = [LValueReferenceType] int &
1211912155# 1539| ValueCategory = prvalue(load)
1212012156# 1539| getQualifier(): [VariableAccess] (unnamed parameter 0)
1212112157# 1539| Type = [LValueReferenceType] const StructuredBindingTupleRefGet &
1212212158# 1539| ValueCategory = prvalue(load)
12159+ # 1539| getQualifier().getFullyConverted(): [ReferenceDereferenceExpr] (reference dereference)
12160+ # 1539| Type = [SpecifiedType] const StructuredBindingTupleRefGet
12161+ # 1539| ValueCategory = lvalue
1212312162# 1539| getEntryPoint(): [BlockStmt] { ... }
1212412163# 1539| getStmt(0): [ReturnStmt] return ...
1212512164# 1539| [MoveConstructor] void StructuredBindingTupleRefGet::StructuredBindingTupleRefGet(StructuredBindingTupleRefGet&&)
0 commit comments