https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104084
--- Comment #4 from Allan Jensen ---
Created attachment 52217
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52217&action=edit
-E output
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104084
--- Comment #3 from Allan Jensen ---
-v output:
Using built-in specs.
COLLECT_GCC=/opt/gcc/bin/g++-12
Target: x86_64-pc-linux-gnu
Configured with: ../configure --enable-languages=c,c++ --prefix=/opt/gcc
--program-suffix=-12
Thread model: posix
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104084
--- Comment #2 from Allan Jensen ---
Removing the (std::nothrow), and declaring the untagged new operator (instead
of declaring them deleted), seems to work around the issue.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104084
Bug ID: 104084
Summary: [12 regression] Internal compiler error: tree check:
expected target_expr, have compound_expr in
build_new_1
Product: gcc
Version: 12.0
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104078
Bug ID: 104078
Summary: Some type determination weirdness
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=31667
--- Comment #6 from Allan Jensen ---
(In reply to Andrew Pinski from comment #5)
> We produce this now:
>
> movdqa x(%rip), %xmm1
> pxor%xmm0, %xmm0
> movdqa %xmm1, %xmm2
> punpckhbw %xmm0, %xmm1
>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78394
--- Comment #17 from Allan Jensen ---
Yes, if you can figure out exactly what optimization passes it needs, then we
could disable the warning when those passes are disabled.