public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug c++/109859] New: ICE on concept mis-typed as template type parameter @ 2023-05-15 8:53 saifi.khan at nishan dot io 2023-05-15 9:22 ` [Bug c++/109859] " hewillk at gmail dot com ` (5 more replies) 0 siblings, 6 replies; 7+ messages in thread From: saifi.khan at nishan dot io @ 2023-05-15 8:53 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109859 Bug ID: 109859 Summary: ICE on concept mis-typed as template type parameter Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: saifi.khan at nishan dot io Target Milestone: --- while exploring ranges, i mis-typed the code as follows. should have written template <std::ranges::random_access_range R> -- #include <ranges> template <typename R = std::ranges::random_access_range> int fn (R); int main () {;} -- using gcc version 14.0.0 20230514 (experimental) (GCC) g++ -std=c++23 file.cc -- output is file.cc:3:37: internal compiler error: in cp_parser_placeholder_type_specifier, at cp/parser.cc:20242 3 | template <typename R = std::ranges::random_access_range> | ^~~~~~~~~~~~~~~~~~~ 0x75a5de cp_parser_placeholder_type_specifier /opt/gcc/src/gcc/cp/parser.cc:20242 0xbb9e11 cp_parser_simple_type_specifier /opt/gcc/src/gcc/cp/parser.cc:20079 0xb8ec55 cp_parser_type_specifier /opt/gcc/src/gcc/cp/parser.cc:19614 0xba3e42 cp_parser_type_specifier_seq /opt/gcc/src/gcc/cp/parser.cc:24615 0xba1a3d cp_parser_type_id_1 /opt/gcc/src/gcc/cp/parser.cc:24412 0xba1d50 cp_parser_type_id /opt/gcc/src/gcc/cp/parser.cc:24511 0xba1d50 cp_parser_default_type_template_argument /opt/gcc/src/gcc/cp/parser.cc:17963 0xbb5617 cp_parser_type_parameter /opt/gcc/src/gcc/cp/parser.cc:18199 0xbb46d4 cp_parser_template_parameter /opt/gcc/src/gcc/cp/parser.cc:18080 0xbb46d4 cp_parser_template_parameter_list /opt/gcc/src/gcc/cp/parser.cc:17679 0xbc6ce7 cp_parser_explicit_template_declaration /opt/gcc/src/gcc/cp/parser.cc:32382 0xbc9a95 cp_parser_declaration /opt/gcc/src/gcc/cp/parser.cc:15050 0xbca553 cp_parser_toplevel_declaration /opt/gcc/src/gcc/cp/parser.cc:15142 0xbca553 cp_parser_translation_unit /opt/gcc/src/gcc/cp/parser.cc:5131 0xbca553 c_parse_file() /opt/gcc/src/gcc/cp/parser.cc:49635 0xd17685 c_common_parse_file() /opt/gcc/src/gcc/c-family/c-opts.cc:1248 --- Thanks for your time ! ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/109859] ICE on concept mis-typed as template type parameter 2023-05-15 8:53 [Bug c++/109859] New: ICE on concept mis-typed as template type parameter saifi.khan at nishan dot io @ 2023-05-15 9:22 ` hewillk at gmail dot com 2023-05-15 14:47 ` [Bug c++/109859] [12/13/14 Regression] " pinskia at gcc dot gnu.org ` (4 subsequent siblings) 5 siblings, 0 replies; 7+ messages in thread From: hewillk at gmail dot com @ 2023-05-15 9:22 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109859 康桓瑋 <hewillk at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |hewillk at gmail dot com --- Comment #1 from 康桓瑋 <hewillk at gmail dot com> --- Reduced: template<class> concept C = true; template <class = C> int f(); https://godbolt.org/z/59739vMbj ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/109859] [12/13/14 Regression] ICE on concept mis-typed as template type parameter 2023-05-15 8:53 [Bug c++/109859] New: ICE on concept mis-typed as template type parameter saifi.khan at nishan dot io 2023-05-15 9:22 ` [Bug c++/109859] " hewillk at gmail dot com @ 2023-05-15 14:47 ` pinskia at gcc dot gnu.org 2023-05-15 14:47 ` pinskia at gcc dot gnu.org ` (3 subsequent siblings) 5 siblings, 0 replies; 7+ messages in thread From: pinskia at gcc dot gnu.org @ 2023-05-15 14:47 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109859 Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-invalid-code Target Milestone|--- |12.4 Summary|ICE on concept mis-typed as |[12/13/14 Regression] ICE |template type parameter |on concept mis-typed as | |template type parameter --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- In GCC 11 and before, GCC would accept the reduced testcase but didn't ICE. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/109859] [12/13/14 Regression] ICE on concept mis-typed as template type parameter 2023-05-15 8:53 [Bug c++/109859] New: ICE on concept mis-typed as template type parameter saifi.khan at nishan dot io 2023-05-15 9:22 ` [Bug c++/109859] " hewillk at gmail dot com 2023-05-15 14:47 ` [Bug c++/109859] [12/13/14 Regression] " pinskia at gcc dot gnu.org @ 2023-05-15 14:47 ` pinskia at gcc dot gnu.org 2023-05-17 6:44 ` rguenth at gcc dot gnu.org ` (2 subsequent siblings) 5 siblings, 0 replies; 7+ messages in thread From: pinskia at gcc dot gnu.org @ 2023-05-15 14:47 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109859 Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Last reconfirmed| |2023-05-15 ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/109859] [12/13/14 Regression] ICE on concept mis-typed as template type parameter 2023-05-15 8:53 [Bug c++/109859] New: ICE on concept mis-typed as template type parameter saifi.khan at nishan dot io ` (2 preceding siblings ...) 2023-05-15 14:47 ` pinskia at gcc dot gnu.org @ 2023-05-17 6:44 ` rguenth at gcc dot gnu.org 2023-08-29 5:53 ` pinskia at gcc dot gnu.org 2024-02-16 18:54 ` mpolacek at gcc dot gnu.org 5 siblings, 0 replies; 7+ messages in thread From: rguenth at gcc dot gnu.org @ 2023-05-17 6:44 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109859 Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P3 |P2 ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/109859] [12/13/14 Regression] ICE on concept mis-typed as template type parameter 2023-05-15 8:53 [Bug c++/109859] New: ICE on concept mis-typed as template type parameter saifi.khan at nishan dot io ` (3 preceding siblings ...) 2023-05-17 6:44 ` rguenth at gcc dot gnu.org @ 2023-08-29 5:53 ` pinskia at gcc dot gnu.org 2024-02-16 18:54 ` mpolacek at gcc dot gnu.org 5 siblings, 0 replies; 7+ messages in thread From: pinskia at gcc dot gnu.org @ 2023-08-29 5:53 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109859 Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |stevenxia990430 at gmail dot com --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- *** Bug 111220 has been marked as a duplicate of this bug. *** ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug c++/109859] [12/13/14 Regression] ICE on concept mis-typed as template type parameter 2023-05-15 8:53 [Bug c++/109859] New: ICE on concept mis-typed as template type parameter saifi.khan at nishan dot io ` (4 preceding siblings ...) 2023-08-29 5:53 ` pinskia at gcc dot gnu.org @ 2024-02-16 18:54 ` mpolacek at gcc dot gnu.org 5 siblings, 0 replies; 7+ messages in thread From: mpolacek at gcc dot gnu.org @ 2024-02-16 18:54 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109859 Marek Polacek <mpolacek at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mpolacek at gcc dot gnu.org --- Comment #4 from Marek Polacek <mpolacek at gcc dot gnu.org> --- We're hitting the assert here: /* In a template parameter list, a type-parameter can be introduced by type-constraints alone. */ if (processing_template_parmlist && !placeholder) { /* In a default argument we may not be creating new parameters. */ if (parser->local_variables_forbidden_p & LOCAL_VARS_FORBIDDEN) { /* If this assert turns out to be false, do error() instead. */ gcc_assert (tentative); return error_mark_node; } so presumably we should change it to error() as the comment says. ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-02-16 18:54 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-05-15 8:53 [Bug c++/109859] New: ICE on concept mis-typed as template type parameter saifi.khan at nishan dot io 2023-05-15 9:22 ` [Bug c++/109859] " hewillk at gmail dot com 2023-05-15 14:47 ` [Bug c++/109859] [12/13/14 Regression] " pinskia at gcc dot gnu.org 2023-05-15 14:47 ` pinskia at gcc dot gnu.org 2023-05-17 6:44 ` rguenth at gcc dot gnu.org 2023-08-29 5:53 ` pinskia at gcc dot gnu.org 2024-02-16 18:54 ` mpolacek 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).