[Bug ipa/80899] [5/6/7/8 Regression] Devirtualization causes incorrect code generation with placement new in some cases
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80899 Andrew Pinski changed: What|Removed |Added Target Milestone|--- |5.5
[Bug c/80898] New: wrong code at -O2 and -O3 in both 32-bit and 64-bit modes on x86_64-linux-gnu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80898 Bug ID: 80898 Summary: wrong code at -O2 and -O3 in both 32-bit and 64-bit modes on x86_64-linux-gnu Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: chengniansun at gmail dot com Target Milestone: --- $ gcc-trunk -v Using built-in specs. COLLECT_GCC=gcc-trunk COLLECT_LTO_WRAPPER=/usr/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/8.0.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../gcc-source-trunk/configure --enable-languages=c,c++,lto --prefix=/usr/local/gcc-trunk --disable-bootstrap Thread model: posix gcc version 8.0.0 20170527 (experimental) [trunk revision 248540] (GCC) $ $ gcc-trunk -m32 -O3 small.c ; ./a.out 0 $ gcc-trunk -m32 -Os small.c ; ./a.out 3 $ cat small.c int printf(const char *, ...); struct S0 { int f0 : 24; int f1; int f74; } a, *c = &a; struct S0 fn1() { struct S0 b = {4, 3}; return b; } int main() { *c = fn1(); printf("%d\n", a.f1); return 0; } $ --- Comment #1 from Chengnian Sun --- *** Bug 80900 has been marked as a duplicate of this bug. ***
[Bug c/80900] New: wrong code at -O2 and -O3 in both 32-bit and 64-bit modes on x86_64-linux-gnu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80900 Bug ID: 80900 Summary: wrong code at -O2 and -O3 in both 32-bit and 64-bit modes on x86_64-linux-gnu Product: gcc Version: unknown Status: RESOLVED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: chengniansun at gmail dot com CC: chengniansun at gmail dot com Target Milestone: --- Status: RESOLVED CC: chengniansun at gmail dot com Resolution: DUPLICATE $ gcc-trunk -v Using built-in specs. COLLECT_GCC=gcc-trunk COLLECT_LTO_WRAPPER=/usr/local/gcc-trunk/libexec/gcc/x86_64-pc-linux-gnu/8.0.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../gcc-source-trunk/configure --enable-languages=c,c++,lto --prefix=/usr/local/gcc-trunk --disable-bootstrap Thread model: posix gcc version 8.0.0 20170527 (experimental) [trunk revision 248540] (GCC) $ $ gcc-trunk -m32 -O3 small.c ; ./a.out 0 $ gcc-trunk -m32 -Os small.c ; ./a.out 3 $ cat small.c int printf(const char *, ...); struct S0 { int f0 : 24; int f1; int f74; } a, *c = &a; struct S0 fn1() { struct S0 b = {4, 3}; return b; } int main() { *c = fn1(); printf("%d\n", a.f1); return 0; } $ --- Comment #1 from Chengnian Sun --- Reported twice due to gateway timeout. *** This bug has been marked as a duplicate of bug 80898 ***
[Bug tree-optimization/80899] New: Devirtualization causes incorrect code generation with placement new in some cases
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80899 Bug ID: 80899 Summary: Devirtualization causes incorrect code generation with placement new in some cases Product: gcc Version: 7.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: pinskia at gcc dot gnu.org Target Milestone: --- From https://bugs.linaro.org/show_bug.cgi?id=2957: Take: #include struct base { virtual void f() =0; }; template struct foo: base { virtual void f() { if (sizeof(T) != sizeof(int)) __builtin_abort(); } }; template struct bar { void set() { val = new (&mem) foo (); } void doit() { val->f(); } foo mem; base *val; }; int main() { bar b; b.set(); b.doit(); return 0; } --- CUT --- This code should not abort as the dynamic type of val is foo due to the placement new in the call in set. But currently aborts at -O2 and above due to the devirtualization deciding the type is statically known as foo.
[Bug fortran/35339] Improve translation of implied do loop in transfer
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=35339 Nicolas Koenig changed: What|Removed |Added Attachment #41420|0 |1 is obsolete|| --- Comment #9 from Nicolas Koenig --- Created attachment 41430 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=41430&action=edit Proposed patch for simplifying impl do loops Fixed the bugs, it works now. I will submit it later this day. @Jerry: This isn't the entire solution, I fear there will have to be changes in trans-io.c to completely fix this PR ;)
[Bug target/80865] broken compilation on Mac OS X 10.5 / powerpc: unrecognizable insn
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80865 --- Comment #1 from Iain Sandoe --- please could you apply the patches attached to : https://gcc.gnu.org/ml/gcc-testresults/2017-01/msg02971.html I suspect that you're reporting a pre-existing condition. now we're back in stage #1 - we could post them for approval, and then back-port for 7.2
[Bug ada/80897] New: [8.0] [sparc64] GNAT BUG , 20170520 (experimental) [trunk 248308]
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80897 Bug ID: 80897 Summary: [8.0] [sparc64] GNAT BUG , 20170520 (experimental) [trunk 248308] Product: gcc Version: 8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada Assignee: unassigned at gcc dot gnu.org Reporter: matorola at gmail dot com Target Milestone: --- Hello! I'm unable to compile gcc-snapshot on debian sid sparc64. ... +===GNAT BUG DETECTED==+ | 8.0.0 20170520 (experimental) [trunk revision 248308] (sparc64-linux-gnu) | | Storage_Error stack overflow or erroneous memory access | | Error detected at s-finroo.ads:44:4 | | Please submit a bug report; see https://gcc.gnu.org/bugs/ . | | Use a subject line meaningful to you and us to track the bug.| | Include the entire contents of this bug box in the report. | | Include the exact command that you entered. | | Also include sources listed below. | +==+ Please include these source files with error report Note that list may not be accurate in some cases, so please double check that the problem can still be reproduced with the set of files listed. Consider also -gnatd.n switch (see debug.adb). system.ads a-btgbso.adb a-btgbso.ads a-crbltr.ads a-contai.ads ada.ads a-conhel.ads a-finali.ads s-finroo.ads s-atocou.ads a-rbtgbo.ads a-stream.ads a-tags.ads s-stoele.ads s-exctab.ads s-stalib.ads a-unccon.ads s-soflin.ads a-except.ads s-parame.ads s-traent.ads s-stache.ads compilation abandoned Example of a full compilation log could be found at https://buildd.debian.org/status/fetch.php?pkg=gcc-snapshot&arch=sparc64&ver=20170520-1&stamp=1495313191&raw=0 I'm getting the same error message on my box (debian sparc64 sid), same gcc-snapshot version.
[Bug c++/80896] New: [[nodiscard]] is ignored for functions returning references
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80896 Bug ID: 80896 Summary: [[nodiscard]] is ignored for functions returning references Product: gcc Version: 7.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: iamsupermouse at mail dot ru Target Milestone: --- Following produces no warnings: int x = 42; [[nodiscard]] int &func() {return x;} int main() {func();} But removing the `&` brings the warning back. (`warning: ignoring return value of '…', declared with attribute nodiscard [-Wunused-result]`) No flags are needed to reproduce. -Wall, -Wextra, -pedantic-errors, or -std=c++17 change nothing. g++ --version g++ (i686-posix-dwarf-rev0, Built by MinGW-W64 project) 7.1.0 Copyright (C) 2017 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[Bug tree-optimization/80894] [8 Regression] 456.hmmer in SPEC CPU 2006 is miscompiled
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80894 --- Comment #3 from Marc Glisse --- I built the latest version of hmmer from upstream on x86_64-linux and make check succeeded. I did it again with -O2 -ffast-math -funsigned-char in CFLAGS, and got a single failure in sse-utest both with my patch and before.
[Bug tree-optimization/80894] [8 Regression] 456.hmmer in SPEC CPU 2006 is miscompiled
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80894 --- Comment #2 from Marc Glisse --- Is there a way I can reproduce that? I don't think I have access to SPEC. Would using a regular upstream hmmer work? Is that just running make test? Or do you have before/after dumps?
[Bug bootstrap/80887] gnat bootstrap fails at s-regpat.o: raised STORAGE_ERROR : stack overflow or erroneous memory access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80887 --- Comment #7 from Jakub Jelinek --- Author: jakub Date: Sat May 27 07:46:12 2017 New Revision: 248533 URL: https://gcc.gnu.org/viewcvs?rev=248533&root=gcc&view=rev Log: PR bootstrap/80887 2017-05-25 Marc Glisse * match.pd ((A +- CST1) +- CST2): Allow some conversions. * gcc.dg/tree-ssa/addadd.c: Xfail all scan-tree-dump*. Modified: trunk/gcc/ChangeLog trunk/gcc/match.pd trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/tree-ssa/addadd.c