https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
Marek Polacek changed:
What|Removed |Added
Status|ASSIGNED|RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
--- Comment #8 from Marek Polacek ---
Fixed on trunk so far, will backport to 9 sometime soon.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
--- Comment #7 from CVS Commits ---
The master branch has been updated by Marek Polacek :
https://gcc.gnu.org/g:423284053ec51832bc4c823fb90dc41e632e37ac
commit r10-6329-g423284053ec51832bc4c823fb90dc41e632e37ac
Author: Marek Polacek
Date: Tu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
Marek Polacek changed:
What|Removed |Added
Keywords||ice-on-valid-code, patch,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
Marek Polacek changed:
What|Removed |Added
Status|NEW |ASSIGNED
Assignee|unassigned a
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
--- Comment #4 from Marek Polacek ---
A related test that I think should compile:
struct A {
constexpr A(int) { }
};
template
struct B {
};
template
void foo()
{
B b; // works with B<1>
}
void
fn ()
{
foo<1>();
}
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
--- Comment #3 from Marek Polacek ---
Test I've been playing with:
struct A {
constexpr A(int) { }
};
template
struct B {
using U = unsigned;
};
template
using U = B;
//template::U> // ok
template::U> // ICE
//template::U> // error
void
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
--- Comment #2 from Marek Polacek ---
Because of the alias template build_converted_constant_expr produces a
TARGET_EXPR containing a TEMPLATE_PARM_INDEX which makes it value-dependent.
So we don't call get_template_parm_object here
7449
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92948
Marek Polacek changed:
What|Removed |Added
Status|UNCONFIRMED |NEW
Last reconfirmed|