Another similar issue is with alias templates. The following code:
```
template
struct Cls {
using ptr = T *;
};
template
using Cls_ptr = typename Cls::ptr;
Cls_ptr ai;
Cls_ptr af;
```
produces
```
< 1><0x0029> DW_TAG_typedef
DW_AT_type <0x003d>
DW_AT_name (indexed string: 0x0
Hello all,
When I compile
```
template
struct Cls {
static const int v = 0;
};
template
int constexpr Cls_v = Cls::v;
int func() {
return Cls_v + Cls_v;
}
```
using `g++ -c main.cpp -o main.o -g`, I see two indistinguishable DIEs in the
generated debug info:
```
< 1><0x003a> DW_TAG_v
We're excited to announce that GCC will have a developer room at the
upcoming FOSDEM 2024, in Brussels, Belgium:
https://fosdem.org/2024/
This email is a Call for Presentations about GCC for the developer
room.
Important Dates:
1st December 2023 Submission deadline
8th December 202
Snapshot gcc-12-20231110 is now available on
https://gcc.gnu.org/pub/gcc/snapshots/12-20231110/
and on various mirrors, see http://gcc.gnu.org/mirrors.html for details.
This snapshot has been generated from the GCC 12 git branch
with the following options: git://gcc.gnu.org/git/gcc.git branch
> In your particular case we could indeed use undefined behavior like
> niter analysis does and it would be nice to somehow record its
> analysis and use it from SCEV.
Thanks for your confirmation!
I also saw the suggestion about "assumptions" (in pr101450) and thought about
how to support it gen
On Thu, Nov 9, 2023 at 10:51 AM Hao Liu OS via Gcc wrote:
>
> Hi,
>
> I'm investigating how to vectorize the following simple case:
>
> int A[1024 * 2];
> int foo1 (unsigned offset) {
> int sum = 0;
> for (unsigned i = 0; i < 1024; i++)
> sum += A[i + offset];
> r