[Bug analyzer/114677] [13/14 Regression] -Wanalyzer-fd-leak false positive writing to int * param

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114677

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug ada/114593] [11/12/13/14 regression] bogus error on type conversion in instantiation of child unit inside generic child unit

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114593

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |11.5

[Bug c++/114578] [13/14 Regression] memory hog, virtual memory exhausted, building a c++ file on arm-linux-gnueabihf

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114578

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug analyzer/111289] [13 Regression] Unwarranted -Wanalyzer-va-arg-type-mismatch warning

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111289

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug fortran/114373] [12/13 Regression] BLOCK construct not correctly analyzed with -fopenmp

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114373

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3
   Keywords||needs-bisection

[Bug analyzer/109802] [13 Regression] ICE using dubious flexible arrays in unions

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109802

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug analyzer/109577] [13 Regression] -Wanalyzer-allocation-size mishandles __builtin_mul_overflow

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109577

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug analyzer/112790] [13 Regression] -Wanalyzer-deref-before-check false positives seen in Linux kernel due to inlining

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112790

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug analyzer/109077] [11/12/13 Regression] Analyzer headers not installed

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109077

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |11.5

[Bug analyzer/109059] [11/12 Regression] -Wanalyzer-malloc-leak false +ve seen on haproxy's cfgparse.c: cfg_register_postparser

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109059

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |11.5

[Bug analyzer/111266] [13 Regression] Missing -Wanalyzer-out-of-bounds for concrete offset overwrite.

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111266

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug analyzer/110014] [13 Regression] -Wanalyzer-allocation-size mishandles realloc (..., .... * sizeof (object))

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110014

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug analyzer/108806] [12 Regression] -Wanalyzer-null-dereference false positives due to not handling bitmasks

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108806

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |12.4

[Bug analyzer/113333] [11/12/13 Regression] analyzer: False positives with calloc()

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=11

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |11.5

[Bug analyzer/112889] [11/12/13 Regression] ICE with -fanalyzer seen on Linux kernel drivers/infiniband/hw/cxgb4/cm.c

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112889

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |11.5

[Bug analyzer/112792] [13 Regression] -Wanalyzer-out-of-bounds false positives seen on Linux kernel with certain unions

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112792

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |13.3

[Bug analyzer/112969] [11/12/13 Regression] -Wanalyzer-exposure-through-uninit-copy false positive seen on Linux kernel's drivers/net/ethernet/intel/ice/ice_ptp.c

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112969

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |11.5

[Bug analyzer/113253] [11/12/13 Regression] gcc -g causes -fanalyzer to issue false positive

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113253

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |11.5

[Bug c++/104788] ICE in stmts_are_full_exprs_p

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104788

Andrew Pinski  changed:

   What|Removed |Added

  Attachment #57943|0   |1
is obsolete||

--- Comment #4 from Andrew Pinski  ---
Created attachment 57944
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57944=edit
Slightly more reduced

[Bug c++/104788] ICE in stmts_are_full_exprs_p

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104788

--- Comment #3 from Andrew Pinski  ---
Created attachment 57943
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57943=edit
Slightly more reduced

[Bug c++/67491] [meta-bug] concepts issues

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67491
Bug 67491 depends on bug 92439, which changed state.

Bug 92439 Summary: [concepts] trunk crashes on constraint satisfaction failure
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92439

   What|Removed |Added

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

[Bug c++/92439] [concepts] trunk crashes on constraint satisfaction failure

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92439

Andrew Pinski  changed:

   What|Removed |Added

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

--- Comment #5 from Andrew Pinski  ---
Fixed a while back.

[Bug bootstrap/95700] read-md.c: "missing sentinel in function call" when building gcc with musl

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95700

Andrew Pinski  changed:

   What|Removed |Added

 Resolution|--- |FIXED
   Target Milestone|--- |12.0
 Status|UNCONFIRMED |RESOLVED

--- Comment #22 from Andrew Pinski  ---
Fixed.

[Bug target/91811] 256-bit vector store isn't used

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91811

Andrew Pinski  changed:

   What|Removed |Added

  Known to work||13.1.0

--- Comment #2 from Andrew Pinski  ---
Looks to be fixed in GCC 13 ...

[Bug middle-end/99782] [11/12/13/14 Regression] Compile time and memory hog w/ __int128 on aarch64

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99782

Andrew Pinski  changed:

   What|Removed |Added

  Component|target  |middle-end

--- Comment #2 from Andrew Pinski  ---
The code for ccmp generation is O(n^2) it seems. Note even though ccmp is
target specific it is the middle-end part (which aarch64 might be the only one
that uses it right now) that is the issue.

[Bug target/99782] [11/12/13/14 Regression] Compile time and memory hog w/ __int128 on aarch64

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99782

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |11.5
 CC||pinskia at gcc dot gnu.org
Summary|Compile time and memory hog |[11/12/13/14 Regression]
   |w/ __int128 on aarch64  |Compile time and memory hog
   ||w/ __int128 on aarch64

[Bug target/94863] Failure to use blendps over mov when possible

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94863

--- Comment #4 from Andrew Pinski  ---
(In reply to Gabriel Ravier from comment #1)
> Note: The given outputs for LLVM and GCC are when compiling with `-O3
> -msse4.1`

I think you have the oppsite meaning with respect to `-msse4.1` here. They are
the same at -O3 but LLVM produces blendps with `-msse4.1` .

[Bug target/95247] Backport the DRIVER_SELF_SPECS implementation of -mdejagnu-cpu= to GCC 9

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95247

Andrew Pinski  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
   Target Milestone|--- |10.0
 Resolution|--- |FIXED

--- Comment #1 from Andrew Pinski  ---
GCC 9 has not been supported for a 2 years now so closing as fixed.

[Bug translation/40883] [meta-bug] Translation breakage with trivial fixes

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=40883
Bug 40883 depends on bug 80022, which changed state.

Bug 80022 Summary: arc: diagnostic ending in two periods
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80022

   What|Removed |Added

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

[Bug target/80022] arc: diagnostic ending in two periods

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80022

Andrew Pinski  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |9.0

--- Comment #3 from Andrew Pinski  ---
Fixed for GCC 9.

By the following commits:
r9-1178-gd65485c58fdd9a
r9-7029-g2fa9c1f65f59e8
r9-7130-gfe3ddee943061b

[Bug target/77633] AVX512: shuffle intrinsic has incorrect signature when optimizations are enabled

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77633

--- Comment #6 from Andrew Pinski  ---
https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html#text=_mm512_shuffle_epi32_expand=6414,6000

Specifically uses _MM_PERM_ENUM  here too.

[Bug target/77633] AVX512: shuffle intrinsic has incorrect signature when optimizations are enabled

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77633

--- Comment #5 from Andrew Pinski  ---
I see clang does not implement this intrinsics this way. They accept int.

[Bug tree-optimization/29756] SSE intrinsics hard to use without redundant temporaries appearing

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=29756

Andrew Pinski  changed:

   What|Removed |Added

  Known to work|14.0|

--- Comment #23 from Andrew Pinski  ---
The original testcase still has an issue though.
We get:
```
  _1 = MEM[(const float &)v_7(D) + 12];
  MEM[(float &)] = _1;
  _24 = D.6716._rep.vecf;
  _25 = VEC_PERM_EXPR <_24, _24, { 0, 0, 0, 0 }>;
```

[Bug tree-optimization/29756] SSE intrinsics hard to use without redundant temporaries appearing

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=29756

--- Comment #22 from Andrew Pinski  ---
Created attachment 57942
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57942=edit
uninclude of the original testcase

[Bug tree-optimization/29756] SSE intrinsics hard to use without redundant temporaries appearing

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=29756

--- Comment #21 from Andrew Pinski  ---
r14-3381-g27de9aa152141e combined with
r13-3212-gb88adba751da63
r13-3271-g786e4c024f9416

Fixed the "More concise demonstration of the v4sf->float->v4sf issue" testcase.

[Bug tree-optimization/29756] SSE intrinsics hard to use without redundant temporaries appearing

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=29756

Andrew Pinski  changed:

   What|Removed |Added

  Known to work||14.0

--- Comment #20 from Andrew Pinski  ---
Looks fixed on the trunk, will look into what fixed it in a few minutes.

transform_bad no longer has BIT_INSERT_EXPR .

[Bug target/88918] [meta-bug] x86 intrinsic issues

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88918
Bug 88918 depends on bug 78921, which changed state.

Bug 78921 Summary: SSE/AVX shuffle intrinsics uses ia32_builtins instead of 
__builtin_shuffle
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78921

   What|Removed |Added

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

[Bug target/78921] SSE/AVX shuffle intrinsics uses ia32_builtins instead of __builtin_shuffle

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78921

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |12.0
 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #1 from Andrew Pinski  ---
This was all implemented for GCC 12. So closing as fixed.

[Bug tree-optimization/29756] SSE intrinsics hard to use without redundant temporaries appearing

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=29756

--- Comment #19 from Andrew Pinski  ---
Created attachment 57941
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57941=edit
Uninclude version of the "More concise demonstration of the v4sf->float->v4sf
issue"

Uninclude version so it is easier to test with newer compilers.

[Bug c++/65406] Wrong namespace in error message for missing "typename" in lambda parameter type list

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65406

Andrew Pinski  changed:

   What|Removed |Added

   Last reconfirmed|2021-08-13 00:00:00 |2024-4-13
   Keywords||c++-lambda

--- Comment #2 from Andrew Pinski  ---
Outside of a template argument  we do get the :
```
:21:3: error: need 'typename' before 'here::Foo::Bar::type' because
'here::Foo::Bar' is a dependent scope
   21 |   Bar::type t;
  |   ^~~
```

But a method definition of a local class gives a bad diagnostic too:
```
: In member function 'void here::Foo::bad_error()':
:22:7: error: invalid use of qualified-name 'not_here::Buzz::type'
   22 | f(Bar::type){};
  |   ^~~
```

That is for:
```
  struct f{
f(Bar::type){};
  };
```
inside here::Foo::bad_error .

[Bug libfortran/114618] Format produces incorrect output when contains 1x, ok when uses " "

2024-04-13 Thread jvdelisle at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114618

Jerry DeLisle  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|DUPLICATE   |---
 Ever confirmed|0   |1
   Last reconfirmed||2024-04-14

--- Comment #4 from Jerry DeLisle  ---
Reopening this. I started working on the 'duplicate' portion of this which is
the 1X vs ' ' portion of it.  Then I realized the first sets of output have a
bunch of garbage in the output. My first thought was the allocatable strings
aspect of this.

I reduced this by removing those aspects of the original post to get the
following.

program tryit
   implicit none
   integer, parameter :: wp = kind(0d0)
   real(kind=wp) :: pi  =
3.14159265358979323846264338327950288419716939937510582097494459230_wp
   character(40) gen1
   character(40) gen2


   gen1 = '(19("."),t1,g0,1x,t21,g0)'
   gen2 = '(19("."),t1,g0," ",t21,g0)'

   write (*, gen1) 'PI', pi
   write (*, gen1) 'REAL(PI)', real(pi)
   write (*, gen1) 'DBLE(PI)', dble(pi)
   write (*, gen1) 'RADIX', radix(pi)
   write (*, gen1) 'RANGE', range(pi)
   write (*, gen1) 'PRECISION', precision(pi)
   write (*,'(80("-"))')
   write (*, gen2) 'PI', pi
   write (*, gen2) 'REAL(PI)', real(pi)
   write (*, gen2) 'DBLE(PI)', dble(pi)
   write (*, gen2) 'RADIX', radix(pi)
   write (*, gen2) 'RANGE', range(pi)
   write (*, gen2) 'PRECISION', precision(pi)
   write (*,'(80("-"))')
end program tryit

Which gives:

$ ./a.out 
PI. 3.1415926535897931
REAL(PI)... 3.14159274
DBLE(PI)... 3.1415926535897931
RADIX.. 3. 2
RANGE.. 3. 307
PRECISION.. 15

PI  3.1415926535897931
REAL(PI) .. 3.14159274
DBLE(PI) .. 3.1415926535897931
RADIX . 2
RANGE . 307
PRECISION . 15


I will focus on the 1X vs ' ' aspect of this as it fits into the 113897 that I
am currently working.

[Bug c++/88557] Lambda in template parameter list compiler segmentation fault (ICE)

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88557

Andrew Pinski  changed:

   What|Removed |Added

   Keywords||c++-lambda, rejects-valid
   Last reconfirmed|2021-08-07 00:00:00 |2024-4-13

--- Comment #3 from Andrew Pinski  ---
Now we are rejecting this valid C++17 code:
```
template
void f() { }
```

With:
```
:3:21: error: lambda-expression in template-argument only available
with '-std=c++2a' or '-std=gnu++2a'
3 | template
  | ^
```

Because I would have assumed calling a constexpr lambda would be a valid C++17
code.

We even reject this and cause an ICE:
```
template
void f() { }
```

But those examples are all valid C++17 due to constexpr'ness.

[Bug c++/94753] -undef, c++20 and feature-test macros

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94753

Andrew Pinski  changed:

   What|Removed |Added

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

--- Comment #1 from Andrew Pinski  ---
I am going to fix this for GCC 15.

The check for -undef is done way to early it seems in c_cpp_builtins .
Basically the code to define the feature macros need to be moved to before that
check.

The reason why __cplusplus works is because that is done via libcpp rather than
from the front-end.

[Bug tree-optimization/96672] Missing -Wclobbered diagnostic, or: __attribute__((returns_twice)) does not inhibit constant folding across call site

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96672

Andrew Pinski  changed:

   What|Removed |Added

 Depends on||57067

--- Comment #4 from Andrew Pinski  ---
(In reply to Richard Biener from comment #2)
> abnormal edges are "rebuilt" during RTL expansion, we have a duplicate
> somewhere for this correctness bug.

PR 57067


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57067
[Bug 57067] Missing control flow edges for setjmp/longjmp

[Bug target/114686] Feature request: Dynamic LMUL should be the default for the RISC-V Vector extension

2024-04-13 Thread juzhe.zhong at rivai dot ai via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114686

JuzheZhong  changed:

   What|Removed |Added

 CC||juzhe.zhong at rivai dot ai

--- Comment #2 from JuzheZhong  ---
CCing RISC-V folks who may be interested at it.

Yeah, I agree to set dynamic lmul as default. I have mentioned it long time
ago.
However, almost all other RISC-V folks disagree with that.

Here is data from Li Pan@intel:
https://github.com/Incarnation-p-lee/Incarnation-p-lee/blob/master/performance/coremark-pro/coremark-pro_in_k230_evb.png

Doing auto-vectorization on both LLVM and GCC (all LMUL) of coremark-pro.
Turns out dynamic LMUL is beneficial.

>> The vrgather.vv instruction should be except from that, because an LMUL=8
>> vrgather.vv is way more powerful than eight LMUL=1 vrgather.vv instructions,
>> and thus disproportionately complex to implement. When you don't need to 
>> cross
>> lanes, it's possible to unrolling LMUL=1 vrgathers manually, instead of
>> choosing a higher LMUL.

Agree, I think for some instructions like vrgather, we shouldn't pick the large
LMUL even though the register pressure of the program is ok.
We can consider large LMUL of vrgather as expensive in dynamic LMUL cost model
and optimize it in GCC-15.

>> vcompress.vm doesn't scale linearly with LMUL on the XuanTie chips either, 
>> but
>> a better implementation is conceivable, because the work can be better
>> distributed/subdivided. GCC currently doesn't seem to generate vcompress.vm 
>> via
>> auto-vectorization anyway: https://godbolt.org/z/Mb5Kba865

GCC may generate compress in auto-vectorization, your case is because GCC
failed to vectorize it, we may will optimize it in GCC-15.
Here is some cases that GCC may generate vcompress:

https://godbolt.org/z/5GKh4eM7z

[Bug c++/107168] [11/12/13 Regression] Wrong errors for concepts with default lambda not-type argument since r11-3714-gc1c62aec6751678e

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107168

Andrew Pinski  changed:

   What|Removed |Added

  Known to work||14.0
Summary|[11/12/13/14 Regression]|[11/12/13 Regression] Wrong
   |Wrong errors for concepts   |errors for concepts with
   |with default lambda |default lambda not-type
   |not-type argument since |argument since
   |r11-3714-gc1c62aec6751678e  |r11-3714-gc1c62aec6751678e

--- Comment #3 from Andrew Pinski  ---
Fixed on the trunk for GCC 14 by the recent lambda template patches.

[Bug c++/101704] "Already defined" error in case of many concept conversion operators

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101704

--- Comment #4 from Andrew Pinski  ---
I should note that clang 18+ (runtime) output is different from before and
looks correct.

[Bug c++/103807] Unable to make template class instance with default parameter of lambda::function

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103807

Andrew Pinski  changed:

   What|Removed |Added

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

--- Comment #6 from Andrew Pinski  ---
Fixed so closing.

[Bug c++/107024] ICE in finish_expr_stmt, at cp/semantics.cc:872

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107024

Andrew Pinski  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED
 Blocks||107430
   Keywords||c++-lambda
   Target Milestone|--- |14.0

--- Comment #5 from Andrew Pinski  ---
Fixed on the trunk for GCC 14 by the recent lambda template patches.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
[Bug 107430] [meta-bug] lambda in decltype

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 107024, which changed state.

Bug 107024 Summary: ICE in finish_expr_stmt, at cp/semantics.cc:872
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107024

   What|Removed |Added

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

[Bug c++/67491] [meta-bug] concepts issues

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67491
Bug 67491 depends on bug 103410, which changed state.

Bug 103410 Summary: ICE: in grokfndecl, at cp/decl.c:9903
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103410

   What|Removed |Added

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

[Bug c++/103410] ICE: in grokfndecl, at cp/decl.c:9903

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103410

Andrew Pinski  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
   Target Milestone|--- |12.0
 Blocks||67491
 Resolution|--- |FIXED

--- Comment #2 from Andrew Pinski  ---
Fixed in GCC 12:
:1:6: error: constraints on a non-templated function
1 | auto f() requires (auto{[]{}});
  |  ^


Referenced Bugs:

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

[Bug c++/99538] ICE: in maybe_add_lambda_conv_op, at cp/lambda.c:1037

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99538

Andrew Pinski  changed:

   What|Removed |Added

   Keywords||c++-lambda
   Last reconfirmed||2024-04-13
 Ever confirmed|0   |1
 Status|UNCONFIRMED |NEW

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

:3:35: internal compiler error: in maybe_add_lambda_conv_op, at
cp/lambda.cc:1099

[Bug c++/112926] issues with nested lambdas and decltype of uncaptured local variable

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112926

Andrew Pinski  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2024-04-13
 Ever confirmed|0   |1

--- Comment #2 from Andrew Pinski  ---
Confirmed.

[Bug c++/105667] [C++20] lambdas in template argument sometimes cause an ICE (seg fault)

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105667

Andrew Pinski  changed:

   What|Removed |Added

   Last reconfirmed|2022-05-19 00:00:00 |2024-4-13

--- Comment #9 from Andrew Pinski  ---
(In reply to Eric Niebler from comment #7)
> Another, even shorter repro:

This one is fixed for GCC 14 with the recent lambda template patches.

(In reply to Alfred Agrell from comment #8)
> I ran into something similar. My reduced testcase is

Likewise.

But the others still ICEs today on the trunk.

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 104670, which changed state.

Bug 104670 Summary: [11/12/13/14 Regression] ICE when using decltype of a 
lambda returning a struct inside of a struct
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104670

   What|Removed |Added

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

[Bug c++/104670] [11/12/13/14 Regression] ICE when using decltype of a lambda returning a struct inside of a struct

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104670

Andrew Pinski  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
   Target Milestone|11.5|12.0
   See Also||https://gcc.gnu.org/bugzill
   ||a/show_bug.cgi?id=101911
 Resolution|--- |FIXED
   Keywords||c++-lambda
 Blocks||107430

--- Comment #7 from Andrew Pinski  ---
Fixed in GCC 12.

Note you can make this an ICE after an invalid error with:
```
struct foo {
decltype([] {  struct a{
int fn() {}
}; a{}; }) bar;
};
```

But that is really PR 101911 .

So still closing as fixed.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
[Bug 107430] [meta-bug] lambda in decltype

[Bug c++/103952] [11/12/13/14 Regression] ICE: in cp_finish_decl, at cp/decl.c:7933

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103952

Andrew Pinski  changed:

   What|Removed |Added

   Last reconfirmed|2022-01-09 00:00:00 |2024-4-13

--- Comment #6 from Andrew Pinski  ---
Note the first example in comment #0 was fixed in GCC 13. The one in comment #1
still fails on the trunk.

[Bug rtl-optimization/80301] Sub-optimal code with an array of structs offsetted inside a struct global on x86/x86_64 at -O2

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80301

--- Comment #5 from Andrew Pinski  ---
Starting in GCC 11, we try to prop the add into the mem but then fail with:
```
cannot propagate from insn 9 into insn 10: would create an invalid MEM
cannot propagate from insn 9 into insn 16: would create an invalid MEM
```

I wonder if the mem address gets simplified or not ...

[Bug tree-optimization/114712] Missed optimization: simplify if-else basic blocks that share common destinations

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114712

Andrew Pinski  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 CC||pinskia at gcc dot gnu.org
 Ever confirmed|0   |1
   Severity|normal  |enhancement
   Last reconfirmed||2024-04-13
   Keywords||missed-optimization

--- Comment #1 from Andrew Pinski  ---
Confirmed. ifcombine would be the perfect location for this.

[Bug tree-optimization/114704] Missed optimization : eliminate store if the value is known in all predecessors

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114704

--- Comment #4 from Andrew Pinski  ---
(In reply to XChy from comment #3)
> Do you mean "*p = a" at the end?

In this case a and t should be the same value :). So it does not matter. I was
showing that sometimes gcc messes up when using the original value.

[Bug tree-optimization/114712] New: Missed optimization: simplify if-else basic blocks that share common destinations

2024-04-13 Thread xxs_chy at outlook dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114712

Bug ID: 114712
   Summary: Missed optimization: simplify if-else basic blocks
that share common destinations
   Product: gcc
   Version: 14.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xxs_chy at outlook dot com
  Target Milestone: ---

Godbolt link: https://godbolt.org/z/hY6Eaj8fj

```
void dummy();
void dummy1();

void src(bool c1, bool c2){
if(c1) {
if(c2)
goto bb1;
else
goto bb2;
} else {
if(c2)
goto bb2;
else
goto bb1;
}

bb1:
dummy();
return;
bb2:
dummy1();
return;
}
```

can be folded to:

```
void tgt(bool c1, bool c2){
if (c1 ^ c2) {
dummy1();
} else {
dummy();
}
}
```
It saves unnecessary branches.

[Bug c++/109870] Miscomputation of return type of unevaluated lambda in type alias in template context

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109870

Andrew Pinski  changed:

   What|Removed |Added

   See Also||https://gcc.gnu.org/bugzill
   ||a/show_bug.cgi?id=106221

--- Comment #3 from Andrew Pinski  ---
Very much related to PR 106221 .

[Bug fortran/113793] malloc abort on character allocate with source argument

2024-04-13 Thread anlauf at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113793

anlauf at gcc dot gnu.org changed:

   What|Removed |Added

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

--- Comment #5 from anlauf at gcc dot gnu.org ---
Submitted: https://gcc.gnu.org/pipermail/fortran/2024-April/060431.html

[Bug tree-optimization/114711] Missed optimization: fold load of global constant array if there is obivous pattern

2024-04-13 Thread xxs_chy at outlook dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114711

--- Comment #3 from XChy  ---
(In reply to Andrew Pinski from comment #1)
> Note the openssl code issue was reported in pr 114682

Oh, thanks for transferring this LLVM issue! And because I'm recently trying to
transfer some of my LLVM issues to GCC and do some statistic work, let me know
if you have transferred some of them.

[Bug tree-optimization/114711] Missed optimization: fold load of global constant array if there is obivous pattern

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114711

Andrew Pinski  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Keywords||missed-optimization
 Ever confirmed|0   |1
   Last reconfirmed||2024-04-13
   Severity|normal  |enhancement

--- Comment #2 from Andrew Pinski  ---
In the openssl code, it is a loop which can be unrolled and gcc does and then
is able to handle the load for string just fine but not the resulting ID. See
the linked issue for that.


But confirmed on this one but it is definitely harder.

[Bug tree-optimization/114711] Missed optimization: fold load of global constant array if there is obivous pattern

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114711

Andrew Pinski  changed:

   What|Removed |Added

   See Also||https://gcc.gnu.org/bugzill
   ||a/show_bug.cgi?id=114682

--- Comment #1 from Andrew Pinski  ---
Note the openssl code issue was reported in pr 114682

[Bug tree-optimization/114711] New: Missed optimization: fold load of global constant array if there is obivous pattern

2024-04-13 Thread xxs_chy at outlook dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114711

Bug ID: 114711
   Summary: Missed optimization: fold load of global constant
array if there is obivous pattern
   Product: gcc
   Version: 14.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: xxs_chy at outlook dot com
  Target Milestone: ---

Godbolt link: https://godbolt.org/z/MMxoGaj9T

```
static char* const names[3] = {"abc", "cdf", "dsadsa"};
char** const id2name[3] = {names, names + 1, names + 2};

void* src(size_t idx){
return id2name[idx];
}

```

can be folded to:

```
static char* const names[3] = {"abc", "cdf", "dsadsa"};
void* tgt(size_t idx){
return names + idx;
}
```

This is a real pattern from openssl.

[Bug ada/114710] New: Temporary object finalized too late

2024-04-13 Thread jhb.chat at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114710

Bug ID: 114710
   Summary: Temporary object finalized too late
   Product: gcc
   Version: 13.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: ada
  Assignee: unassigned at gcc dot gnu.org
  Reporter: jhb.chat at gmail dot com
CC: dkm at gcc dot gnu.org
  Target Milestone: ---

Created attachment 57940
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57940=edit
temporrary finalized too late

Version:  GCC/GNAT version 13.2.0, Win10 msys2 and Godbolt

Godbolt indicates this is a long standing functionality (all the way down to
8.2, which is the last I could check there).

When making a scoped lock / scoped mutex, I found that temporary variables
generated by a function were not being finalized after they were no longer
used.  This lead to a deadlock situation with the scope lock / scoped mutex. 
There doesn't appear to be any reason to hold onto the object returned by the
Lock function in this example. The call to the Lock function returns a
temporary object that is never saved and should be finalized immediately

In the example below, you can see the finalization happen after the body of
main completes instead of before by commenting out the v2 declaration (to
remove the deadlock).

Example:
---
with Ada.Finalization;
with Ada.Text_IO; use Ada.Text_IO;

procedure Example is

package Deadlocker is

protected type Mutex is
entry Lock;
procedure Unlock;
private
Locked : Boolean := False;
end Mutex;

type Instance
(Element : not null access Integer) 
is 
new Ada.Finalization.Limited_Controlled
with record
M : not null access Mutex;
end record;

overriding procedure Finalize(Self : in out Instance);

type Object is tagged limited record
Locker : aliased Mutex;
Item : aliased Integer;
end record;

function Lock
(Self : aliased in out Object) 
 return Instance'Class;

end Deadlocker;

package body Deadlocker is
protected body Mutex is
entry Lock when not Locked is
begin
Locked := True;
Put_Line("Locked!");
end Lock;

procedure Unlock is
begin
Locked := False;
Put_Line("Unlocked!");
end Unlock;
end Mutex;

function Lock
(Self : aliased in out Object) 
return Instance'Class
is begin
return Result : Instance := Instance'
(Ada.Finalization.Limited_Controlled with
 Element => Self.Item'Access, 
 M   => Self.Locker'Access)
do 
Put_Line("Locking...");
Result.M.Lock;
end return;
end Lock;

procedure Finalize(Self : in out Instance) is
begin
Put_Line("Unlocking...");
Self.M.Unlock;
end Finalize;
end Deadlocker;

Test : Deadlocker.Object;
v1 : constant Integer := Test.Lock.Element.all; -- Should release lock
after
v2 : constant Integer := Test.Lock.Element.all; -- Should release lock
after
begin
Put_Line("In main body");
end Example;
---

Output:
---
Program returned: 143
Program stdout

Locking...
Locked!
Locking...

Program stderr


Killed - processing time exceeded
Program terminated with signal: SIGKILL
---


Expected Output:
---
Program returned: 0
Program stdout

Locking...
Locked!
Unlocking...
Unlocked!
Locking...
Locked!
Unlocking...
Unlocked!
In main body
---

[Bug c++/54367] [meta-bug] lambda expressions

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54367
Bug 54367 depends on bug 104548, which changed state.

Bug 104548 Summary: parser rejects alias template id of lambda in 
unevaluated-context and accepts when no alias is used
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104548

   What|Removed |Added

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

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 104548, which changed state.

Bug 104548 Summary: parser rejects alias template id of lambda in 
unevaluated-context and accepts when no alias is used
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104548

   What|Removed |Added

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

[Bug c++/104548] parser rejects alias template id of lambda in unevaluated-context and accepts when no alias is used

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104548

Patrick Palka  changed:

   What|Removed |Added

 Resolution|--- |FIXED
   Target Milestone|--- |14.0
 CC||ppalka at gcc dot gnu.org
 Status|NEW |RESOLVED

--- Comment #3 from Patrick Palka  ---
Fixed for GCC 14 by the PR114393 fixes.

[Bug c++/106821] Incorrect behavior when using type alias template containing unevaluated lambda expression in a template context

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106821
Bug 106821 depends on bug 106221, which changed state.

Bug 106221 Summary: lamba inside a decltype in a using statement does not 
always work
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106221

   What|Removed |Added

 Status|RESOLVED|NEW
 Resolution|DUPLICATE   |---

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 106221, which changed state.

Bug 106221 Summary: lamba inside a decltype in a using statement does not 
always work
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106221

   What|Removed |Added

 Status|RESOLVED|NEW
 Resolution|DUPLICATE   |---

[Bug c++/106221] lamba inside a decltype in a using statement does not always work

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106221

Patrick Palka  changed:

   What|Removed |Added

 Resolution|DUPLICATE   |---
 Status|RESOLVED|NEW

--- Comment #6 from Patrick Palka  ---
oops no it's not, this still doesn't work

[Bug c++/106821] Incorrect behavior when using type alias template containing unevaluated lambda expression in a template context

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106821
Bug 106821 depends on bug 106221, which changed state.

Bug 106221 Summary: lamba inside a decltype in a using statement does not 
always work
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106221

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |DUPLICATE

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 106221, which changed state.

Bug 106221 Summary: lamba inside a decltype in a using statement does not 
always work
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106221

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |DUPLICATE

[Bug c++/106221] lamba inside a decltype in a using statement does not always work

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106221

Patrick Palka  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |DUPLICATE
 CC||ppalka at gcc dot gnu.org

--- Comment #5 from Patrick Palka  ---
dup of the recently fixed PR92707

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

[Bug c++/92707] type alias on type alias on lambda in unevaluated context does not work

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92707

Patrick Palka  changed:

   What|Removed |Added

 CC||elliot.haisley at gmail dot com

--- Comment #4 from Patrick Palka  ---
*** Bug 106221 has been marked as a duplicate of this bug. ***

[Bug c++/54367] [meta-bug] lambda expressions

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54367
Bug 54367 depends on bug 92211, which changed state.

Bug 92211 Summary: Lamdas in unevaluated context bug
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92211

   What|Removed |Added

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

[Bug c++/92211] Lamdas in unevaluated context bug

2024-04-13 Thread ppalka at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92211

Patrick Palka  changed:

   What|Removed |Added

   Target Milestone|--- |14.0
 Status|NEW |RESOLVED
 CC||ppalka at gcc dot gnu.org
 Resolution|--- |FIXED

--- Comment #2 from Patrick Palka  ---
This seems fixed for GCC 14 after r14-9938 / r14-9943 for PR114393.

[Bug tree-optimization/112723] [11/12/13/14 Regression] Missed optimization for invariants 'c+c' when c += -2147483647-1 and c is a global variable

2024-04-13 Thread law at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112723

Jeffrey A. Law  changed:

   What|Removed |Added

 CC||law at gcc dot gnu.org
   Priority|P3  |P2

[Bug tree-optimization/114704] Missed optimization : eliminate store if the value is known in all predecessors

2024-04-13 Thread xxs_chy at outlook dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114704

--- Comment #3 from XChy  ---
(In reply to Andrew Pinski from comment #1)
> Confirmed. A more general testcase:
> ```
> void dummy();
> 
> void src(int *p, int a){
> int t = *p;
> if(t == a)
> goto then;
> else {
> dummy();
> t = *p;
> if(t == a)
> goto then;
> else
> return;
> }
> 
> then:
> *p = t; // *p is already a, it's dead now
> }
> 
> ```

Do you mean "*p = a" at the end?

[Bug testsuite/109596] [14 Regression] Lots of guality testcase fails on x86_64 after r14-162-gcda246f8b421ba

2024-04-13 Thread haochen.jiang at intel dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109596

--- Comment #18 from Haochen Jiang  ---
(In reply to Andrew Pinski from comment #16)
> (In reply to Carlos Eduardo Seo from comment #15)
> > I see some failures after this patch on aarch64-linux-gnu:
> > 
> > FAIL: gcc.dg/guality/pr54693-2.c -O2 -flto -fuse-linker-plugin
> > -fno-fat-lto-objects  -DPREVENT_OPTIMIZATION line 21 x == 10 - i
> > FAIL: gcc.dg/guality/pr54693-2.c -O2 -flto -fuse-linker-plugin
> > -fno-fat-lto-objects  -DPREVENT_OPTIMIZATION line 21 y == 20 - 2 * i
> > FAIL: gcc.dg/guality/pr54693-2.c -O2 -flto -fuse-linker-plugin
> > -fno-fat-lto-objects  -DPREVENT_OPTIMIZATION line 21 z == 30 - 3 * i
> > 
> > Could you please take a look?
> 
> I suspect it is similar to what was already discussed here: 
> 
> https://gcc.gnu.org/pipermail/gcc-patches/2024-April/649347.html

Yes. As Richard said, the FAIL are exactly the same before Honza's patch, I
suppose expected.

[Bug c++/114709] [12/13/14 Regression] Incorrect handling of inactive union member access via pointer to member in constant evaluated context

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114709

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |12.4
  Known to work||11.4.0
  Known to fail||12.1.0
Summary|Incorrect handling of   |[12/13/14 Regression]
   |inactive union member   |Incorrect handling of
   |access via pointer to   |inactive union member
   |member in constant  |access via pointer to
   |evaluated context   |member in constant
   ||evaluated context
   Keywords||needs-bisection

[Bug c++/114709] Incorrect handling of inactive union member access via pointer to member in constant evaluated context

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114709

Andrew Pinski  changed:

   What|Removed |Added

   Keywords||accepts-invalid
   Last reconfirmed||2024-04-13
 Ever confirmed|0   |1
 Status|UNCONFIRMED |NEW

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

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 114106, which changed state.

Bug 114106 Summary: Wrong result of decltype
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114106

   What|Removed |Added

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

[Bug c++/114106] Wrong result of decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114106

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |14.0
 Resolution|--- |FIXED
 Status|UNCONFIRMED |RESOLVED

--- Comment #2 from Andrew Pinski  ---
Fixed on the trunk for GCC 14 by the recent lambda template patches.

[Bug c++/113754] GCC complains when using a type that depends on lambda

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113754

Andrew Pinski  changed:

   What|Removed |Added

   Last reconfirmed||2024-04-13
   Keywords||diagnostic
 Depends on||109367
 Status|UNCONFIRMED |NEW
 Ever confirmed|0   |1

--- Comment #2 from Andrew Pinski  ---
Confirmed. Very similar issue to PR 109367 .


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109367
[Bug 109367] bogus -Wunused-function warning with decltype of a lambda as an
argument

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 112715, which changed state.

Bug 112715 Summary: Incorrect handling of template type aliases instantiated 
from decltype of lambdas
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112715

   What|Removed |Added

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

[Bug c++/112715] Incorrect handling of template type aliases instantiated from decltype of lambdas

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112715

Andrew Pinski  changed:

   What|Removed |Added

 Resolution|--- |FIXED
   Target Milestone|--- |14.0
 Status|UNCONFIRMED |RESOLVED

--- Comment #2 from Andrew Pinski  ---
Fixed on the trunk for GCC 14 by the recent lambda template patches.

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 111717, which changed state.

Bug 111717 Summary: syntax error When CTAD encounters complex alias template
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111717

   What|Removed |Added

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

[Bug c++/111717] syntax error When CTAD encounters complex alias template

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111717

Andrew Pinski  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|UNCONFIRMED |RESOLVED
   Target Milestone|--- |14.0

--- Comment #3 from Andrew Pinski  ---
Fixed on the trunk for GCC 14 by the recent lambda template patches.

[Bug c++/110856] GCC rejects template alias of function type as invalid template parameter

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110856

Andrew Pinski  changed:

   What|Removed |Added

 Resolution|--- |FIXED
   Target Milestone|--- |14.0
 Status|UNCONFIRMED |RESOLVED

--- Comment #1 from Andrew Pinski  ---
Fixed on the trunk for GCC 14 by the recent lambda template patches.

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 110681, which changed state.

Bug 110681 Summary: bogus warning -Wreturn-type for lambda in tparam list
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110681

   What|Removed |Added

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

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 110856, which changed state.

Bug 110856 Summary: GCC rejects template alias of function type as invalid 
template parameter
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110856

   What|Removed |Added

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

[Bug c++/110681] bogus warning -Wreturn-type for lambda in tparam list

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110681

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |14.0
 Resolution|--- |FIXED
 Status|UNCONFIRMED |RESOLVED

--- Comment #2 from Andrew Pinski  ---
Fixed on the trunk for GCC 14 by the recent lambda template patches.

[Bug c++/110680] erroneous error "non-template type 'C' used as a template"

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110680

Andrew Pinski  changed:

   What|Removed |Added

 Ever confirmed|0   |1
   Last reconfirmed||2024-04-13
 Status|UNCONFIRMED |NEW

--- Comment #2 from Andrew Pinski  ---
Confirmed.

[Bug c++/107430] [meta-bug] lambda in decltype

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107430
Bug 107430 depends on bug 110552, which changed state.

Bug 110552 Summary: ICE on valid code in maybe_instantiate_noexcept
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110552

   What|Removed |Added

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

[Bug c++/110552] ICE on valid code in maybe_instantiate_noexcept

2024-04-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110552

Andrew Pinski  changed:

   What|Removed |Added

   Target Milestone|--- |14.0
 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #7 from Andrew Pinski  ---
Fixed on the trunk for GCC 14 by the recent lambda template patches.

  1   2   >