File tree Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -1220,14 +1220,18 @@ bool ByteCodeExprGen<Emitter>::VisitArrayInitLoopExpr(
1220
1220
1221
1221
template <class Emitter >
1222
1222
bool ByteCodeExprGen<Emitter>::VisitOpaqueValueExpr(const OpaqueValueExpr *E) {
1223
+ const Expr *SourceExpr = E->getSourceExpr ();
1224
+ if (!SourceExpr)
1225
+ return false ;
1226
+
1223
1227
if (Initializing)
1224
- return this ->visitInitializer (E-> getSourceExpr () );
1228
+ return this ->visitInitializer (SourceExpr );
1225
1229
1226
- PrimType SubExprT = classify (E-> getSourceExpr () ).value_or (PT_Ptr);
1230
+ PrimType SubExprT = classify (SourceExpr ).value_or (PT_Ptr);
1227
1231
if (auto It = OpaqueExprs.find (E); It != OpaqueExprs.end ())
1228
1232
return this ->emitGetLocal (SubExprT, It->second , E);
1229
1233
1230
- if (!this ->visit (E-> getSourceExpr () ))
1234
+ if (!this ->visit (SourceExpr ))
1231
1235
return false ;
1232
1236
1233
1237
// At this point we either have the evaluated source expression or a pointer
You can’t perform that action at this time.
0 commit comments