[Bug ada/87715] problems with asan and -O3 build of ada

2018-11-04 Thread dcb314 at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87715

--- Comment #4 from David Binderman  ---

Line is 

/home/dcb/gcc/working/./prev-gcc/xgcc -B/home/dcb/gcc/working/./prev-gcc/
-B/usr
/local/x86_64-pc-linux-gnu/bin/ -B/usr/local/x86_64-pc-linux-gnu/bin/
-B/usr/loc
al/x86_64-pc-linux-gnu/lib/ -isystem /usr/local/x86_64-pc-linux-gnu/include
-isy
stem /usr/local/x86_64-pc-linux-gnu/sys-include   -fchecking=1 -c -g -O3
-Wlogic
al-op -fchecking=1 -fsanitize=address  -gnatpg  -W -Wall -nostdinc -I- -I.
-Iada
/generated -Iada -I../../trunk/gcc/ada -I../../trunk/gcc/ada/gcc-interface
-Iada
/libgnat -I../../trunk/gcc/ada/libgnat ../../trunk/gcc/ada/sem_aggr.adb -o
ada/s
em_aggr.o

[Bug tree-optimization/87873] [9 Regression] ICE: verify_gimple failed (error: incompatible types in PHI argument 0)

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87873

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-11-05
 CC||marxin at gcc dot gnu.org,
   ||rguenth at gcc dot gnu.org
   Target Milestone|--- |9.0
 Ever confirmed|0   |1

--- Comment #1 from Martin Liška  ---
Confirmed, started with r265489.

[Bug c++/60503] gcc looks for C++ attributes in the wrong place in a lambda-expression

2018-11-04 Thread jason at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60503

--- Comment #1 from Jason Merrill  ---
Author: jason
Date: Mon Nov  5 07:46:52 2018
New Revision: 265787

URL: https://gcc.gnu.org/viewcvs?rev=265787=gcc=rev
Log:
PR c++/60503 - wrong lambda attribute syntax.

This patch fixes two issues with lambda attribute handling: First, it was in
the wrong place in the grammar.  Second, it was treating attributes as
applying to the whole declaration rather than to the function type, as
specified by the standard.

* parser.c (cp_parser_lambda_declarator_opt): Fix attribute
handling.

Added:
trunk/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-attr1.C
trunk/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-attr2.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/parser.c

[Bug rtl-optimization/87874] [8/9 Regression] ICE in simplify_subreg, at simplify-rtx.c:6396

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87874

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-11-05
 CC||marxin at gcc dot gnu.org
  Known to work||7.2.0
   Target Milestone|--- |8.3
 Ever confirmed|0   |1
  Known to fail||8.2.0, 9.0

--- Comment #1 from Martin Liška  ---
Confirmed, started with my commit r256888, but it was a latent issue before
that.

[Bug middle-end/87813] sprintf pass calling evrp at -O0 and setting global ranges which affect strnlen expansion

2018-11-04 Thread aldyh at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87813

--- Comment #6 from Aldy Hernandez  ---
(In reply to Martin Sebor from comment #5)
> The sprintf pass doesn't do any optimization at -O0 but it still runs to
> diagnose the subset of mistakes that are detectable even without
> optimization.

Yes, but my point is that the way things are laid out right now, we are running
full evrp at -Og and *that* seems like an optimization, because it's affecting
the IL later on.

[Bug gcov-profile/77698] Unrolled loop not considered hot after profiling

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77698

Martin Liška  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #10 from Martin Liška  ---
Fix on trunk.

[Bug web/87829] Contradiction about -fReorder-Blocks

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87829

Martin Liška  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Martin Liška  ---
Fixed on trunk.

[Bug c/87811] [9 Regression] ICE with __builtin_expect_with_probability

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87811

--- Comment #2 from Martin Liška  ---
Author: marxin
Date: Mon Nov  5 07:33:30 2018
New Revision: 265785

URL: https://gcc.gnu.org/viewcvs?rev=265785=gcc=rev
Log:
Verify that last argument of __builtin_expect_with_probability is a real cst
(PR c/87811).

2018-11-05  Martin Liska  

PR c/87811
* predict.c (expr_expected_value_1): Verify
that last argument is a real constants and emit
error.
2018-11-05  Martin Liska  

PR c/87811
* gcc.dg/pr87811.c: New test.
* gcc.dg/pr87811-2.c: Likewise.
* gcc.dg/pr87811-3.c: Likewise.
2018-11-05  Martin Liska  

PR c/87811
* doc/extend.texi: Update constrain about the last argument
of __builtin_expect_with_probability.

Added:
trunk/gcc/testsuite/gcc.dg/pr87811-2.c
trunk/gcc/testsuite/gcc.dg/pr87811-3.c
trunk/gcc/testsuite/gcc.dg/pr87811.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/doc/extend.texi
trunk/gcc/predict.c
trunk/gcc/testsuite/ChangeLog

[Bug c/87811] [9 Regression] ICE with __builtin_expect_with_probability

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87811

Martin Liška  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Martin Liška  ---
Fixed on trunk.

[Bug web/87829] Contradiction about -fReorder-Blocks

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87829

--- Comment #3 from Martin Liška  ---
Author: marxin
Date: Mon Nov  5 07:33:58 2018
New Revision: 265786

URL: https://gcc.gnu.org/viewcvs?rev=265786=gcc=rev
Log:
Remove options that are not disabled with -Os (PR web/87829).

2018-11-05  Martin Liska  

PR web/87829
* doc/invoke.texi: Remove options that are
not disabled with -Os.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/doc/invoke.texi

[Bug gcov-profile/77698] Unrolled loop not considered hot after profiling

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77698

--- Comment #9 from Martin Liška  ---
Author: marxin
Date: Mon Nov  5 07:32:48 2018
New Revision: 265784

URL: https://gcc.gnu.org/viewcvs?rev=265784=gcc=rev
Log:
Fix setting of hotness in non-LTO mode (PR gcov-profile/77698).

2018-11-05  Martin Liska  

PR gcov-profile/77698
* ipa-profile.c (ipa_profile): Adjust hotness threshold
only in LTO mode.
2018-11-05  Martin Liska  

PR gcov-profile/77698
* gcc.dg/tree-prof/pr77698.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/tree-prof/pr77698.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-profile.c
trunk/gcc/testsuite/ChangeLog

[Bug target/87583] error: unrecognizable insn on ppc64le

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87583

--- Comment #2 from Martin Liška  ---
Any progress on that Segher?

[Bug c/87806] Option -Wall should warn about unused structs, typdefs, enums, etc

2018-11-04 Thread Ulrich.Windl at rz dot uni-regensburg.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87806

--- Comment #8 from Ulrich Windl  ---
(In reply to Jonathan Wakely from comment #6)
> I don't think there are any, only for local typedefs. That's already enabled
> by -Wall so I assumed this was a request to add a new warning *and* enable
> it in -Wall.

In gcc 8.2.1 I do not get a warning about an unused typedef (at file scope)
with -Wall.

[Bug c/87806] Option -Wall should warn about unused structs, typdefs, enums, etc

2018-11-04 Thread Ulrich.Windl at rz dot uni-regensburg.de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87806

--- Comment #7 from Ulrich Windl  ---
(In reply to Tavian Barnes from comment #4)
> Perhaps this is reasonable for types that are defined in the file itself,
> not in an included header?

That's what I was thinking about. However it seems the compiler does not know
automatically what is an include file and what is a normal compilation unit (C
file).  Therefore I had suggested pragmas for the include files.

[Bug c/87877] dyld: Library not loaded

2018-11-04 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87877

Andrew Pinski  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #2 from Andrew Pinski  ---
You installed a binary version of GCC which requires libmpfr to be installed in
/usr/local/lib but it is not there.  There is nothing for us to support as we
don't provide binaries and that if you compile libmpfr as part of the GCC
build, it would have built it statically.

[Bug c/87878] dyld: Library not loaded

2018-11-04 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87878

Andrew Pinski  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #1 from Andrew Pinski  ---
.

*** This bug has been marked as a duplicate of bug 87877 ***

[Bug c/87877] dyld: Library not loaded

2018-11-04 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87877

--- Comment #1 from Andrew Pinski  ---
*** Bug 87878 has been marked as a duplicate of this bug. ***

[Bug c/87878] New: dyld: Library not loaded

2018-11-04 Thread antonipascual85 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87878

Bug ID: 87878
   Summary: dyld: Library not loaded
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: antonipascual85 at gmail dot com
  Target Milestone: ---

Antonio ~ $ gcc firstprog.c
dyld: Library not loaded: /usr/local/lib/libmpfr.4.dylib
  Referenced from: /usr/local/libexec/gcc/x86_64-apple-darwin15.0.0/5.3.0/cc1
  Reason: image not found
gcc: internal compiler error: Abort trap: 6 (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.

[Bug c/87877] New: dyld: Library not loaded

2018-11-04 Thread antonipascual85 at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87877

Bug ID: 87877
   Summary: dyld: Library not loaded
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: antonipascual85 at gmail dot com
  Target Milestone: ---

Antonio ~ $ gcc firstprog.c
dyld: Library not loaded: /usr/local/lib/libmpfr.4.dylib
  Referenced from: /usr/local/libexec/gcc/x86_64-apple-darwin15.0.0/5.3.0/cc1
  Reason: image not found
gcc: internal compiler error: Abort trap: 6 (program cc1)
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.

[Bug c++/87469] [9 Regression] ice in record_estimate, at tree-ssa-loop-niter.c:3271

2018-11-04 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87469

Arseny Solokha  changed:

   What|Removed |Added

 CC||asolokha at gmx dot com

--- Comment #6 from Arseny Solokha  ---
I believe this PR can be closed now.

[Bug middle-end/79221] missing -Wstringop-overflow= on a strcat overflow

2018-11-04 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79221

Eric Gallager  changed:

   What|Removed |Added

 CC||dmalcolm at gcc dot gnu.org,
   ||dodji at gcc dot gnu.org

--- Comment #2 from Eric Gallager  ---
cc-ing diagnostics maintainers

[Bug tree-optimization/79191] potentially truncating unsigned conversion defeats range propagation

2018-11-04 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79191

--- Comment #4 from Eric Gallager  ---
Where exactly in the compiler is this optimization supposed to be done and
who's the maintainer of that file?

[Bug d/87866] gdc fails to compile minimal test

2018-11-04 Thread ibuclaw at gdcproject dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87866

--- Comment #1 from Iain Buclaw  ---
I backported a fix from the D sources so it should no longer segfault at least.

From what I can see, it should pick up the object.d source correctly.

-nostdinc -I /vol/gcc/src/hg/trunk/local/libphobos/libdruntime 

Unless it really isn't in the -I path.

[Bug d/87865] gdc doesn't build unless assert is marked noreturn

2018-11-04 Thread ibuclaw at gdcproject dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87865

Iain Buclaw  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #7 from Iain Buclaw  ---
It required removing all system includes from all dmd frontend sources, but I
think this OK now.  I have verified that gcc_assert() is being called now
instead of assert().

[Bug d/87865] gdc doesn't build unless assert is marked noreturn

2018-11-04 Thread ibuclaw at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87865

--- Comment #6 from ibuclaw at gcc dot gnu.org ---
Author: ibuclaw
Date: Sun Nov  4 23:34:44 2018
New Revision: 265780

URL: https://gcc.gnu.org/viewcvs?rev=265780=gcc=rev
Log:
Merge dmd upstream 6243fa6d2

This introduces a new header that pulls in system includes for use only
in the DMD front-end part of the compiler, fixing up uses of problematic
functions that are prevalent throughout the code.

Commits merged from dmd.

Fix build of the D frontend on the Hurd and KFreeBSD.
Initial patch from Matthias Klose.
https://github.com/dlang/dmd/pull/8893

Don't care about D/C++ compatibility in C++ port.
Fixes build error in https://gcc.gnu.org/PR87788
https://github.com/dlang/dmd/pull/8895

Allow compiling front-end headers with strict warnings.
https://github.com/dlang/dmd/pull/8909

Add root/system.h header for wrapping system includes.
Fixes https://gcc.gnu.org/PR87865
https://github.com/dlang/dmd/pull/8910

Move checkedint to dmd/root.
https://github.com/dlang/dmd/pull/8912

Use rmem instead of libc for malloc() and strdup().
https://github.com/dlang/dmd/pull/8913

Use align(8) for alignment of UnionExp, fixing several BUS errors
due to alignment issues on SPARC.
https://github.com/dlang/dmd/pull/8914

Don't pass NULL pointer as format parameter to errorSupplemental.
https://github.com/dlang/dmd/pull/8916

gcc/d/ChangeLog:

2018-11-05  Iain Buclaw  

PR d/87865
* d-system.h: New file.

Added:
trunk/gcc/d/d-system.h
trunk/gcc/d/dmd/MERGE
trunk/gcc/d/dmd/root/checkedint.c
  - copied, changed from r265778, trunk/gcc/d/dmd/checkedint.c
trunk/gcc/d/dmd/root/checkedint.h
  - copied, changed from r265778, trunk/gcc/d/dmd/checkedint.h
trunk/gcc/d/dmd/root/dsystem.h
Removed:
trunk/gcc/d/dmd/checkedint.c
trunk/gcc/d/dmd/checkedint.h
trunk/gcc/d/dmd/unittests.c
Modified:
trunk/gcc/d/ChangeLog
trunk/gcc/d/dmd/access.c
trunk/gcc/d/dmd/aggregate.h
trunk/gcc/d/dmd/aliasthis.c
trunk/gcc/d/dmd/aliasthis.h
trunk/gcc/d/dmd/apply.c
trunk/gcc/d/dmd/argtypes.c
trunk/gcc/d/dmd/arrayop.c
trunk/gcc/d/dmd/attrib.c
trunk/gcc/d/dmd/attrib.h
trunk/gcc/d/dmd/canthrow.c
trunk/gcc/d/dmd/clone.c
trunk/gcc/d/dmd/compiler.h
trunk/gcc/d/dmd/cond.c
trunk/gcc/d/dmd/constfold.c
trunk/gcc/d/dmd/cppmangle.c
trunk/gcc/d/dmd/ctfeexpr.c
trunk/gcc/d/dmd/dcast.c
trunk/gcc/d/dmd/dclass.c
trunk/gcc/d/dmd/declaration.c
trunk/gcc/d/dmd/declaration.h
trunk/gcc/d/dmd/delegatize.c
trunk/gcc/d/dmd/denum.c
trunk/gcc/d/dmd/dimport.c
trunk/gcc/d/dmd/dinterpret.c
trunk/gcc/d/dmd/dmacro.c
trunk/gcc/d/dmd/dmangle.c
trunk/gcc/d/dmd/dmodule.c
trunk/gcc/d/dmd/doc.c
trunk/gcc/d/dmd/doc.h
trunk/gcc/d/dmd/dscope.c
trunk/gcc/d/dmd/dstruct.c
trunk/gcc/d/dmd/dsymbol.c
trunk/gcc/d/dmd/dsymbol.h
trunk/gcc/d/dmd/dtemplate.c
trunk/gcc/d/dmd/dversion.c
trunk/gcc/d/dmd/entity.c
trunk/gcc/d/dmd/enum.h
trunk/gcc/d/dmd/errors.h
trunk/gcc/d/dmd/expression.c
trunk/gcc/d/dmd/expression.h
trunk/gcc/d/dmd/expressionsem.c
trunk/gcc/d/dmd/func.c
trunk/gcc/d/dmd/globals.h
trunk/gcc/d/dmd/hdrgen.c
trunk/gcc/d/dmd/hdrgen.h
trunk/gcc/d/dmd/identifier.c
trunk/gcc/d/dmd/idgen.c
trunk/gcc/d/dmd/impcnvgen.c
trunk/gcc/d/dmd/imphint.c
trunk/gcc/d/dmd/import.h
trunk/gcc/d/dmd/init.c
trunk/gcc/d/dmd/initsem.c
trunk/gcc/d/dmd/intrange.c
trunk/gcc/d/dmd/json.c
trunk/gcc/d/dmd/lexer.c
trunk/gcc/d/dmd/macro.h
trunk/gcc/d/dmd/mars.h
trunk/gcc/d/dmd/module.h
trunk/gcc/d/dmd/mtype.c
trunk/gcc/d/dmd/nspace.c
trunk/gcc/d/dmd/nspace.h
trunk/gcc/d/dmd/opover.c
trunk/gcc/d/dmd/optimize.c
trunk/gcc/d/dmd/parse.c
trunk/gcc/d/dmd/parse.h
trunk/gcc/d/dmd/root/aav.c
trunk/gcc/d/dmd/root/aav.h
trunk/gcc/d/dmd/root/array.h
trunk/gcc/d/dmd/root/dcompat.h
trunk/gcc/d/dmd/root/file.c
trunk/gcc/d/dmd/root/file.h
trunk/gcc/d/dmd/root/filename.c
trunk/gcc/d/dmd/root/hash.h
trunk/gcc/d/dmd/root/object.h
trunk/gcc/d/dmd/root/outbuffer.c
trunk/gcc/d/dmd/root/outbuffer.h
trunk/gcc/d/dmd/root/port.h
trunk/gcc/d/dmd/root/rmem.c
trunk/gcc/d/dmd/root/rmem.h
trunk/gcc/d/dmd/root/rootobject.c
trunk/gcc/d/dmd/root/speller.c
trunk/gcc/d/dmd/root/stringtable.c
trunk/gcc/d/dmd/sapply.c
trunk/gcc/d/dmd/sideeffect.c
trunk/gcc/d/dmd/statement.c
trunk/gcc/d/dmd/statementsem.c
trunk/gcc/d/dmd/staticassert.c
trunk/gcc/d/dmd/staticassert.h
trunk/gcc/d/dmd/target.h
trunk/gcc/d/dmd/template.h
trunk/gcc/d/dmd/tokens.c
trunk/gcc/d/dmd/traits.c
trunk/gcc/d/dmd/utf.c
trunk/gcc/d/dmd/utf.h
trunk/gcc/d/dmd/utils.c
trunk/gcc/d/dmd/version.h
trunk/gcc/d/dmd/visitor.h

[Bug libstdc++/87872] debug list::splice should not call _M_transfer_from_if on self-splices

2018-11-04 Thread jbytheway at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87872

--- Comment #3 from John Bytheway  ---
Created attachment 44955
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44955=edit
Proposed patch

Sure, here's a proposed patch.  Tested in the sense that I have compiled and
run a program against the changed code, but I have not run the libstdc++ test
suite or similar.

Should affect list::splice and forward_list::splice_after with _GLIBCXX_DEBUG
set.

[Bug tree-optimization/83819] [meta-bug] missing strlen optimizations

2018-11-04 Thread edlinger at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83819
Bug 83819 depends on bug 86572, which changed state.

Bug 86572 Summary: unsafe strlen folding of const arguments with non-const 
offset
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86572

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

[Bug tree-optimization/86572] unsafe strlen folding of const arguments with non-const offset

2018-11-04 Thread edlinger at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86572

Bernd Edlinger  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Bernd Edlinger  ---
fixed.

[Bug tree-optimization/87672] [9 regression] 81512c36 causes ICE in bootstrap stage 3 using "-D_FORTIFY_SOURCE=2" (invalid operand in unary operation, incorrect sharing of tree nodes, verify_gimple

2018-11-04 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87672

Bernd Edlinger  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #14 from Bernd Edlinger  ---
fixed.

[Bug tree-optimization/86572] unsafe strlen folding of const arguments with non-const offset

2018-11-04 Thread edlinger at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86572

--- Comment #3 from Bernd Edlinger  ---
Author: edlinger
Date: Sun Nov  4 19:51:09 2018
New Revision: 265778

URL: https://gcc.gnu.org/viewcvs?rev=265778=gcc=rev
Log:
gcc:
2018-11-04  Bernd Edlinger  

PR tree-optimization/86572
* builtins.c (c_strlen): Handle negative offsets in a safe way.

testsuite:
2018-11-04  Bernd Edlinger  

PR tree-optimization/86572
* gcc.dg/pr86572.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/pr86572.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/builtins.c
trunk/gcc/testsuite/ChangeLog

[Bug tree-optimization/87672] [9 regression] 81512c36 causes ICE in bootstrap stage 3 using "-D_FORTIFY_SOURCE=2" (invalid operand in unary operation, incorrect sharing of tree nodes, verify_gimple

2018-11-04 Thread edlinger at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87672

--- Comment #13 from Bernd Edlinger  ---
Author: edlinger
Date: Sun Nov  4 19:46:08 2018
New Revision: 265777

URL: https://gcc.gnu.org/viewcvs?rev=265777=gcc=rev
Log:
gcc:
2018-11-04  Bernd Edlinger  

PR tree-optimization/87672
* gimple-fold.c (gimple_fold_builtin_stxcpy_chk): Gimplify.
* tree-ssa-strlen.c (handle_builtin_strcat): Adjust object size.

testsuite:
2018-11-04  Bernd Edlinger  

PR tree-optimization/87672
* gcc.dg/pr87672.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/pr87672.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/gimple-fold.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-strlen.c

[Bug c++/58372] internal compiler error: ix86_compute_frame_layout

2018-11-04 Thread uros at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58372

--- Comment #41 from uros at gcc dot gnu.org ---
Author: uros
Date: Sun Nov  4 19:22:50 2018
New Revision: 265776

URL: https://gcc.gnu.org/viewcvs?rev=265776=gcc=rev
Log:
PR middle-end/58372
* cfgexpand.c (pass_expand::execute): Move the call to
finish_eh_generation in front of the call to expand_stack_alignment.

testsuite/ChangeLog:

PR middle-end/58372
* g++.target/i386/pr58372.C: New test.


Added:
trunk/gcc/testsuite/g++.target/i386/pr58372.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cfgexpand.c
trunk/gcc/testsuite/ChangeLog

[Bug d/87865] gdc doesn't build unless assert is marked noreturn

2018-11-04 Thread ibuclaw at gdcproject dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87865

--- Comment #5 from Iain Buclaw  ---
(In reply to r...@cebitec.uni-bielefeld.de from comment #4)
> Given that Solaris 10 support will be removed in GCC 10 and Solaris 11
> has no problem here, I guess dealing with this isn't worth the trouble:
> better concentrate on the bugs affecting Solaris 11 (11.4 first, than
> 11.3 if possible).
> 
>   Rainer

I already have a patch ready that wraps around system.h, instead of each dmd
front-end source pulling in the host headers themselves, they just include
d-system.h.

Just forwarding assert to gcc_assert should be enough.  I see no harm in
applying it.

Just waiting for it to pass review in upstream dmd.



--- /dev/null
+++ b/gcc/d/d-system.h
@@ -0,0 +1,53 @@
+/* d-system.h -- dmd frontend inclusion of gcc header files.
+ * Copyright (C) 2018 Free Software Foundation, Inc.
+ *
+ * GCC is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3, or (at your option)
+ * any later version.
+ *
+ * GCC is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GCC; see the file COPYING3.  If not see
+ * .
+ */
+
+#ifndef GCC_D_SYSTEM_H
+#define GCC_D_SYSTEM_H
+
+#include "config.h"
+#include "system.h"
+
+/* Used by the dmd front-end to determine if we have POSIX-style IO.  */
+#define POSIX (__linux__ || __GLIBC__ || __gnu_hurd__ || __APPLE__ \
+  || __FreeBSD__ || __OpenBSD__ || __sun)
+
+/* Forward assert invariants to gcc_assert.  */
+#undef assert
+#define assert(EXPR) gcc_assert(EXPR)
+
+/* Forward ctype.h routines to safe-ctype.h.  */
+#undef isalpha
+#define isalpha(c) ISALPHA(c)
+#undef isalnum
+#define isalnum(c) ISALNUM(c)
+#undef isdigit
+#define isdigit(c) ISDIGIT(c)
+#undef islower
+#define islower(c) ISLOWER(c)
+#undef isprint
+#define isprint(c) ISPRINT(c)
+#undef isspace
+#define isspace(c) ISSPACE(c)
+#undef isupper
+#define isupper(c) ISUPPER(c)
+#undef isxdigit
+#define isxdigit(c) ISXDIGIT(c)
+#undef tolower
+#define tolower(c) TOLOWER(c)
+
+#endif  /* GCC_D_SYSTEM_H  */

[Bug d/87876] Mac failing: conversion from longdouble to long int is ambiguous

2018-11-04 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87876

Eric Gallager  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||egallager at gcc dot gnu.org
 Resolution|--- |DUPLICATE

--- Comment #1 from Eric Gallager  ---
Dup of bug 87788

*** This bug has been marked as a duplicate of bug 87788 ***

[Bug bootstrap/87788] [9 Regression] Bootstrap fails for x86_64-apple-darwin* with default languages selection after D addition.

2018-11-04 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87788

Eric Gallager  changed:

   What|Removed |Added

 CC||mcccs at gmx dot com

--- Comment #15 from Eric Gallager  ---
*** Bug 87876 has been marked as a duplicate of this bug. ***

[Bug d/87865] gdc doesn't build unless assert is marked noreturn

2018-11-04 Thread ro at CeBiTec dot Uni-Bielefeld.DE
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87865

--- Comment #4 from ro at CeBiTec dot Uni-Bielefeld.DE  ---
> --- Comment #3 from Iain Buclaw  ---
> (In reply to r...@cebitec.uni-bielefeld.de from comment #2)
>> > --- Comment #1 from Iain Buclaw  ---
>> > This is part of the dmd frontend which as no interaction with gcc.  So
>> > gcc_unreachable() can't be used here.
>> 
>> I see.  However, if upstream dmc were built with similar warning options
>> than gcc, the problem would exist there as well.
>> 
>> > Sounds like some independent compatibility layer is required here instead.
>> 
>> That's certainly an option.  Among others, what to do here depends on
>> how prevalent the problem is: if Solaris 10 is the only OS affected and
>> the other pre-Solaris 11.4 issues (especially PR d/87865) cannot be
>> resolved for the GCC 9 release, one might as well close the bug as
>> WONTFIX given Solaris 10 is obsoleted in GCC 9.
>
> This would even be automatically fixed in GCC 10, where I intend on swapping
> the frontend C++ sources with D, where assert() is a built-in contract and the
> false branch is treated as __noreturn__.
>
> But until then, this is a bootstrap problem if GCC 9 is to be used to build 
> GCC
> 10 on Solaris.

Given that Solaris 10 support will be removed in GCC 10 and Solaris 11
has no problem here, I guess dealing with this isn't worth the trouble:
better concentrate on the bugs affecting Solaris 11 (11.4 first, than
11.3 if possible).

Rainer

[Bug fortran/70260] ICE: gimplification failed

2018-11-04 Thread tkoenig at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70260

Thomas Koenig  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 CC||tkoenig at gcc dot gnu.org
   Assignee|unassigned at gcc dot gnu.org  |tkoenig at gcc dot 
gnu.org

--- Comment #6 from Thomas Koenig  ---
Working on a patch.

The main problem is double reporting of the same bug...

[Bug middle-end/87836] ICE in cc1 for gcc-6.5.0 with SPARC hardware

2018-11-04 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87836

--- Comment #5 from Eric Botcazou  ---
> I don't see anything in the various FLAGS that might cause this ICE.

CFLAGS='-g -O2' LDFLAGS=-m32

[Bug middle-end/87836] ICE in cc1 for gcc-6.5.0 with SPARC hardware

2018-11-04 Thread gary_mills at fastmail dot fm
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87836

--- Comment #4 from Gary Mills  ---
sparcv7 is a file path component.  It implies that this is a 32-bit executable
running on a 64-bit kernel.  That's normal behavior on OI and Solaris builds.
Generally there are both 32 and 64-bit builds.  The 64-bit executables reside
in
a sparcv9 directory.

I don't see anything in the various FLAGS that might cause this ICE.

I still need full instructions on how to use gdb to determine if the ICE is
caused by an alignment error.

[Bug d/87876] New: Mac failing: conversion from longdouble to long int is ambiguous

2018-11-04 Thread mcccs at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87876

Bug ID: 87876
   Summary: Mac failing: conversion from longdouble to long int is
ambiguous
   Product: gcc
   Version: 9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: d
  Assignee: ibuclaw at gdcproject dot org
  Reporter: mcccs at gmx dot com
  Target Milestone: ---

macOS 10.14.1
compiled with GCC 8.2

/Users/username/Downloads/gcc-trunk/gcc/d/dmd/constfold.c:1162:50: error:
conversion from 'real_t' {aka 'longdouble'} to 'sinteger_t' {aka 'long int'} is
ambiguous
 result = (d_int8)(sinteger_t)r;
  ^
In file included from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/root/ctfloat.h:11,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/globals.h:14,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/errors.h:13,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/constfold.c:22:
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:54:3: note: candidate:
'longdouble::operator int32_t()'
   operator int32_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:57:3: note: candidate:
'longdouble::operator int64_t()'
   operator int64_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:60:3: note: candidate:
'longdouble::operator uint32_t()'
   operator uint32_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:63:3: note: candidate:
'longdouble::operator uint64_t()'
   operator uint64_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:66:3: note: candidate:
'longdouble::operator bool()'
   operator bool (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/constfold.c:1166:50: error:
conversion from 'real_t' {aka 'longdouble'} to 'dinteger_t' {aka 'long unsigned
int'} is ambiguous
 result = (d_uns8)(dinteger_t)r;
  ^
In file included from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/root/ctfloat.h:11,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/globals.h:14,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/errors.h:13,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/constfold.c:22:
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:54:3: note: candidate:
'longdouble::operator int32_t()'
   operator int32_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:57:3: note: candidate:
'longdouble::operator int64_t()'
   operator int64_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:60:3: note: candidate:
'longdouble::operator uint32_t()'
   operator uint32_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:63:3: note: candidate:
'longdouble::operator uint64_t()'
   operator uint64_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:66:3: note: candidate:
'longdouble::operator bool()'
   operator bool (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/constfold.c:1169:51: error:
conversion from 'real_t' {aka 'longdouble'} to 'sinteger_t' {aka 'long int'} is
ambiguous
 result = (d_int16)(sinteger_t)r;
   ^
In file included from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/root/ctfloat.h:11,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/globals.h:14,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/errors.h:13,
 from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/constfold.c:22:
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:54:3: note: candidate:
'longdouble::operator int32_t()'
   operator int32_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:57:3: note: candidate:
'longdouble::operator int64_t()'
   operator int64_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:60:3: note: candidate:
'longdouble::operator uint32_t()'
   operator uint32_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:63:3: note: candidate:
'longdouble::operator uint64_t()'
   operator uint64_t (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/longdouble.h:66:3: note: candidate:
'longdouble::operator bool()'
   operator bool (void)
   ^~~~
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/constfold.c:1173:51: error:
conversion from 'real_t' {aka 'longdouble'} to 'dinteger_t' {aka 'long unsigned
int'} is ambiguous
 result = (d_uns16)(dinteger_t)r;
   ^
In file included from
/Users/username/Downloads/gcc-trunk/gcc/d/dmd/root/ctfloat.h:11,
 from

[Bug ada/87777] Let gnat tools call each other with an explicit target and version

2018-11-04 Thread nicolas at debian dot org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=8

Nicolas Boulenguez  changed:

   What|Removed |Added

  Attachment #44913|0   |1
is obsolete||

--- Comment #5 from Nicolas Boulenguez  ---
Created attachment 44954
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44954=edit
rewrite osint.program_name

[Bug sanitizer/87875] Address sanitizer doen't work with nested functions with enabled stack-use-after-return check

2018-11-04 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87875

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2018-11-04
   Assignee|unassigned at gcc dot gnu.org  |marxin at gcc dot 
gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Martin Liška  ---
I'll take a look, thanks for the bug report.

[Bug ada/25844] ICE on overloaded renames

2018-11-04 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25844

Eric Botcazou  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||ebotcazou at gcc dot gnu.org
 Resolution|--- |FIXED
   Target Milestone|7.4 |5.0
Summary|[7/8/9 regression] ICE on   |ICE on overloaded renames
   |overloaded renames  |

--- Comment #22 from Eric Botcazou  ---
.

[Bug middle-end/87836] ICE in cc1 for gcc-6.5.0 with SPARC hardware

2018-11-04 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87836

Eric Botcazou  changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot gnu.org

--- Comment #3 from Eric Botcazou  ---
Please retry to configure without any CFLAGS/CXXFLAGS/LDFLAGS options.

And what does this sparcv7 mean?  You need a SPARC-V9 processor here.

[Bug sanitizer/87875] New: Address sanitizer doen't work with nested functions with enabled stack-use-after-return check

2018-11-04 Thread belous.vs at yandex dot ru
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87875

Bug ID: 87875
   Summary: Address sanitizer doen't work with nested functions
with enabled stack-use-after-return check
   Product: gcc
   Version: 8.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: sanitizer
  Assignee: unassigned at gcc dot gnu.org
  Reporter: belous.vs at yandex dot ru
CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org,
jakub at gcc dot gnu.org, kcc at gcc dot gnu.org, marxin at 
gcc dot gnu.org
  Target Milestone: ---

Created attachment 44953
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44953=edit
sources

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/8/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 8.2.0-9'
--with-bugurl=file:///usr/share/doc/gcc-8/README.Bugs
--enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr
--with-gcc-major-version-only --program-suffix=-8
--program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id
--libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu
--enable-libstdcxx-debug --enable-libstdcxx-time=yes
--with-default-libstdcxx-abi=new --enable-gnu-unique-object
--disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie
--with-system-zlib --with-target-system-zlib --enable-objc-gc=auto
--enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64
--with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic
--enable-offload-targets=nvptx-none --without-cuda-driver
--enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu
--target=x86_64-linux-gnu
Thread model: posix
gcc version 8.2.0 (Debian 8.2.0-9)

Commands:
cc -o libxxx.so lib.c -Wall -Wextra -Werror -fsanitize=address -ggdb3 -fPIC
-shared
cc -o bin bin.c -Wall -Wextra -Werror -fsanitize=address -ggdb3 -L. -lxxx
LSAN_OPTIONS='detect_leaks=0' \
ASAN_OPTIONS='verbosity=1,detect_stack_use_after_return=true' LD_LIBRARY_PATH=.
 ./bin

Result:
... 
==9581==AddressSanitizer Init done  
==9581==T0: FakeStack created: 0x73e37000 -- 0x7494 stack_size_log:
20; mmapped 11300K, noreserve=0
...
73e37000-76cc rw-p  00:00 0
...
call cb: 0x73f40024
AddressSanitizer:DEADLYSIGNAL
=
==9581==ERROR: AddressSanitizer: SEGV on unknown address 0x73f40024 (pc
0x73f40024 bp 0x7fffe800 sp 0x7fffe688 T0)
==9581==The signal is caused by a READ memory access.
==9581==Hint: PC is at a non-executable region. Maybe a wild jump?
#0 0x73f40023  ()

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV ()
==9581==ABORTING


It looks like that problem appears because nested function is created on fake
stack, which is not executable. May be one need always use PROT_EXEC when
creating fake stacks?

I've found a workaround - append 'READ_IMPLIES_EXEC' into process
'personality', but it affects all 'mmap' calls, so this is not very good.

Sources are in attachment. With "detect_stack_use_after_return=false" all is
ok.

[Bug rtl-optimization/87874] New: [8/9 Regression] ICE in simplify_subreg, at simplify-rtx.c:6396

2018-11-04 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87874

Bug ID: 87874
   Summary: [8/9 Regression] ICE in simplify_subreg, at
simplify-rtx.c:6396
   Product: gcc
   Version: 8.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: rtl-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: asolokha at gmx dot com
  Target Milestone: ---
Target: x86_64-unknown-linux-gnu

gcc-9.0.0-alpha20181028 snapshot (r265575) ICEs when compiling the following
snippet w/ -g -O1 -fgcse -fno-dce -fno-tree-ccp -fno-tree-coalesce-vars
-fno-tree-copy-prop -fno-tree-dce -fno-tree-dominator-opts -fno-tree-fre
-fno-tree-loop-optimize -fno-tree-sink:

int *vk;
int m2;
__int128 nb;

void
em (int u5, int fo, int s7)
{
  for (;;)
{
  long int es;

  es = !!u5 ? (!!fo && !!m2) : fo;
  if (es == 0)
if (nb == *vk)
  {
const unsigned long int uint64_max = 18446744073709551615ul;
__int128 ks = uint64_max / 2 + 1;

while (s7 < 1)
  while (nb < 2)
{
  for (ks = 0; ks < 3; ++ks)
{
}

  ++nb;
}
  }
}
}

% x86_64-unknown-linux-gnu-gcc-9.0.0-alpha20181028 -g -O1 -fgcse -fno-dce
-fno-tree-ccp -fno-tree-coalesce-vars -fno-tree-copy-prop -fno-tree-dce
-fno-tree-dominator-opts -fno-tree-fre -fno-tree-loop-optimize -fno-tree-sink
-c gq9xsx28.c
during RTL pass: vartrack
gq9xsx28.c: In function 'em':
gq9xsx28.c:30:1: internal compiler error: in simplify_subreg, at
simplify-rtx.c:6396
   30 | }
  | ^
0x65c30c simplify_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u,
unsigned long>)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/simplify-rtx.c:6396
0xcb36d8 simplify_gen_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u,
unsigned long>)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/simplify-rtx.c:6667
0xf911d6 vt_expand_loc_callback
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8488
0x8f132c cselib_expand_value_rtx_1
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/cselib.c:1681
0x8f373e cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def*
(*)(rtx_def*, bitmap_head*, int, void*), void*)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/cselib.c:1562
0xf9162e vt_expand_var_loc_chain
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8384
0xf9162e vt_expand_loc_callback
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8547
0x8f13d6 cselib_expand_value_rtx_1
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/cselib.c:1716
0x8f373e cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def*
(*)(rtx_def*, bitmap_head*, int, void*), void*)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/cselib.c:1562
0xf9076c vt_expand_var_loc_chain
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8384
0xf9076c vt_expand_1pvar
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8660
0xf9076c emit_note_insn_var_location(variable**, emit_note_data*)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:8714
0xf92973 void hash_table::traverse_noresize(emit_note_data*)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/hash-table.h:973
0xf92973 void hash_table::traverse(emit_note_data*)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/hash-table.h:994
0xf92973 emit_notes_for_changes
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:9074
0xf9d67c emit_notes_in_bb
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:9508
0xf9d67c vt_emit_notes
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:9567
0xf9dcc4 variable_tracking_main_1
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:10499
0xf9dcc4 variable_tracking_main()
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:10513
0xf9dcc4 execute
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/var-tracking.c:10550

[Bug ada/87777] Let gnat tools call each other with an explicit target and version

2018-11-04 Thread ebotcazou at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=8

--- Comment #3 from Eric Botcazou  ---
> For this, I need you to tell me what "a Debian quirk" is.
> Does some (non Debian) architecture
> - use TARGET-gcc-VERSION with TARGET/=Sdefault.Target_Name?
> - use TARGET-gcc-VERSION with VERSION/=Gnatvsn.Library_Version?
> - provide no executable named TARGET-gcc-VERSION?
> If the answer to all 3 questions is "no", then the current patch already
> makes sense for upstream as well as for Debian.

Well, the original patch is rather clear, I meant the parts marked with "This
part will most probably be of interest for upstream." only.

[Bug ada/87777] Let gnat tools call each other with an explicit target and version

2018-11-04 Thread charlet at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=8

Arnaud Charlet  changed:

   What|Removed |Added

 CC||charlet at gcc dot gnu.org

--- Comment #4 from Arnaud Charlet  ---
Note that testing is key for this kind of delicate functions that can impact
all toolchains, so we'll need to see unit tests for Program_Name which we are
currently lacking. Only such unit tests will give us confidence that all cases
of interest have been properly tested.

[Bug tree-optimization/87873] New: [9 Regression] ICE: verify_gimple failed (error: incompatible types in PHI argument 0)

2018-11-04 Thread asolokha at gmx dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87873

Bug ID: 87873
   Summary: [9 Regression] ICE: verify_gimple failed (error:
incompatible types in PHI argument 0)
   Product: gcc
   Version: 9.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: asolokha at gmx dot com
  Target Milestone: ---
Target: x86_64-unknown-linux-gnu

gcc-9.0.0-alpha20181028 snapshot (r265575) ICEs when compiling the following
snippet w/ -O1 (-O2, -O3, -Ofast) -ftree-loop-vectorize:

__int128 k3;
int gs;

void
s2 (int aj)
{
  while (aj < 1)
{
  gs ^= 1;
  k3 = (__int128) gs * 2;
  if (k3 != 0)
k3 = 0;

  ++aj;
}
}

% x86_64-unknown-linux-gnu-gcc-9.0.0-alpha20181028 -O1 -ftree-loop-vectorize -c
d9ofj1fe.c
d9ofj1fe.c: In function 's2':
d9ofj1fe.c:5:1: error: incompatible types in PHI argument 0
5 | s2 (int aj)
  | ^~
int

__int128

_50 = PHI 
during GIMPLE pass: vect
d9ofj1fe.c:5:1: internal compiler error: verify_gimple failed
0xd1bb7d verify_gimple_in_cfg(function*, bool)
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/tree-cfg.c:5422
0xbf0e0f execute_function_todo
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/passes.c:1925
0xbf1d0e execute_todo
   
/var/tmp/portage/sys-devel/gcc-9.0.0_alpha20181028/work/gcc-9-20181028/gcc/passes.c:1979