@@ -1824,7 +1824,7 @@ class SyclKernelBodyCreator : public SyclKernelFieldHandler {
1824
1824
addFieldInit (FD, Ty, ParamRef);
1825
1825
}
1826
1826
1827
- MemberExpr *BuildMemberExpr (Expr *Base, const ValueDecl *Member) {
1827
+ MemberExpr *BuildMemberExpr (Expr *Base, ValueDecl *Member) {
1828
1828
DeclAccessPair MemberDAP = DeclAccessPair::make (Member, AS_none);
1829
1829
MemberExpr *Result = SemaRef.BuildMemberExpr (
1830
1830
Base, /* IsArrow */ false , SourceLocation (), NestedNameSpecifierLoc (),
@@ -1835,13 +1835,13 @@ class SyclKernelBodyCreator : public SyclKernelFieldHandler {
1835
1835
return Result;
1836
1836
}
1837
1837
1838
- void AddFieldMemberExpr (const FieldDecl *FD, QualType Ty) {
1839
- if (!IsArrayType (FD, Ty))
1838
+ void AddFieldMemberExpr (FieldDecl *FD, QualType Ty) {
1839
+ if (!IsArrayElement (FD, Ty))
1840
1840
MemberExprBases.push_back (BuildMemberExpr (MemberExprBases.back (), FD));
1841
1841
}
1842
1842
1843
1843
void RemoveFieldMemberExpr (const FieldDecl *FD, QualType Ty) {
1844
- if (!IsArrayType (FD, Ty))
1844
+ if (!IsArrayElement (FD, Ty))
1845
1845
MemberExprBases.pop_back ();
1846
1846
}
1847
1847
@@ -2107,7 +2107,7 @@ class SyclKernelBodyCreator : public SyclKernelFieldHandler {
2107
2107
2108
2108
// If this is the top-level array, we need to make a MemberExpr in addition
2109
2109
// to an array subscript.
2110
- AddFieldMemberExpr (FD, Ty );
2110
+ AddFieldMemberExpr (FD, ArrayType );
2111
2111
return true ;
2112
2112
}
2113
2113
@@ -2149,7 +2149,7 @@ class SyclKernelBodyCreator : public SyclKernelFieldHandler {
2149
2149
MemberExprBases.pop_back ();
2150
2150
2151
2151
// Remove the field access expr as well.
2152
- AddFieldMemberExpr (FD, Ty );
2152
+ RemoveFieldMemberExpr (FD, ArrayType );
2153
2153
return true ;
2154
2154
}
2155
2155
0 commit comments