hnrklssn wrote:

This change leads to a crash in the following case:
```
struct S {
};

union U {
    struct S s;
    int x;
};

void foo() {
    union U bar = {};
}
```
`isEmptyRecordForLayout` returns false for `union U` because the recursive call 
for `U::x` returns false. This means we call `Init->HasSideEffects()` despite 
`Init` being null (because `ILE->getNumInits()` is `0`).

https://github.com/llvm/llvm-project/pull/96422
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to