File tree Expand file tree Collapse file tree 2 files changed +6
-0
lines changed Expand file tree Collapse file tree 2 files changed +6
-0
lines changed Original file line number Diff line number Diff line change @@ -1448,6 +1448,8 @@ template <PrimType Name, class T = typename PrimConv<Name>::T>
1448
1448
bool InitElem (InterpState &S, CodePtr OpPC, uint32_t Idx) {
1449
1449
const T &Value = S.Stk .pop <T>();
1450
1450
const Pointer &Ptr = S.Stk .peek <Pointer>().atIndex (Idx);
1451
+ if (Ptr.isUnknownSizeArray ())
1452
+ return false ;
1451
1453
if (!CheckInit (S, OpPC, Ptr))
1452
1454
return false ;
1453
1455
Ptr.initialize ();
@@ -1460,6 +1462,8 @@ template <PrimType Name, class T = typename PrimConv<Name>::T>
1460
1462
bool InitElemPop (InterpState &S, CodePtr OpPC, uint32_t Idx) {
1461
1463
const T &Value = S.Stk .pop <T>();
1462
1464
const Pointer &Ptr = S.Stk .pop <Pointer>().atIndex (Idx);
1465
+ if (Ptr.isUnknownSizeArray ())
1466
+ return false ;
1463
1467
if (!CheckInit (S, OpPC, Ptr))
1464
1468
return false ;
1465
1469
Ptr.initialize ();
Original file line number Diff line number Diff line change @@ -138,6 +138,8 @@ constexpr int dependent[4] = {
138
138
static_assert (dependent[2 ] == dependent[0 ], " " );
139
139
static_assert (dependent[3 ] == dependent[1 ], " " );
140
140
141
+ union { char x[]; } r = {0 };
142
+
141
143
#pragma clang diagnostic push
142
144
#pragma clang diagnostic ignored "-Wc99-extensions"
143
145
#pragma clang diagnostic ignored "-Winitializer-overrides"
You can’t perform that action at this time.
0 commit comments