[Bug analyzer/105755] New: -Wanalyzer-null-dereference regression compiling Emacs

2022-05-27 Thread eggert at cs dot ucla.edu via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105755

Bug ID: 105755
   Summary: -Wanalyzer-null-dereference regression compiling Emacs
   Product: gcc
   Version: 12.1.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: analyzer
  Assignee: dmalcolm at gcc dot gnu.org
  Reporter: eggert at cs dot ucla.edu
  Target Milestone: ---

Created attachment 53047
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53047=edit
compile with 'gcc -fanalyzer -O2 -S' to see the false positive

GCC 12.1.1 20220507 (Red Hat 12.1.1-1) on x86-64 has a false positive compiling
the attached program w.i, which is a stripped-down version of GNU Emacs master.
Compile it this way:

gcc -fanalyzer -O2 -S w.i

and it generates the following incorrect output. GCC 11.2 compiles the code
cleanly so this is a regression.

In function ‘PSEUDOVECTORP’,
inlined from ‘SUB_CHAR_TABLE_P’ at w.i:154:10,
inlined from ‘CHAR_TABLE_REF_ASCII’ at w.i:169:28:
w.i:53:56: warning: dereference of NULL ‘*tbl.ascii’ [CWE-476]
[-Wanalyzer-null-dereference]
   52 |   && union vectorlike_header *)
  | 
   53 | ((char *) XLP ((a)) - Lisp_Vectorlike))->size
  | ~~~^~
  ‘word_boundary_p’: events 1-2
|
|  187 | word_boundary_p (Lisp_Object char_script_table, int c1, int c2)
|  | ^~~
|  | |
|  | (1) entry to ‘word_boundary_p’
|  188 | {
|  189 |   return EQ (CHAR_TABLE_REF (char_script_table, c1),
|  |  ~~~
|  |  |
|  |  (2) calling ‘CHAR_TABLE_REF’ from ‘word_boundary_p’
|  190 |  CHAR_TABLE_REF (char_script_table, c2));
|  |  ~~~
|
+--> ‘CHAR_TABLE_REF’: events 3-6
   |
   |  179 | CHAR_TABLE_REF (Lisp_Object ct, int idx)
   |  | ^~
   |  | |
   |  | (3) entry to ‘CHAR_TABLE_REF’
   |  180 | {
   |  181 |   return (ASCII_CHAR_P (idx)
   |  |  ~~~
   |  182 |   ? CHAR_TABLE_REF_ASCII (ct, idx)
   |  |   
   |  | |
   |  | (5) ...to here
   |  | (6) calling ‘CHAR_TABLE_REF_ASCII’ from
‘CHAR_TABLE_REF’
   |  183 |   : char_table_ref (ct, idx));
   |  |   ~~~
   |  |   |
   |  |   (4) following ‘true’ branch...
   |
   +--> ‘CHAR_TABLE_REF_ASCII’: events 7-15
  |
  |  164 | CHAR_TABLE_REF_ASCII (Lisp_Object ct, ptrdiff_t idx)
  |  | ^~~~
  |  | |
  |  | (7) entry to ‘CHAR_TABLE_REF_ASCII’
  |..
  |  169 |   Lisp_Object val = (! SUB_CHAR_TABLE_P
(tbl->ascii) ? tbl->ascii
  |  |
~
  |  170 |  : XSUB_CHAR_TABLE
(tbl->ascii)->contents[idx]);
  |  | 
~~
  |  |  |
  |  |  (8) following ‘false’
branch...
  |  171 |   if (NILP (val))
  |  |  ~
  |  |  |
  |  |  (9) ...to here
  |  |  (10) following ‘true’ branch...
  |  172 | val = tbl->defalt;
  |  | ~
  |  | |
  |  | (11) ...to here
  |  173 |   if (!NILP (val) || NILP (tbl->parent))
  |  |  ~~
  |  |  ||  |
  |  |  ||  (13) ...to here
  |  |  |(14) following ‘true’
branch...
  |  |  (12) following ‘false’ branch (when ‘val’
is NULL)...
  |  174 | return val;
  |  |~~~
  |  ||
  |  |(15) ...to here
  |
   <--+
   |
 ‘CHAR_TABLE_REF’: event 16
   |
   |  182 |   ? CHAR_TABLE_REF_ASCII (ct, idx)
   |  | ^~
  

[Bug c++/105652] [12/13 Regression] ICE: in is_base_type, at dwarf2out.cc:13400 since r12-1937-gc28e1d288ab727de

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105652

--- Comment #4 from CVS Commits  ---
The master branch has been updated by Jason Merrill :

https://gcc.gnu.org/g:221acd67ca50f8f069037e034a3250f13d75a9f5

commit r13-806-g221acd67ca50f8f069037e034a3250f13d75a9f5
Author: Jason Merrill 
Date:   Thu May 26 22:43:05 2022 -0400

c++: lambda in concept [PR105652]

We currently check satisfaction in the context of the constrained
declaration (which may be wrong, see PR104111).  When checking C
for S, we currently substitute into the lambda in the context of
S (rather than S, which seems wrong if the above isn't wrong), so
the new closure type thinks its context is S, which confuses debug
output.  For the moment, let's work around all of this by overriding the
context of the closure.

PR c++/105652

gcc/cp/ChangeLog:

* pt.cc (tsubst_lambda_expr): Don't let a namespace-scope lambda
instantiate into a class-scope lambda.

gcc/testsuite/ChangeLog:

* g++.dg/cpp2a/concepts-lambda20.C: New test.

[Bug target/105753] [avr] ICE: in add_clobbers, at config/avr/avr-dimode.md:2705

2022-05-27 Thread filip.hejsek at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105753

--- Comment #1 from Filip Hejsek  ---
Not that i would really understand the machine description files, but the
problem seems to be caused by this instruction definition:

(define_insn_and_split "udivmodsi4"
  [(parallel [(set (match_operand:SI 0 "pseudo_register_operand" "")
   (udiv:SI (match_operand:SI 1 "pseudo_register_operand" "")
   (match_operand:SI 2 "pseudo_register_operand" "")))
  (set (match_operand:SI 3 "pseudo_register_operand" "")
   (umod:SI (match_dup 1) (match_dup 2)))
  (clobber (reg:SI 18))
  (clobber (reg:SI 22))
  (clobber (reg:HI 26))
  (clobber (reg:HI 30))])]
  ""
  "this udivmodsi4 pattern should have been splitted;"
  ""
  [(set (reg:SI 22) (match_dup 1))
   (set (reg:SI 18) (match_dup 2))
   (parallel [(set (reg:SI 18) (udiv:SI (reg:SI 22) (reg:SI 18)))
  (set (reg:SI 22) (umod:SI (reg:SI 22) (reg:SI 18)))
  (clobber (reg:HI 26))
  (clobber (reg:HI 30))])
   (set (match_dup 0) (reg:SI 18))
   (set (match_dup 3) (reg:SI 22))])

Just as in bug 88051, the instruction is missing from the generated switch in
add_clobbers and removing pararllel from the definition fixes the problem. (I
don't understand enough to know if it's the correct fix though.)

There are 4 instructions with parallel in the definition: divmodpsi4,
udivmodpsi4, divmodsi4, udivmodsi4.

[Bug tree-optimization/105665] [12/13 Regression] wrong code at -Os and above on x86_64-linux-gnu since r12-397-gda9e6e63d1ae22

2022-05-27 Thread aoliva at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105665

Alexandre Oliva  changed:

   What|Removed |Added

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

--- Comment #5 from Alexandre Oliva  ---
Mine.  The problem is that the undef name may appear deep in a chain of phis,
instead of appearing directly in the base expr.

[Bug target/105754] gcc/config/i386/i386.c missing break in get_builtin_code_for_version

2022-05-27 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105754

Andrew Pinski  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |WONTFIX
   Target Milestone|--- |10.0
  Component|c   |target

--- Comment #1 from Andrew Pinski  ---
Looks like when parts of r10-2664-ga9fcfec30f70c3 was backported to the GCC 9
branch (in r9-9351-g45d3b8886f2ecb), it didn't include the break.

Anyways GCC 9.5.0 is the last release of GCC 9 series so marking as won't fix.

"This is also the last release from the GCC 9 branch, GCC continues
to be maintained on the GCC 10, GCC 11 and GCC 12 branches and the
development trunk."

[Bug c/105754] New: gcc/config/i386/i386.c missing break in get_builtin_code_for_version

2022-05-27 Thread paulo.santos at anacom dot pt via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105754

Bug ID: 105754
   Summary: gcc/config/i386/i386.c missing break in
get_builtin_code_for_version
   Product: gcc
   Version: 9.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: paulo.santos at anacom dot pt
  Target Milestone: ---

Hi, there is a missing break in gcc/config/i386/i386.c (9.4.0, 9.5.0):

(...)
case PROCESSOR_CASCADELAKE:
  arg_str = "cascadelake";
  priority = P_PROC_AVX512F;
  break;
case PROCESSOR_TIGERLAKE:
  arg_str = "tigerlake";
  priority = P_PROC_AVX512F;
case PROCESSOR_BONNELL:
  arg_str = "bonnell";
  priority = P_PROC_SSSE3;
  break;
case PROCESSOR_KNL:
(...)

Fix:

--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -32267,6 +32267,7 @@ get_builtin_code_for_version (tree decl,
case PROCESSOR_TIGERLAKE:
  arg_str = "tigerlake";
  priority = P_PROC_AVX512F;
+ break;
case PROCESSOR_BONNELL:
  arg_str = "bonnell";
  priority = P_PROC_SSSE3;


Thx,
pasan

[Bug target/105753] New: [avr] ICE: in add_clobbers, at config/avr/avr-dimode.md:2705

2022-05-27 Thread filip.hejsek at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105753

Bug ID: 105753
   Summary: [avr] ICE: in add_clobbers, at
config/avr/avr-dimode.md:2705
   Product: gcc
   Version: 13.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: filip.hejsek at gmail dot com
  Target Milestone: ---
Target: avr

GCC fails when compiling the following C program for AVR (with at least -O1):

int digit_sum(unsigned long n) {
  int sum = 0;

  do {
int x = n % 10;
n /= 10;
sum += x;
  } while(n);

  return sum;
}

I have tested both GCC 12.1.0 form Arch Linux and a development version (GCC
13.0.0) compiled from git sources.

Here is the compiler output:

$ ~/avr_gcc_install/bin/avr-gcc -c -O1 bug.c
during RTL pass: combine
bug.c: In function ‘digit_sum’:
bug.c:13:1: internal compiler error: in add_clobbers, at
config/avr/avr-dimode.md:2705
   13 | }
  | ^
0x770d30 add_clobbers(rtx_def*, int)
../../gcc/gcc/config/avr/avr-dimode.md:2705
0x1645c94 recog_for_combine_1
../../gcc/gcc/combine.cc:11422
0x164979e recog_for_combine
../../gcc/gcc/combine.cc:11622
0x165aef7 try_combine
../../gcc/gcc/combine.cc:3543
0x165e72f combine_instructions
../../gcc/gcc/combine.cc:1266
0x165e72f rest_of_handle_combine
../../gcc/gcc/combine.cc:14976
0x165e72f execute
../../gcc/gcc/combine.cc:15021
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See  for instructions.
$ ~/avr_gcc_install/bin/avr-gcc -v
Using built-in specs.
Reading specs from
/home/filiph/avr_gcc_install/lib/gcc/avr/13.0.0/device-specs/specs-avr2
COLLECT_GCC=/home/filiph/avr_gcc_install/bin/avr-gcc
COLLECT_LTO_WRAPPER=/home/filiph/avr_gcc_install/libexec/gcc/avr/13.0.0/lto-wrapper
Target: avr
Configured with: ../gcc/configure --prefix=/home/filiph/avr_gcc_install
--target=avr --enable-languages=c --with-as=/usr/bin/avr-as --with-gnu-as
--with-ld=/usr/bin/avr-ld --with-gnu-ld
Thread model: single
Supported LTO compression algorithms: zlib zstd
gcc version 13.0.0 20220525 (experimental) [master -gda2c56ee6] (GCC) 

$ avr-gcc -c -O1 bug.c
during RTL pass: combine
bug.c: In function 'digit_sum':
bug.c:13:1: internal compiler error: in add_clobbers, at
config/avr/avr-dimode.md:2705
   13 | }
  | ^
0x140115b diagnostic_impl(rich_location*, diagnostic_metadata const*, int, char
const*, __va_list_tag (*) [1], diagnostic_t)
???:0
0x140209d internal_error(char const*, ...)
???:0
0x5bafbc fancy_abort(char const*, int, char const*)
???:0
0x5b1839 add_clobbers(rtx_def*, int) [clone .cold]
???:0
0x1213b97 recog_for_combine_1(rtx_def**, rtx_insn*, rtx_def**)
???:0
0x1215e8e recog_for_combine(rtx_def**, rtx_insn*, rtx_def**)
???:0
0x1228da5 try_combine(rtx_insn*, rtx_insn*, rtx_insn*, rtx_insn*, int*,
rtx_insn*)
???:0
0x122c0a4 (anonymous namespace)::pass_combine::execute(function*)
???:0
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See  for instructions.
$ avr-gcc -v
Using built-in specs.
Reading specs from /usr/lib/gcc/avr/12.1.0/device-specs/specs-avr2
COLLECT_GCC=avr-gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/avr/12.1.0/lto-wrapper
Target: avr
Configured with: /build/avr-gcc/src/gcc-12.1.0/configure
--disable-install-libiberty --disable-libssp --disable-libstdcxx-pch
--disable-libunwind-exceptions --disable-linker-build-id --disable-nls
--disable-werror --disable-__cxa_atexit --enable-checking=release
--enable-clocale=gnu --enable-gnu-unique-object --enable-gold
--enable-languages=c,c++ --enable-ld=default --enable-lto --enable-plugin
--enable-shared --infodir=/usr/share/info --libdir=/usr/lib
--libexecdir=/usr/lib --mandir=/usr/share/man --prefix=/usr --target=avr
--with-as=/usr/bin/avr-as --with-gnu-as --with-gnu-ld --with-ld=/usr/bin/avr-ld
--with-plugin-ld=ld.gold --with-system-zlib --with-isl
--enable-gnu-indirect-function
Thread model: single
Supported LTO compression algorithms: zlib zstd
gcc version 12.1.0 (GCC) 

(This bug seems to be similar to bug 88051, but that one was on i386.)

[Bug c++/104111] Concept evaluation depends on context where it was first checked

2022-05-27 Thread jason at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104111

--- Comment #6 from Jason Merrill  ---
(In reply to Jason Merrill from comment #5)
> An alternative fix for this bug would be to include the evaluation context
> in the satisfaction cache.

...if the evaluation involved access checking of a private or protected member.

[Bug middle-end/101836] __builtin_object_size(P->M, 1) where M is an array and the last member of a struct fails

2022-05-27 Thread kees at outflux dot net via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101836

--- Comment #11 from Kees Cook  ---
and with a flex array to compare:
https://godbolt.org/z/s9nb4Y7q4

[Bug middle-end/101836] __builtin_object_size(P->M, 1) where M is an array and the last member of a struct fails

2022-05-27 Thread kees at outflux dot net via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101836

--- Comment #10 from Kees Cook  ---
Here's a slightly reworked example:
https://godbolt.org/z/EvehMax84

[Bug middle-end/101836] __builtin_object_size(P->M, 1) where M is an array and the last member of a struct fails

2022-05-27 Thread kees at outflux dot net via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101836

--- Comment #9 from Kees Cook  ---
Just to clarify, __builtin_dynamic_object_size() shouldn't have anything to do
with this. What's needed is something like -fstrict-flex-arrays so that all the
"trailing array is a flex array" assumptions can be killed everywhere in GCC.
Only an _actual_ flex array should be treated as such.

[Bug rtl-optimization/98334] Failure to optimally optimize add loop to mul

2022-05-27 Thread roger at nextmovesoftware dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98334

Roger Sayle  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||roger at nextmovesoftware dot 
com
 Resolution|--- |FIXED

--- Comment #6 from Roger Sayle  ---
This is now fully optimized at the tree level too.
int f (int i, unsigned int n)
{
  int result;
  int _1;

   [local count: 118111600]:
  _1 = (int) n_3(D);
  result_2 = _1 * i_6(D);
  return result_2;

}

[Bug target/100181] hot-cold partitioned code doesn't assemble

2022-05-27 Thread tschwinge at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100181

Thomas Schwinge  changed:

   What|Removed |Added

   See Also|https://gcc.gnu.org/bugzill |
   |a/show_bug.cgi?id=97827,|
   |https://bugs.llvm.org/show_ |
   |bug.cgi?id=41914,   |
   |https://gcc.gnu.org/bugzill |
   |a/show_bug.cgi?id=93515,|
   |https://gcc.gnu.org/bugzill |
   |a/show_bug.cgi?id=86660 |

--- Comment #14 from Thomas Schwinge  ---
Confirming that this issue has been "resolved" ;-) via the recent commit
r13-742-g8086230e7ac619c0b0eeb6e15df7975ac214725f "amdgcn: Remove LLVM 9
assembler/linker support": "The minimum required LLVM version is now 13.0.1,
and is enforced by configure."; I've thus removed my "[gcn] [WIP] Force-disable
'-freorder-blocks-and-partition' [PR94278]" hack from local trees.

[Bug target/99405] Rotate with mask not optimized on x86 for QI/HImode rotates

2022-05-27 Thread roger at nextmovesoftware dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99405

Roger Sayle  changed:

   What|Removed |Added

 CC||roger at nextmovesoftware dot 
com
   Target Milestone|--- |12.0
 Status|ASSIGNED|RESOLVED
  Known to work||12.0
 Resolution|--- |FIXED

--- Comment #8 from Roger Sayle  ---
This was fixed for GCC 12.0.  Thanks Jakub.

[Bug c++/100374] Type-constraints of member function templates should not be substituted into during implicit instantiation

2022-05-27 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100374

Patrick Palka  changed:

   What|Removed |Added

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

[Bug c++/104111] Concept evaluation depends on context where it was first checked

2022-05-27 Thread jason at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104111

Jason Merrill  changed:

   What|Removed |Added

 Blocks||67491

--- Comment #5 from Jason Merrill  ---
(In reply to Patrick Palka from comment #3)
> > because concept-id evaluation shall not depend on the context.
> 
> One consequence of making this change to concept-id evaluation would be that
> for:
> 
>   template void f() requires (!C);
> 
> during constraint checking for say f(), we no longer evaluate C
> (as part of evaluation of the atomic constraint !C) in the access context
> of f, which seems surprising to me.
> 
> CC'ing Jason for guidance.

This issue was discussed on the CWG mailing list back in 2018, but seems never
to have made it to the issues list.  There was general agreement at the time
that access should be checked in the lexical context of the atomic constraint,
as with other expressions; this does indeed have the consequence that you
mention.  Which means that since we don't have class-scope concepts, any
constraints that need to depend on access control need to be written directly
in the requires-clause rather than through a concept.  Or just give up on
trying to express constraints that depend on access.

An alternative fix for this bug would be to include the evaluation context in
the satisfaction cache.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67491
[Bug 67491] [meta-bug] concepts issues

[Bug c++/105752] Template function can access private member

2022-05-27 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105752

--- Comment #3 from Jonathan Wakely  ---
And if you never instantiate the function, who cares? It doesn't actually
access the private member, because you never call it. And if you try to, it
doesn't compile.

[Bug c++/105752] Template function can access private member

2022-05-27 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105752

--- Comment #2 from Jonathan Wakely  ---
Which is permitted by the standard.

[Bug c++/105752] Template function can access private member

2022-05-27 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105752

--- Comment #1 from Andrew Pinski  ---
There might already been a dup of this. Gcc does not do access checking until
instantiation time (as you saw) even for non dependent things.

[Bug c++/105752] New: Template function can access private member

2022-05-27 Thread csaba_22 at yahoo dot co.uk via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105752

Bug ID: 105752
   Summary: Template function can access private member
   Product: gcc
   Version: 12.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: csaba_22 at yahoo dot co.uk
  Target Milestone: ---

The following code

class Outer
{
private: //  !
struct Inner
{};
};

template
struct Meow
{
void purr() {
Outer::Inner oi;
}
};

int main()
{
Meow kitty;
//kitty.purr();
}

is compiled by GCC from 4.1.2 to 12.1.0, but is rejected by all clang releases 
 available on godbolt.

https://godbolt.org/z/58Yca6dah

Also mentioned here:
https://stackoverflow.com/questions/28596242/accessing-private-inner-class-type-from-non-member-template-function

If the call to the function is uncommented, then GCC also emits an error.

Visual Studio 2013 update 4 also  emits an  error (allegedly), so this sounds
like a bug.

[Bug c++/105725] [ICE] segfault with `-Wmismatched-tags`

2022-05-27 Thread mpolacek at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105725

Marek Polacek  changed:

   What|Removed |Added

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

--- Comment #5 from Marek Polacek  ---
Fixed for GCC 12.2 and 13.

[Bug c++/105725] [ICE] segfault with `-Wmismatched-tags`

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105725

--- Comment #4 from CVS Commits  ---
The releases/gcc-12 branch has been updated by Marek Polacek
:

https://gcc.gnu.org/g:2c11a9a380e7af333e19d6e576a889646d699b2a

commit r12-8419-g2c11a9a380e7af333e19d6e576a889646d699b2a
Author: Marek Polacek 
Date:   Fri May 27 10:51:30 2022 -0400

c++: Fix ICE with -Wmismatched-tags [PR105725]

Here we ICE with -Wmismatched-tags on something like

  template 
  bool B>>;

Specifically, the "class T::foo" bit.  There, class_decl_loc_t::add gets
a TYPENAME_TYPE as TYPE, rather than a class/union type, so checking
TYPE_BEING_DEFINED will crash.  I think it's OK to allow a TYPENAME_TYPE to
slip into that function; we just shouldn't consider the 'class' tag
redundant
(which works as a 'typename').  In fact, every other compiler *requires*
it.

PR c++/105725

gcc/cp/ChangeLog:

* parser.cc (class_decl_loc_t::add): Check CLASS_TYPE_P.

gcc/testsuite/ChangeLog:

* g++.dg/warn/Wmismatched-tags-10.C: New test.

(cherry picked from commit d822f4bbd714c6595f70cc6dcebecfb6662d)

[Bug c++/105725] [ICE] segfault with `-Wmismatched-tags`

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105725

--- Comment #3 from CVS Commits  ---
The trunk branch has been updated by Marek Polacek :

https://gcc.gnu.org/g:d822f4bbd714c6595f70cc6dcebecfb6662d

commit r13-803-gd822f4bbd714c6595f70cc6dcebecfb6662d
Author: Marek Polacek 
Date:   Fri May 27 10:51:30 2022 -0400

c++: Fix ICE with -Wmismatched-tags [PR105725]

Here we ICE with -Wmismatched-tags on something like

  template 
  bool B>>;

Specifically, the "class T::foo" bit.  There, class_decl_loc_t::add gets
a TYPENAME_TYPE as TYPE, rather than a class/union type, so checking
TYPE_BEING_DEFINED will crash.  I think it's OK to allow a TYPENAME_TYPE to
slip into that function; we just shouldn't consider the 'class' tag
redundant
(which works as a 'typename').  In fact, every other compiler *requires*
it.

PR c++/105725

gcc/cp/ChangeLog:

* parser.cc (class_decl_loc_t::add): Check CLASS_TYPE_P.

gcc/testsuite/ChangeLog:

* g++.dg/warn/Wmismatched-tags-10.C: New test.

[Bug c/90658] [10/11/12/13 Regression] ICE in default_conversion, at c/c-typeck.c:2159

2022-05-27 Thread mpolacek at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90658

Marek Polacek  changed:

   What|Removed |Added

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

--- Comment #11 from Marek Polacek  ---
Fixed for GCC 13.

[Bug c/90658] [10/11/12/13 Regression] ICE in default_conversion, at c/c-typeck.c:2159

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90658

--- Comment #10 from CVS Commits  ---
The trunk branch has been updated by Marek Polacek :

https://gcc.gnu.org/g:ca4b95069ca7dbf0be3a5aae053631e7a1b20103

commit r13-802-gca4b95069ca7dbf0be3a5aae053631e7a1b20103
Author: Marek Polacek 
Date:   Thu May 26 18:59:44 2022 -0400

c-family: fix attribute constructor ICE [PR90658]

Here the C compiler crashes because a FUNCTION_DECL got into
get_priority -> default_conversion, and the C FE's version of d_c
specifically asserts that it doesn't get a FUNCTION_DECL.  All uses
of default_conversion in c-attribs.cc are guarded by != IDENTIFIER_NODE
&& != FUNCTION_DECL, but get_priority was only checking IDENTIFIER_NODE.

PR c/90658

gcc/c-family/ChangeLog:

* c-attribs.cc (get_priority): Check FUNCTION_DECL.

gcc/testsuite/ChangeLog:

* c-c++-common/attr-cdtor-1.c: New test.

[Bug c++/105751] New: std::array comparision does not inline memcmp

2022-05-27 Thread gcc at maxbachmann dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105751

Bug ID: 105751
   Summary: std::array comparision does not inline memcmp
   Product: gcc
   Version: 12.1.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: gcc at maxbachmann dot de
  Target Milestone: ---

On trunk and gcc 12.1, with -O2/-O3 the following array comparison is only
optimized to a memcmp, but not to a direct comparision:

```
bool test(std::array& a, std::array& b)
{
return a == b;
}
```
which is optimized to:
```
test(std::array&, std::array&):
sub rsp, 8
mov edx, 8
callmemcmp
testeax, eax
seteal
add rsp, 8
ret
```

However for a direct memcmp gcc is able to optimize the memcmp to a single 64
bit comparision:
```
bool test(int8_t* a, int8_t* b)
{
return memcmp(a, b, sizeof(int8_t) * 8) == 0;
}
```
which is optimized to
```
test(signed char*, signed char*):
mov rax, QWORD PTR [rsi]
cmp QWORD PTR [rdi], rax
seteal
ret
```

This is optimized to a single comparision both in clang and msvc:
https://godbolt.org/z/99reqf3Yz

[Bug c++/104477] [C++23] Implement P2255R2, type trait to detect reference binding to temporary

2022-05-27 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104477

Jakub Jelinek  changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek  ---
Agree on that.

[Bug c++/104477] [C++23] Implement P2255R2, type trait to detect reference binding to temporary

2022-05-27 Thread mpolacek at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104477

Marek Polacek  changed:

   What|Removed |Added

 CC||mpolacek at gcc dot gnu.org

--- Comment #1 from Marek Polacek  ---
https://clang.llvm.org/cxx_status.html#cxx23 says

"Clang provides a __reference_binds_to_temporary type trait builtin, with which
the library facility can be partially implemented. Both
__reference_constructs_from_temporary and __reference_converts_from_temporary
builtins should be provided, following the normal cross-vendor convention to
implement traits requiring compiler support directly."

which suggests to me that we should implement two new builtins:
__reference_constructs_from_temporary
__reference_converts_from_temporary
With those in place, I don't think we need __reference_binds_to_temporary.

[Bug sanitizer/105750] Too small red zone size for struct variables.

2022-05-27 Thread shaohua.li at inf dot ethz.ch via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105750

--- Comment #2 from Li Shaohua  ---
Yea, I'm aware of that. What makes me confused is for the following code, gcc
generates a larger redone for the struct variable j, i.e., 48 bytes.

https://godbolt.org/z/Wv1djjrqv

$cat b.c
struct a {
  long f;
};
int i;
volatile struct a j[1][6] = {2};
long k() { 
return j[0][6].f; 
}
int main() { 
return k(); 
}
$
$

[Bug sanitizer/105750] Too small red zone size for struct variables.

2022-05-27 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105750

--- Comment #1 from Jakub Jelinek  ---
That is completely intentional, you can find similar testcases for any size of
the red zone and infinite red zones aren't possible.  In fact, any growth of
the red zone makes data segments larger, it is always a compromise between what
can be detected and how much memory it uses.

[Bug sanitizer/105750] New: Too small red zone size for struct variables.

2022-05-27 Thread shaohua.li at inf dot ethz.ch via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105750

Bug ID: 105750
   Summary: Too small red zone size for struct variables.
   Product: gcc
   Version: 13.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: sanitizer
  Assignee: unassigned at gcc dot gnu.org
  Reporter: shaohua.li at inf dot ethz.ch
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: ---

For the following code, gcc only generates 32 bytes red zone for the struct
variable j, which makes it fail to detect the buffer-overflow in k().

$cat a.c
struct a {
  int b;
  long c[2];
  char d;
  long f;
  char g
};
int i;
volatile struct a j[1][6] = {2};
long k() { 
return j[0][6].f; 
}
int main() { 
return k(); 
}
$
$gcc-trunk -O0 -fsanitize=address -w a.c && ./a.out
$
$

[Bug middle-end/101836] __builtin_object_size(P->M, 1) where M is an array and the last member of a struct fails

2022-05-27 Thread qinzhao at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101836

--- Comment #8 from qinzhao at gcc dot gnu.org ---
(In reply to Siddhesh Poyarekar from comment #7)
> I couldn't work on -fstrict-flex-arrays then, sorry.  I do have it in my
> plan for gcc 13, but I'll admit it's not on the very top of my list of
> things to do this year.  If you or anyone else needs a stronger guarantee of
> this making it into gcc 13 and wants to work on it, I'll be happy to help
> with reviews.
thanks for the info.
will study this a little bit more and hopefully make it into gcc13.

[Bug libstdc++/105671] [11/12 Regression] Unexplained "undefined reference" error

2022-05-27 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105671

Jonathan Wakely  changed:

   What|Removed |Added

Summary|[11/12/13 Regression]   |[11/12 Regression]
   |Unexplained "undefined  |Unexplained "undefined
   |reference" error|reference" error

--- Comment #6 from Jonathan Wakely  ---
Yes, I verified it using your test program (thanks!) against all affected
branches. It's fixed on trunk, I'll backport the attribute in a couple of
weeks.

[Bug c++/105725] [ICE] segfault with `-Wmismatched-tags`

2022-05-27 Thread mpolacek at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105725

Marek Polacek  changed:

   What|Removed |Added

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

[Bug libstdc++/105671] [11/12/13 Regression] Unexplained "undefined reference" error

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105671

--- Comment #5 from CVS Commits  ---
The master branch has been updated by Jonathan Wakely :

https://gcc.gnu.org/g:de57440858591a88e8fd7ba2505ca54546c86021

commit r13-801-gde57440858591a88e8fd7ba2505ca54546c86021
Author: Jonathan Wakely 
Date:   Fri May 27 12:43:18 2022 +0100

libstdc++: Mark non-exported function always_inline [PR105671]

This new function was added for gcc 11.1 but is not exported from the
shared library. Depending on inlining decisions, its callers might get
inlined but an external definition be needed for this function. That
then fails to link.

Since we can't add the export to the gcc-11 release branch now, mark it
always_inline. We can consider exporting it for gcc-13 if/when we bump
the shared library version (and maybe also for gcc-12 which is currently
at the same version as trunk). For now, the attribute will solve the
problem on all affected branches. The function is small enough that
force-inlining it shouldn't cause problems.

libstdc++-v3/ChangeLog:

PR libstdc++/105671
* include/std/sstream (basic_stringbuf::_M_high_mark): Add
always_inline attribute.

[Bug libstdc++/105671] [11/12/13 Regression] Unexplained "undefined reference" error

2022-05-27 Thread christian.morales.vega at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105671

--- Comment #4 from Cristian Morales Vega  ---
I can confirm adding "__attribute__((always_inline))" in _M_high_mark() solves
the issue.

[Bug ipa/105140] [10 Regression] ICE: SIGSEGV in fold_convertible_p with conflicting function redeclaration since r10-5112-gfddcfa5b84bf8a06

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105140

Richard Biener  changed:

   What|Removed |Added

  Known to work||10.3.1
 Resolution|--- |FIXED
 Status|ASSIGNED|RESOLVED

--- Comment #6 from Richard Biener  ---
Fixed.

[Bug tree-optimization/105163] [10 Regression] ICE: SSA corruption since r0-122928

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105163

Richard Biener  changed:

   What|Removed |Added

  Known to work||10.3.1
 Resolution|--- |FIXED
  Known to fail||10.3.0
 Status|ASSIGNED|RESOLVED

--- Comment #8 from Richard Biener  ---
Fixed.

[Bug tree-optimization/105173] [10 Regression] ICE: during GIMPLE pass: reassoc: verify_ssa failed (definition in block 2 follows the use) at -Ofast with decimals since r7-950-g8a85cee26eabf5cf

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105173

Richard Biener  changed:

   What|Removed |Added

 Resolution|--- |FIXED
  Known to fail|10.3.1  |10.3.0
  Known to work||10.3.1
 Status|ASSIGNED|RESOLVED

--- Comment #8 from Richard Biener  ---
Fixed.

[Bug tree-optimization/105368] [10 Regression] ICE: SIGSEGV in powi_lookup_cost (tree-ssa-math-opts.cc:1441) with -Ofast and __builtin_powf()

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105368

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
  Known to work||10.3.1
 Resolution|--- |FIXED
  Known to fail||10.3.0

--- Comment #11 from Richard Biener  ---
Fixed.

[Bug tree-optimization/105431] ICE: SIGSEGV in powi_as_mults_1 (tree-ssa-math-opts.cc:1512) with -Ofast and __builtin_pow()

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105431

Richard Biener  changed:

   What|Removed |Added

  Known to fail||10.3.0, 11.2.0
  Known to work||10.3.1, 11.2.1
 Resolution|--- |FIXED
 Status|ASSIGNED|RESOLVED

--- Comment #10 from Richard Biener  ---
Fixed.

[Bug ipa/105728] dead store to static var not optimized out

2022-05-27 Thread felix-gcc at fefe dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105728

--- Comment #4 from felix-gcc at fefe dot de ---
If you do have a printf that references debug_cnt, it wouldn't be removed,
right?

If you expect unreferenced variables to not be optimized out, you can always
compile without optimizer. For local variables even that doesn't help with
clang already.

OTOH we do have attributes "used" and "unused". They could be extended to
variables.

[Bug testsuite/105266] new test case gcc.dg/pr105250.c fails with excess errors in r12-8134-g4e892de6774f86

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105266

--- Comment #8 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:5d4f9ef0d2123923f7aae9ebd546a72c7eeb1467

commit r10-10772-g5d4f9ef0d2123923f7aae9ebd546a72c7eeb1467
Author: Kewen Lin 
Date:   Sun Apr 17 21:34:51 2022 -0500

testsuite: Skip pr105250.c for powerpc and s390 [PR105266]

This test case pr105250.c is like its related pr105140.c, which
suffers the error with message like "{AltiVec,vector} argument
passed to unprototyped" on powerpc and s390.  So like commits
r12-8025 and r12-8039, this fix is to add the dg-skip-if for
powerpc*-*-* and s390*-*-*.

gcc/testsuite/ChangeLog:

PR testsuite/105266
* gcc.dg/pr105250.c: Skip for powerpc*-*-* and s390*-*-*.

(cherry picked from commit 021b51814d67bedd8f41ac07edfd05654140c6e5)

[Bug ipa/105250] ICE: in fold_convert_loc, at fold-const.cc:2581 with conflicting function redeclaration

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105250

--- Comment #5 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:644185d0e42fd93d1f793475a0117d6751fb042e

commit r10-10771-g644185d0e42fd93d1f793475a0117d6751fb042e
Author: Richard Biener 
Date:   Wed Apr 13 08:52:57 2022 +0200

tree-optimization/105250 - adjust fold_convertible_p PR105140 fix

The following reverts the original PR105140 fix and goes for instead
applying the additional fold_convert constraint for VECTOR_TYPE
conversions also to fold_convertible_p.  I did not try sanitizing
all of this at this point.

2022-04-13  Richard Biener  

PR tree-optimization/105250
* fold-const.c (fold_convertible_p): Revert
r12-7979-geaaf77dd85c333, instead check for size equality
of the vector types involved.

* gcc.dg/pr105250.c: New testcase.

(cherry picked from commit 4e892de6774f86540d36385701aa7b0a2bba5155)

[Bug target/105147] New test case gcc.dg/pr105140.c introduced in r12-7979-geaaf77dd85c333 has excess errors

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105147

--- Comment #11 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:1cccf2e43b43d6e75df2257ddc2682dceb9f04ae

commit r10-10770-g1cccf2e43b43d6e75df2257ddc2682dceb9f04ae
Author: Andreas Krebbel 
Date:   Thu Apr 7 07:29:13 2022 +0200

IBM zSystems/testsuite: PR105147: Skip pr105140.c

pr105140.c fails on IBM zSystems with "vector argument passed to
unprototyped function".  s390_invalid_arg_for_unprototyped_fn in
s390.cc is triggered by that.

gcc/testsuite/ChangeLog:

PR target/105147
* gcc.dg/pr105140.c: Skip for s390*-*-*.

(cherry picked from commit 176df4ccb58689aae29511b99d60a448558ede94)

[Bug target/105147] New test case gcc.dg/pr105140.c introduced in r12-7979-geaaf77dd85c333 has excess errors

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105147

--- Comment #10 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:b3157b03a8b83445e6ce48c9d9c6a6b614937691

commit r10-10769-gb3157b03a8b83445e6ce48c9d9c6a6b614937691
Author: Segher Boessenkool 
Date:   Wed Apr 6 15:22:24 2022 +

rs6000/testsuite: Skip pr105140.c

This test fails with error "AltiVec argument passed to unprototyped
function", but the code (in rs6000.c:invalid_arg_for_unprototyped_fn,
from 2005) actually tests for any vector type argument.  It also does
not fail on Darwin, not reflected here though.

2022-04-06  Segher Boessenkool  

gcc/testsuite/
PR target/105147
* gcc.dg/pr105140.c: Skip for powerpc*-*-*.

(cherry picked from commit c65d15d40738f3691ff1a39907a4b93e9fe5c5ae)

[Bug rtl-optimization/94618] [8/9 Regression] '-fcompare-debug' failure (length) with -O2 -fnon-call-exceptions since r8-565-g7581ce9a1ad6df9c

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94618
Bug 94618 depends on bug 105559, which changed state.

Bug 105559 Summary: [10 Regression] -g and -O3 cause timeout since 
r12-156-g8d4c374c4419a875
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105559

   What|Removed |Added

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

[Bug rtl-optimization/105559] [10 Regression] -g and -O3 cause timeout since r12-156-g8d4c374c4419a875

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105559

Richard Biener  changed:

   What|Removed |Added

  Known to fail||10.3.0
 Resolution|--- |FIXED
 Status|ASSIGNED|RESOLVED
  Known to work||10.3.1

--- Comment #13 from Richard Biener  ---
Fixed.

[Bug ipa/105140] [10 Regression] ICE: SIGSEGV in fold_convertible_p with conflicting function redeclaration since r10-5112-gfddcfa5b84bf8a06

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105140

--- Comment #5 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:c515adf5d339ad942207d9121cf49e5b6c84093e

commit r10-10768-gc515adf5d339ad942207d9121cf49e5b6c84093e
Author: Richard Biener 
Date:   Mon Apr 4 10:20:05 2022 +0200

middle-end/105140 - fix bogus recursion in fold_convertible_p

fold_convertible_p expects an operand and a type to convert to
but recurses with two vector component types.  Fixed by allowing
types instead of an operand as well.

2022-04-04  Richard Biener  

PR middle-end/105140
* fold-const.c (fold_convertible_p): Allow a TYPE_P arg.

* gcc.dg/pr105140.c: New testcase.

(cherry picked from commit eaaf77dd85c333b116111bb1ae6c080154a4e411)

[Bug tree-optimization/105163] [10 Regression] ICE: SSA corruption since r0-122928

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105163

--- Comment #7 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:bdfe7e5510b28c3ab8f8cd0fd7f715f2da3af938

commit r10-10767-gbdfe7e5510b28c3ab8f8cd0fd7f715f2da3af938
Author: Richard Biener 
Date:   Wed Apr 6 09:36:38 2022 +0200

tree-optimization/105163 - abnormal SSA coalescing and reassoc

The negate propagation optimizations in reassoc did not look out for
abnormal SSA coalescing issues.  The following fixes that.

2022-04-06  Richard Biener  

PR tree-optimization/105163
* tree-ssa-reassoc.c (repropagate_negates): Avoid propagating
negated abnormals.

* gcc.dg/torture/pr105163.c: New testcase.

(cherry picked from commit 44fe49401725055a740ce47e80561b6932b8cd01)

[Bug tree-optimization/105173] [10 Regression] ICE: during GIMPLE pass: reassoc: verify_ssa failed (definition in block 2 follows the use) at -Ofast with decimals since r7-950-g8a85cee26eabf5cf

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105173

--- Comment #7 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:84ebfc7558d23c5262d35740d1d495bd0884a58c

commit r10-10766-g84ebfc7558d23c5262d35740d1d495bd0884a58c
Author: Richard Biener 
Date:   Wed Apr 6 11:43:01 2022 +0200

tree-optimization/105173 - fix insertion logic in reassoc

The find_insert_point logic around deciding whether to insert
before or after the found insertion point does not handle
the case of _12 = ..;, _12, 1.0 well.  The following puts the
logic into find_insert_point itself instead.

2022-04-06  Richard Biener  

PR tree-optimization/105173
* tree-ssa-reassoc.c (find_insert_point): Get extra
insert_before output argument and compute it.
(insert_stmt_before_use): Adjust.
(rewrite_expr_tree): Likewise.

* gcc.dg/pr105173.c: New testcase.

(cherry picked from commit e1a5e7562d53a8d2256f754714b06595bea72196)

[Bug tree-optimization/105431] ICE: SIGSEGV in powi_as_mults_1 (tree-ssa-math-opts.cc:1512) with -Ofast and __builtin_pow()

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105431

--- Comment #9 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:e41fa23451c965516a37282268231933fd948845

commit r10-10765-ge41fa23451c965516a37282268231933fd948845
Author: Richard Biener 
Date:   Fri Apr 29 08:45:48 2022 +0200

tree-optimization/105431 - another overflow in powi handling

This avoids undefined signed overflow when calling powi_as_mults_1.

2022-04-29  Richard Biener  

PR tree-optimization/105431
* tree-ssa-math-opts.c (powi_as_mults_1): Make n unsigned.
(powi_as_mults): Use absu_hwi.
(gimple_expand_builtin_powi): Remove now pointless n != -n
check.

(cherry picked from commit 44b09adb9bad99dd7e3017c5ecefed7f7c9a1590)

[Bug tree-optimization/105368] [10 Regression] ICE: SIGSEGV in powi_lookup_cost (tree-ssa-math-opts.cc:1441) with -Ofast and __builtin_powf()

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105368

--- Comment #10 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:ebe6ffee1aa2d819e4fbdf4130e054a33c274b38

commit r10-10764-gebe6ffee1aa2d819e4fbdf4130e054a33c274b38
Author: Richard Biener 
Date:   Mon Apr 25 10:55:21 2022 +0200

tree-optimization/105368 - avoid overflow in powi_cost

The following avoids undefined signed overflow when computing
the absolute of the exponent in powi_cost.

2022-04-25  Richard Biener  

PR tree-optimization/105368
* tree-ssa-math-opts.c (powi_cost): Use absu_hwi.

(cherry picked from commit f0e170f72f8bfaa2a64e1d09ebdfd48f917420f1)

[Bug rtl-optimization/105559] [10 Regression] -g and -O3 cause timeout since r12-156-g8d4c374c4419a875

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105559

--- Comment #12 from CVS Commits  ---
The releases/gcc-10 branch has been updated by Richard Biener
:

https://gcc.gnu.org/g:6007449a1c3bd116e431fe53d4dfe2d1c67c1076

commit r10-10763-g6007449a1c3bd116e431fe53d4dfe2d1c67c1076
Author: Richard Biener 
Date:   Wed May 11 13:34:37 2022 +0200

rtl-optimization/105559 - avoid quadratic behavior in delete_insn_and_edges

When the insn to delete is a debug insn there's no point in figuring
out whether it might be the last real insn and thus we have to purge
dead edges.

2022-05-11  Richard Biener  

PR rtl-optimization/105559
* cfgrtl.c (delete_insn_and_edges): Only perform search to BB_END
for non-debug insns.

(cherry picked from commit 37a8220fa9188470c677abfef50c1b120c0b6c76)

[Bug ipa/105728] dead store to static var not optimized out

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105728

--- Comment #3 from Richard Biener  ---
Btw, any such optimization would be prone to remove 'debug_cnt' in

void foo()
{
  static int debug_cnt = 0;
  debug_cnt++;
  .. stuff ..
}

because here nothing depends on debug_cnt.  For some printf-style
debugging that might be surprising.  It of course already happens for

void foo()
{
  static bool ever_reached = false;
  ever_reached = true;
}

[Bug target/105506] Error building GCC 12.1.0 against MinGW-w64: fatal error: cannot execute 'cc1': CreateProcess: No such file or directory

2022-05-27 Thread brechtsanders at users dot sourceforge.net via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105506

--- Comment #3 from Brecht Sanders  
---
Created attachment 53046
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53046=edit
ProcessMonitor filtered on occurrence of "cc1"

[Bug libgomp/105745] [12/13 Regression] Conditional OpenMP directive fails with GCC 12

2022-05-27 Thread reiter.christoph at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105745

--- Comment #10 from Christoph Reiter  ---
lgtm

[Bug c++/105748] gcc ignores the pure attribute

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105748

Richard Biener  changed:

   What|Removed |Added

 Ever confirmed|0   |1
   Last reconfirmed||2022-05-27
   Keywords||missed-optimization
 CC||rguenth at gcc dot gnu.org
 Status|UNCONFIRMED |NEW

--- Comment #1 from Richard Biener  ---
It works fine with the C frontend so I suspect PRE (which does the transform
there) is confused by the fact that g_value isn't marked as to not throwing.

const int g_value() __attribute__((pure,nothrow));
int bar(int n) {
int s = 0;
for (int i=0; i

[Bug libgomp/105745] [12/13 Regression] Conditional OpenMP directive fails with GCC 12

2022-05-27 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105745

Jakub Jelinek  changed:

   What|Removed |Added

 Ever confirmed|0   |1
   Last reconfirmed||2022-05-27
 Status|UNCONFIRMED |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org

--- Comment #9 from Jakub Jelinek  ---
Created attachment 53045
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53045=edit
gcc13-pr105745.patch

GOMP_HAVE_EFFICIENT_ALIGNED_ALLOC is documented as:
/* Defined if gomp_aligned_alloc doesn't use fallback version
   and free can be used instead of gomp_aligned_free.  */
so the _aligned_malloc/_aligned_free pair doesn't satisfy that.

So my preference is this patch instead.

[Bug rtl-optimization/105747] Scheduler can take a long time on arm-linux sometimes

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105747

Richard Biener  changed:

   What|Removed |Added

Version|unknown |13.0

--- Comment #4 from Richard Biener  ---
Confirmed with a cross from x86_64:

 alias stmt walking :   2.47 ( 27%) 
 tree DSE   :   1.52 ( 17%)
 scheduling :   1.36 ( 15%) 
 TOTAL  :   9.15

so it's not only scheduling.  perf (release checking) shows:

Samples: 37K of event 'cycles', Event count (approx.): 41984911906  
Overhead   Samples  Command  Shared Object Symbol   
  26.20%  9765  cc1  cc1   [.] get_ref_base_and_extent
   4.37%  1635  cc1  cc1   [.] find_base_term
   3.75%  1392  cc1  cc1   [.] rank_for_schedule
   3.13%  1168  cc1  cc1   [.] wi::lshift_large
   2.52%   938  cc1  cc1   [.] canonize
   2.36%   876  cc1  cc1   [.] sd_lists_size
   2.27%   844  cc1  cc1   [.]
sd_find_dep_between_no_cache
   1.89%   701  cc1  cc1   [.]
operand_compare::operand_equal_p
   1.80%   671  cc1  cc1   [.] wi::mul_internal
   1.71%   637  cc1  cc1   [.]
simplify_context::simplify_plus_minus
   1.63%   613  cc1  cc1   [.] memrefs_conflict_p

note with a non-optimized compiler and checking enabled (but -fno-checking)
things are much slower.

[Bug ipa/105639] [12/13 Regression] ICE in propagate_controlled_uses, at ipa-prop.cc:4195 since r12-7936-gf6d65e803623c7ba

2022-05-27 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105639

--- Comment #3 from CVS Commits  ---
The master branch has been updated by Martin Jambor :

https://gcc.gnu.org/g:f571596f8cd8fbad34305b4bec1a813620e0cbf0

commit r13-798-gf571596f8cd8fbad34305b4bec1a813620e0cbf0
Author: Martin Jambor 
Date:   Fri May 27 13:05:40 2022 +0200

ipa: Check cst type when propagating controled uses info

PR 105639 shows that code with type-mismatches can trigger an assert
after runnning into a branch that was inteded only for references to
variables - as opposed to references to functions.  Fixed by moving
the condition from the assert to the guarding if statement.

gcc/ChangeLog:

2022-05-25  Martin Jambor  

PR ipa/105639
* ipa-prop.cc (propagate_controlled_uses): Check type of the
constant before adding a LOAD reference.

gcc/testsuite/ChangeLog:

2022-05-25  Martin Jambor  

PR ipa/105639
* gcc.dg/ipa/pr105639.c: New test.

[Bug libstdc++/105671] [11/12/13 Regression] Unexplained "undefined reference" error

2022-05-27 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105671

Jonathan Wakely  changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
 Ever confirmed|0   |1
   Last reconfirmed||2022-05-27
   Assignee|unassigned at gcc dot gnu.org  |redi at gcc dot gnu.org
   Priority|P3  |P2

--- Comment #3 from Jonathan Wakely  ---
Since we can't add the export to the release branches now, the simplest fix
might be to mark that function always_inline.

[Bug c++/105749] New: Bogus maybe-unitialized when using std::optional, regex and sstream

2022-05-27 Thread hi+gccbugs at yamlcoder dot me via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105749

Bug ID: 105749
   Summary: Bogus maybe-unitialized when using std::optional,
regex and sstream
   Product: gcc
   Version: 13.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: hi+gccbugs at yamlcoder dot me
  Target Milestone: ---

Created attachment 53044
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=53044=edit
t.ii reproducer

Compiling following with -Wall -Werror -Os produces bogus 
maybe-unitialized warning


/tmp/t.cpp: In function ‘void t(const string&)’:
/tmp/t.cpp:12:51: error: ‘*(int*)((char*) +
offsetof(std::optional,std::optional::.std::_Optional_base::))’ may be used uninitialized in this function
[-Werror=maybe-uninitialized]
   12 | reqb << "Host: " << port.value_or(443) << "\r\n";



Attaching .ii (tar.gz due to attachment limit) file from 11.2.0, but it is also
reproducible on trunk in godbolt: https://godbolt.org/z/ha3vn61n9

Interesting that commenting unrelated parts or changing them slightly makes
warning go away.


#include 
#include 
#include 

void t(const std::string& i) {
const std::regex re("^$"); //removing this works

std::optional port(i.length() > 0 ?
std::make_optional(std::strtol("99", nullptr, 10)) : std::nullopt);

std::ostringstream reqb;
reqb << "GET /" << i << " HTTP/1.1" << "\r\n"; //removing this works
reqb << "Host: " << port.value_or(443) << "\r\n";
}

[Bug libstdc++/101228] tbb/task.h is Deprecated in newer TBB.

2022-05-27 Thread redi at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101228

Jonathan Wakely  changed:

   What|Removed |Added

  Known to work||11.1.0

--- Comment #11 from Jonathan Wakely  ---
Yes, it was fixed by r11-4187 but the problem is still present on the gcc-10
branch.

[Bug debug/104337] [9 Regression] ICE when compiling with optimize attribute and always_inline at -m32 -g3 -O0

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104337

Richard Biener  changed:

   What|Removed |Added

  Known to fail||9.5.0
   Target Milestone|9.0 |10.4
 Resolution|--- |FIXED
 Status|ASSIGNED|RESOLVED

--- Comment #6 from Richard Biener  ---
Fixed for GCC 10.4.

[Bug c++/85743] Cannot call template member function inside a variadic lambda unless specifying `this`

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85743

Richard Biener  changed:

   What|Removed |Added

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

--- Comment #4 from Richard Biener  ---
still fixed.

[Bug tree-optimization/105198] [9 Regression] Wrong code for C loop (GCC 12 -O2, GCC 11 -O3)

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105198

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
   Target Milestone|9.5 |10.4
  Known to fail||9.5.0
 Resolution|--- |FIXED

--- Comment #13 from Richard Biener  ---
Fixed for GCC 10.4

[Bug middle-end/104402] [9 Regression] ICE on valid code caused by not lowering complex int compare inside a COND_EXPR

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104402

Richard Biener  changed:

   What|Removed |Added

 Resolution|--- |FIXED
  Known to fail||9.5.0
   Target Milestone|9.5 |10.4
 Status|ASSIGNED|RESOLVED

--- Comment #9 from Richard Biener  ---
Fixed for GCC 10.4.

[Bug tree-optimization/103615] [9 Regression] wrong code with "-O3" or "-O1 -ftree-vectorize" on x86_64-pc-linux-gnu

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103615

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.0
 Resolution|--- |FIXED
 Status|NEW |RESOLVED

--- Comment #3 from Richard Biener  ---
Fixed in GCC 10.

[Bug tree-optimization/103596] [9 Regression] ICE: tree check: expected class 'type', have 'exceptional' (error_mark) in useless_type_conversion_p, at gimple-expr.c:88 since r8-565-g7581ce9a1ad6df9c

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103596

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4
  Known to fail||9.5.0
 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #9 from Richard Biener  ---
Fixed for GCC 10.4.

[Bug fortran/103505] [9 Regression] ICE in compare_bound_mpz_t, at fortran/resolve.c:4587 since r8-7594-g078c5aff5ed83e9c

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103505

Richard Biener  changed:

   What|Removed |Added

 Resolution|--- |FIXED
   Target Milestone|9.5 |10.4
 Status|ASSIGNED|RESOLVED
  Known to fail||9.5.0
  Known to work||10.3.1

--- Comment #15 from Richard Biener  ---
Fixed for GCC 10.4.

[Bug c++/99201] [9 Regression] ICE in tsubst_copy, at cp/pt.c:16581 since r8-7613-g1456e764105702a0

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99201

Richard Biener  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
   Target Milestone|9.5 |10.4
  Known to fail||9.5.0
 Resolution|--- |FIXED

--- Comment #12 from Richard Biener  ---
Fixed for GCC 10.4.

[Bug c++/89224] [10/11/12 Regression] subscript of const vector has the wrong type

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89224

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4
Summary|[9/10/11/12 Regregression]  |[10/11/12 Regression]
   |subscript of const vector   |subscript of const vector
   |has the wrong type  |has the wrong type

--- Comment #7 from Richard Biener  ---
GCC 9 branch is being closed.

[Bug target/105506] Error building GCC 12.1.0 against MinGW-w64: fatal error: cannot execute 'cc1': CreateProcess: No such file or directory

2022-05-27 Thread brechtsanders at users dot sourceforge.net via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105506

--- Comment #2 from Brecht Sanders  
---
I did an additional test to see where gcc.exe is looking for cc1.exe using
Process Monitor.

This was using a i686 UCRT build of GCC against MinGW-w64 installed under:
D:\Prog\winlibs32ucrt_stage\mingw32

I'm on Windows 11.

First it looks here (opening the file handle with CreateFile):
D:\Prog\winlibs32ucrt_stage\mingw32\libexec\gcc\i686-w64-mingw32ucrt\12.1.0\cc1.exe
This actually exists.

But then a call to QueryInformationVolume fails with BUFFER OVERFLOW
and then agian another call to QueryAllInformationFile also fails with BUFFER
OVERFLOW

Then it goes on to look for cc1.exe in places where it doesn't exist.

[Bug c++/105742] [10/11/12/13 Regression] accepts-invalid non-dependent call to non-static member function from unrelated class in presence of dependent base

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105742

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #2 from Richard Biener  ---
GCC 9 branch is being closed

[Bug tree-optimization/105739] [10 Regression] Miscompilation of Linux kernel update.c

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105739

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #5 from Richard Biener  ---
GCC 9 branch is being closed

[Bug ipa/105600] [10/11/12/13 Regression] ICE with LTO when building Mumble

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105600

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #15 from Richard Biener  ---
GCC 9 branch is being closed

[Bug rtl-optimization/105559] [10 Regression] -g and -O3 cause timeout since r12-156-g8d4c374c4419a875

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105559

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #11 from Richard Biener  ---
GCC 9 branch is being closed

[Bug target/105554] [10/11/12/13 Regression] ICE: in emit_block_move_hints, at expr.cc:1829 since r9-5509-g5928bc2ec06dd4e7

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105554

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #4 from Richard Biener  ---
GCC 9 branch is being closed

[Bug target/105513] [10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #9 from Richard Biener  ---
GCC 9 branch is being closed

[Bug c++/105481] [10/11/12/13 Regression] ICE: unexpected expression of kind template_parm_index

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105481

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #6 from Richard Biener  ---
GCC 9 branch is being closed

[Bug rtl-optimization/105453] [10/11 Regression] load introduced by ce1 for conditional loads at -O1, might cause issues with the C/C++ memory model

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105453

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #6 from Richard Biener  ---
GCC 9 branch is being closed

[Bug c++/105452] [10/11/12/13 Regression] static_assert inside anonymous union inside a templated struct causes invalid "inaccessible within this context" error

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105452

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #3 from Richard Biener  ---
GCC 9 branch is being closed

[Bug middle-end/105263] [10 Regression] ICE: gimple check: expected gimple_assign(error_mark), have gimple_nop() in gimple_assign_rhs1, at gimple.h:2655 with _Decimal64 -ffast-math since r7-950-g8a85c

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105263

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #6 from Richard Biener  ---
GCC 9 branch is being closed

[Bug c++/105244] [10/11/12/13 Regression] ICE in implicitly_declare_fn, at cp/method.cc:3114

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105244

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #3 from Richard Biener  ---
GCC 9 branch is being closed

[Bug c++/105228] [10/11/12/13 Regression] ICE tree check: expected tree that contains 'decl minimal' structure, have 'error_mark' in decl_anon_ns_mem_p, at cp/tree.cc:3826 since r7-755-g23cb72663051cd

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105228

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #3 from Richard Biener  ---
GCC 9 branch is being closed

[Bug ipa/105227] [10/11/12/13 Regression] ICE in type_in_anonymous_namespace_p, at ipa-utils.h:233 since r9-2502-g143b379d89b12ccc

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105227

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #4 from Richard Biener  ---
GCC 9 branch is being closed

[Bug c/105180] [10/11/12/13 Regression] K style definition does not evaluate array size

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105180

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #2 from Richard Biener  ---
GCC 9 branch is being closed

[Bug fortran/105168] [10/11/12/13 Regression] ICE in gfc_maybe_dereference_var, at fortran/trans-expr.cc:2870 since r9-3522-gd0477233215e37de

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105168

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #3 from Richard Biener  ---
GCC 9 branch is being closed

[Bug tree-optimization/105163] [10 Regression] ICE: SSA corruption since r0-122928

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105163

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #6 from Richard Biener  ---
GCC 9 branch is being closed

[Bug fortran/105152] [10/11/12/13 Regression] ICE in gfc_conv_gfc_desc_to_cfi_desc, at fortran/trans-expr.cc:5647 since r9-5372-gbbf18dc5d248a79a

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105152

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #3 from Richard Biener  ---
GCC 9 branch is being closed

[Bug c/105150] [10/11 Regression] ICE with -Ofast: verify_gimple failed

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105150

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #11 from Richard Biener  ---
GCC 9 branch is being closed

[Bug c/105149] [10/11 Regression] ICE in verify_ssa, at tree-ssa.cc:1211

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105149

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #11 from Richard Biener  ---
GCC 9 branch is being closed

[Bug middle-end/105126] [10/11/12/13 Regression] Optimization regression gcc inserts not needed movsx when using switch statement

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105126

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #3 from Richard Biener  ---
GCC 9 branch is being closed

[Bug c++/105099] [10/11/12/13 Regression] In lookup of namespace name qualifiers only namespaces should be considered

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105099

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #4 from Richard Biener  ---
GCC 9 branch is being closed

[Bug rtl-optimization/104989] [10/11 Regression] ICE in rtl_verify_bb_insns, at cfgrtl.cc:2797 (error: flow control insn inside a basic block)

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104989

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #5 from Richard Biener  ---
GCC 9 branch is being closed

[Bug rtl-optimization/104961] [10/11 Regression] compilation never (?) finishes at -Og

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104961

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #5 from Richard Biener  ---
GCC 9 branch is being closed

[Bug tree-optimization/104931] [10 Regression] wrong-code with number_of_iterations_lt_to_ne

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104931

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #12 from Richard Biener  ---
GCC 9 branch is being closed

[Bug fortran/104717] [10/11 Regression] ICE: verify_ssa failed (Error: type mismatch between an SSA_NAME and its symbol)

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104717

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #11 from Richard Biener  ---
GCC 9 branch is being closed

[Bug fortran/104684] [10/11/12/13 Regression] ICE: 'verify_gimple' failed (Error: non-trivial conversion in 'component_ref') since r7-5771-gde91486c745d5ff6

2022-05-27 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104684

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|9.5 |10.4

--- Comment #2 from Richard Biener  ---
GCC 9 branch is being closed

  1   2   3   4   5   6   7   8   >