public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/100252] New: Internal compiler error during template instantiation
@ 2021-04-25 3:08 sand at rifkin dot dev
2021-04-25 15:31 ` [Bug c++/100252] " sand at rifkin dot dev
` (17 more replies)
0 siblings, 18 replies; 19+ messages in thread
From: sand at rifkin dot dev @ 2021-04-25 3:08 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Bug ID: 100252
Summary: Internal compiler error during template instantiation
Product: gcc
Version: 10.3.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: sand at rifkin dot dev
Target Milestone: ---
An internal compiler error occurs while compiling this template code:
https://godbolt.org/z/rP9Wf97vP.
Error message:
<source>: In member function 'typename example::Ac<B>::gt<I>::k& tcc<A>::gr()
[with int I = 1; A = {float, int}]':
<source>:97:62: internal compiler error: in replace_placeholders_r, at
cp/tree.c:3332
97 | return typename example::Ac<A...>::template gt<I>{k}.K;
| ~~~~~~~~~^
0x1cff079 internal_error(char const*, ...)
???:0
0x6bac69 fancy_abort(char const*, int, char const*)
???:0
0x13971f3 walk_tree_1(tree_node**, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*,
tree_node* (*)(tree_node**, int*, tree_node* (*)(tree_node**, int*, void*),
void*, hash_set<tree_node*, false, default_hash_traits<tree_node*> >*))
???:0
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
@ 2021-04-25 15:31 ` sand at rifkin dot dev
2021-04-26 0:47 ` sand at rifkin dot dev
` (16 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: sand at rifkin dot dev @ 2021-04-25 15:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
--- Comment #1 from Jeremy R. <sand at rifkin dot dev> ---
A more minimal case: https://godbolt.org/z/jxP9e35bz
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
2021-04-25 15:31 ` [Bug c++/100252] " sand at rifkin dot dev
@ 2021-04-26 0:47 ` sand at rifkin dot dev
2021-04-26 7:28 ` rguenth at gcc dot gnu.org
` (15 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: sand at rifkin dot dev @ 2021-04-26 0:47 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
--- Comment #2 from Jeremy R. <sand at rifkin dot dev> ---
Even more minimal case: https://godbolt.org/z/M3Tv9oqcn
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
2021-04-25 15:31 ` [Bug c++/100252] " sand at rifkin dot dev
2021-04-26 0:47 ` sand at rifkin dot dev
@ 2021-04-26 7:28 ` rguenth at gcc dot gnu.org
2021-04-26 14:37 ` [Bug c++/100252] [8/9/10/11/12 Regression] " mpolacek at gcc dot gnu.org
` (14 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-04-26 7:28 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ice-on-valid-code
Ever confirmed|0 |1
Known to fail| |10.3.0, 11.0, 12.0
Status|UNCONFIRMED |NEW
Last reconfirmed| |2021-04-26
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
template<int I>
struct E{
int &K;
decltype(E<I-1>::k) &k = E<I-1>{K}.k;
};
template<>
struct E<0>{
int &K;
int &k = K;
};
int main(){
int r;
E<1>{r}.k = 7;
}
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [8/9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (2 preceding siblings ...)
2021-04-26 7:28 ` rguenth at gcc dot gnu.org
@ 2021-04-26 14:37 ` mpolacek at gcc dot gnu.org
2021-04-26 21:11 ` ppalka at gcc dot gnu.org
` (13 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2021-04-26 14:37 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Marek Polacek <mpolacek at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|Internal compiler error |[8/9/10/11/12 Regression]
|during template |Internal compiler error
|instantiation |during template
| |instantiation
Target Milestone|--- |8.5
CC| |mpolacek at gcc dot gnu.org
--- Comment #4 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Started with r216750.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [8/9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (3 preceding siblings ...)
2021-04-26 14:37 ` [Bug c++/100252] [8/9/10/11/12 Regression] " mpolacek at gcc dot gnu.org
@ 2021-04-26 21:11 ` ppalka at gcc dot gnu.org
2021-04-30 8:10 ` rguenth at gcc dot gnu.org
` (12 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: ppalka at gcc dot gnu.org @ 2021-04-26 21:11 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Patrick Palka <ppalka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |ppalka at gcc dot gnu.org
--- Comment #5 from Patrick Palka <ppalka at gcc dot gnu.org> ---
Reduced:
struct A {
int x;
int y = x;
};
struct B {
int x = 0;
int y = A{x}.y;
};
B b = {};
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [8/9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (4 preceding siblings ...)
2021-04-26 21:11 ` ppalka at gcc dot gnu.org
@ 2021-04-30 8:10 ` rguenth at gcc dot gnu.org
2021-05-14 9:54 ` [Bug c++/100252] [9/10/11/12 " jakub at gcc dot gnu.org
` (11 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-04-30 8:10 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P2
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (5 preceding siblings ...)
2021-04-30 8:10 ` rguenth at gcc dot gnu.org
@ 2021-05-14 9:54 ` jakub at gcc dot gnu.org
2021-06-01 8:20 ` rguenth at gcc dot gnu.org
` (10 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-05-14 9:54 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|8.5 |9.4
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 8 branch is being closed.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (6 preceding siblings ...)
2021-05-14 9:54 ` [Bug c++/100252] [9/10/11/12 " jakub at gcc dot gnu.org
@ 2021-06-01 8:20 ` rguenth at gcc dot gnu.org
2022-04-25 22:43 ` mpolacek at gcc dot gnu.org
` (9 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-01 8:20 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|9.4 |9.5
--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 9.4 is being released, retargeting bugs to GCC 9.5.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (7 preceding siblings ...)
2021-06-01 8:20 ` rguenth at gcc dot gnu.org
@ 2022-04-25 22:43 ` mpolacek at gcc dot gnu.org
2022-04-26 15:54 ` mpolacek at gcc dot gnu.org
` (8 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2022-04-25 22:43 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
--- Comment #8 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
This is tricky, because we end up with
{.x=(&<PLACEHOLDER_EXPR struct B>)->x, .y=(&<PLACEHOLDER_EXPR struct A>)->x}
that is, two PLACEHOLDER_EXPRs for different types on the same level in one {
}, so our CONSTRUCTOR_PLACEHOLDER_BOUNDARY mechanism to avoid replacing
unrelated PLACEHOLDER_EXPRs will not work.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (8 preceding siblings ...)
2022-04-25 22:43 ` mpolacek at gcc dot gnu.org
@ 2022-04-26 15:54 ` mpolacek at gcc dot gnu.org
2022-04-26 15:58 ` mpolacek at gcc dot gnu.org
` (7 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2022-04-26 15:54 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
--- Comment #9 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
When we are cp_parser_late_parsing_nsdmi for "int y = A{x}.y;" we perform
finish_compound_literal on type=A, compound_literal={((struct B *) this)->x}.
When digesting this initializer, we call get_nsdmi which creates a
PLACEHOLDER_EXPR for A -- we don't have any object to refer to yet. After
digesting, we have
{.x=((struct B *) this)->x, .y=(&<PLACEHOLDER_EXPR struct A>)->x}
and since we've created a PLACEHOLDER_EXPR inside it, we marked the whole ctor
CONSTRUCTOR_PLACEHOLDER_BOUNDARY. f_c_l creates a TARGET_EXPR and returns
TARGET_EXPR <D.2384, {.x=((struct B *) this)->x, .y=(&<PLACEHOLDER_EXPR
struct A>)->x}>
(*)
Then we get to
B b = {};
and call store_init_value, which digest the {}, which produces
{.x=NON_LVALUE_EXPR <0>, .y=(TARGET_EXPR <D.2395, {.x=(&<PLACEHOLDER_EXPR
struct B>)->x, .y=(&<PLACEHOLDER_EXPR struct A>)->x}>).y}
The call to replace_placeholders in store_init_value will not do anything:
we've marked the inner { } CONSTRUCTOR_PLACEHOLDER_BOUNDARY, and it's only a
sub-expression, so replace_placeholders does nothing, so the <PLACEHOLDER_EXPR
struct B> stays even though now it was the perfect time to replace it because
we have an object for it: 'b'.
Later, in cp_gimplify_init_expr the *expr_p is
D.2395 = {.x=(&<PLACEHOLDER_EXPR struct B>)->x, .y=(&<PLACEHOLDER_EXPR struct
A>)->x}
where D.2395 is of type A, but we crash because we hit <PLACEHOLDER_EXPR struct
B>, which has a different type.
Now here's an idea how we could fix this: at the (*) point in
finish_compound_literal we could replace <PLACEHOLDER_EXPR struct A> with
D.2384 because now we have an object! Then clear
CONSTRUCTOR_PLACEHOLDER_BOUNDARY, because we no longer have a PLACEHOLDER_EXPR
in the {}. Then store_init_value will be able to replace <PLACEHOLDER_EXPR
struct B> with 'b', and we should be good to go.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (9 preceding siblings ...)
2022-04-26 15:54 ` mpolacek at gcc dot gnu.org
@ 2022-04-26 15:58 ` mpolacek at gcc dot gnu.org
2022-04-26 22:46 ` mpolacek at gcc dot gnu.org
` (6 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2022-04-26 15:58 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
--- Comment #10 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Proof of concept:
--- a/gcc/cp/semantics.cc
+++ b/gcc/cp/semantics.cc
@@ -3296,6 +3296,14 @@ finish_compound_literal (tree type, tree
compound_literal,
if (TREE_CODE (compound_literal) == CONSTRUCTOR)
TREE_HAS_CONSTRUCTOR (compound_literal) = false;
compound_literal = get_target_expr_sfinae (compound_literal, complain);
+ if (parsing_nsdmi ())
+ {
+ tree obj = TARGET_EXPR_SLOT (compound_literal);
+ tree &ctor = TARGET_EXPR_INITIAL (compound_literal);
+ replace_placeholders (compound_literal, obj);
+ if (TREE_CODE (ctor) == CONSTRUCTOR)
+ CONSTRUCTOR_PLACEHOLDER_BOUNDARY (ctor) = false;
+ }
}
else
/* For e.g. int{42} just make sure it's a prvalue. */
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (10 preceding siblings ...)
2022-04-26 15:58 ` mpolacek at gcc dot gnu.org
@ 2022-04-26 22:46 ` mpolacek at gcc dot gnu.org
2022-05-25 15:01 ` [Bug c++/100252] [9/10/11/12/13 " cvs-commit at gcc dot gnu.org
` (5 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2022-04-26 22:46 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Marek Polacek <mpolacek at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |mpolacek at gcc dot gnu.org
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [9/10/11/12/13 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (11 preceding siblings ...)
2022-04-26 22:46 ` mpolacek at gcc dot gnu.org
@ 2022-05-25 15:01 ` cvs-commit at gcc dot gnu.org
2022-05-25 15:03 ` [Bug c++/100252] [9/10/11/12 " mpolacek at gcc dot gnu.org
` (4 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-05-25 15:01 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
--- Comment #11 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Marek Polacek <mpolacek@gcc.gnu.org>:
https://gcc.gnu.org/g:1b661f3f5e712c951e774b3b91fffe4dac734cc7
commit r13-765-g1b661f3f5e712c951e774b3b91fffe4dac734cc7
Author: Marek Polacek <polacek@redhat.com>
Date: Tue Apr 26 15:52:00 2022 -0400
c++: ICE with temporary of class type in DMI [PR100252]
Consider
struct A {
int x;
int y = x;
};
struct B {
int x = 0;
int y = A{x}.y; // #1
};
where for #1 we end up with
{.x=(&<PLACEHOLDER_EXPR struct B>)->x, .y=(&<PLACEHOLDER_EXPR struct
A>)->x}
that is, two PLACEHOLDER_EXPRs for different types on the same level in
a {}. This crashes because our CONSTRUCTOR_PLACEHOLDER_BOUNDARY mechanism
to
avoid replacing unrelated PLACEHOLDER_EXPRs cannot deal with it.
Here's why we wound up with those PLACEHOLDER_EXPRs: When we're performing
cp_parser_late_parsing_nsdmi for "int y = A{x}.y;" we use
finish_compound_literal
on type=A, compound_literal={((struct B *) this)->x}. When digesting this
initializer, we call get_nsdmi which creates a PLACEHOLDER_EXPR for A -- we
don't
have any object to refer to yet. After digesting, we have
{.x=((struct B *) this)->x, .y=(&<PLACEHOLDER_EXPR struct A>)->x}
and since we've created a PLACEHOLDER_EXPR inside it, we marked the whole
ctor
CONSTRUCTOR_PLACEHOLDER_BOUNDARY. f_c_l creates a TARGET_EXPR and returns
TARGET_EXPR <D.2384, {.x=((struct B *) this)->x, .y=(&<PLACEHOLDER_EXPR
struct A>)->x}>
Then we get to
B b = {};
and call store_init_value, which digests the {}, which produces
{.x=NON_LVALUE_EXPR <0>, .y=(TARGET_EXPR <D.2395, {.x=(&<PLACEHOLDER_EXPR
struct B>)->x, .y=(&<PLACEHOLDER_EXPR struct A>)->x}>).y}
lookup_placeholder in constexpr won't find an object to replace the
PLACEHOLDER_EXPR for B, because ctx->object will be D.2395 of type A, and
we
cannot search outward from D.2395 to find 'b'.
The call to replace_placeholders in store_init_value will not do anything:
we've marked the inner { } CONSTRUCTOR_PLACEHOLDER_BOUNDARY, and it's only
a sub-expression, so replace_placeholders does nothing, so the <P_E struct
B>
stays even though now is the perfect time to replace it because we have an
object for it: 'b'.
Later, in cp_gimplify_init_expr the *expr_p is
D.2395 = {.x=(&<PLACEHOLDER_EXPR struct B>)->x, .y=(&<PLACEHOLDER_EXPR
struct A>)->x}
where D.2395 is of type A, but we crash because we hit <P_E struct B>,
which
has a different type.
My idea was to replace <P_E struct A> with D.2384 after creating the
TARGET_EXPR because that means we have an object we can refer to.
Then clear CONSTRUCTOR_PLACEHOLDER_BOUNDARY because we no longer have
a PLACEHOLDER_EXPR in the {}. Then store_init_value will be able to
replace <P_E struct B> with 'b', and we should be good to go. We must
be careful not to break guaranteed copy elision, so this replacement
happens in digest_nsdmi_init where we can see the whole initializer,
and avoid replacing any placeholders in TARGET_EXPRs used in the context
of initialization/copy elision. This is achieved via the new function
called potential_prvalue_result_of.
While fixing this problem, I found PR105550, thus the FIXMEs in the
tests.
PR c++/100252
gcc/cp/ChangeLog:
* typeck2.cc (potential_prvalue_result_of): New.
(replace_placeholders_for_class_temp_r): New.
(digest_nsdmi_init): Call it.
gcc/testsuite/ChangeLog:
* g++.dg/cpp1y/nsdmi-aggr14.C: New test.
* g++.dg/cpp1y/nsdmi-aggr15.C: New test.
* g++.dg/cpp1y/nsdmi-aggr16.C: New test.
* g++.dg/cpp1y/nsdmi-aggr17.C: New test.
* g++.dg/cpp1y/nsdmi-aggr18.C: New test.
* g++.dg/cpp1y/nsdmi-aggr19.C: New test.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [9/10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (12 preceding siblings ...)
2022-05-25 15:01 ` [Bug c++/100252] [9/10/11/12/13 " cvs-commit at gcc dot gnu.org
@ 2022-05-25 15:03 ` mpolacek at gcc dot gnu.org
2022-05-27 9:45 ` [Bug c++/100252] [10/11/12 " rguenth at gcc dot gnu.org
` (3 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2022-05-25 15:03 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Marek Polacek <mpolacek at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[9/10/11/12/13 Regression] |[9/10/11/12 Regression]
|Internal compiler error |Internal compiler error
|during template |during template
|instantiation |instantiation
--- Comment #12 from Marek Polacek <mpolacek at gcc dot gnu.org> ---
Fixed on trunk so far.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (13 preceding siblings ...)
2022-05-25 15:03 ` [Bug c++/100252] [9/10/11/12 " mpolacek at gcc dot gnu.org
@ 2022-05-27 9:45 ` rguenth at gcc dot gnu.org
2022-06-28 10:44 ` jakub at gcc dot gnu.org
` (2 subsequent siblings)
17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-05-27 9:45 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|9.5 |10.4
--- Comment #13 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 9 branch is being closed
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (14 preceding siblings ...)
2022-05-27 9:45 ` [Bug c++/100252] [10/11/12 " rguenth at gcc dot gnu.org
@ 2022-06-28 10:44 ` jakub at gcc dot gnu.org
2022-07-01 16:12 ` mpolacek at gcc dot gnu.org
2023-07-07 10:39 ` [Bug c++/100252] [11/12 " rguenth at gcc dot gnu.org
17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-06-28 10:44 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|10.4 |10.5
--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
GCC 10.4 is being released, retargeting bugs to GCC 10.5.
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [10/11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (15 preceding siblings ...)
2022-06-28 10:44 ` jakub at gcc dot gnu.org
@ 2022-07-01 16:12 ` mpolacek at gcc dot gnu.org
2023-07-07 10:39 ` [Bug c++/100252] [11/12 " rguenth at gcc dot gnu.org
17 siblings, 0 replies; 19+ messages in thread
From: mpolacek at gcc dot gnu.org @ 2022-07-01 16:12 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Bug 100252 depends on bug 105550, which changed state.
Bug 105550 Summary: Missing copy elision with conditional operator
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105550
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
^ permalink raw reply [flat|nested] 19+ messages in thread
* [Bug c++/100252] [11/12 Regression] Internal compiler error during template instantiation
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
` (16 preceding siblings ...)
2022-07-01 16:12 ` mpolacek at gcc dot gnu.org
@ 2023-07-07 10:39 ` rguenth at gcc dot gnu.org
17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu.org @ 2023-07-07 10:39 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100252
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|10.5 |11.5
--- Comment #15 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 10 branch is being closed.
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2023-07-07 10:39 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-25 3:08 [Bug c++/100252] New: Internal compiler error during template instantiation sand at rifkin dot dev
2021-04-25 15:31 ` [Bug c++/100252] " sand at rifkin dot dev
2021-04-26 0:47 ` sand at rifkin dot dev
2021-04-26 7:28 ` rguenth at gcc dot gnu.org
2021-04-26 14:37 ` [Bug c++/100252] [8/9/10/11/12 Regression] " mpolacek at gcc dot gnu.org
2021-04-26 21:11 ` ppalka at gcc dot gnu.org
2021-04-30 8:10 ` rguenth at gcc dot gnu.org
2021-05-14 9:54 ` [Bug c++/100252] [9/10/11/12 " jakub at gcc dot gnu.org
2021-06-01 8:20 ` rguenth at gcc dot gnu.org
2022-04-25 22:43 ` mpolacek at gcc dot gnu.org
2022-04-26 15:54 ` mpolacek at gcc dot gnu.org
2022-04-26 15:58 ` mpolacek at gcc dot gnu.org
2022-04-26 22:46 ` mpolacek at gcc dot gnu.org
2022-05-25 15:01 ` [Bug c++/100252] [9/10/11/12/13 " cvs-commit at gcc dot gnu.org
2022-05-25 15:03 ` [Bug c++/100252] [9/10/11/12 " mpolacek at gcc dot gnu.org
2022-05-27 9:45 ` [Bug c++/100252] [10/11/12 " rguenth at gcc dot gnu.org
2022-06-28 10:44 ` jakub at gcc dot gnu.org
2022-07-01 16:12 ` mpolacek at gcc dot gnu.org
2023-07-07 10:39 ` [Bug c++/100252] [11/12 " rguenth at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).