https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110158

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Here is a slightly reduced testcase (for a slightly different issue still
dealing with unions):
```
struct str1
{
//  bool a;
  char *var;
  union {
    char t[15];
    int allocated;
  };
  constexpr str1() : var(new char[2]) { t[0] = 0; }
  constexpr ~str1() {if (var != t) delete[] var; }
};

typedef str1 str;
constexpr bool f1() {
        str t{};
        return true;
}
static_assert( f1() );

constexpr bool f() {
    union U{
        str s;
        constexpr ~U(){ s.~str(); }
    } u{};
    return true;
}

static_assert( f() );

```

Reply via email to