public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "marxin at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c++/98054] [11 Regression] ICE: in pp_cxx_trait_expression, at cp/cxx-pretty-print.c:2671 since r11-4386-g9e2256dcd481ffe3
Date: Mon, 30 Nov 2020 09:03:00 +0000	[thread overview]
Message-ID: <bug-98054-4-44NcOYiwR6@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-98054-4@http.gcc.gnu.org/bugzilla/>

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98054

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |11.0
            Summary|[11 Regression] ICE: in     |[11 Regression] ICE: in
                   |pp_cxx_trait_expression, at |pp_cxx_trait_expression, at
                   |cp/cxx-pretty-print.c:2671  |cp/cxx-pretty-print.c:2671
                   |                            |since
                   |                            |r11-4386-g9e2256dcd481ffe3
                 CC|                            |ville.voutilainen at gmail dot com

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
Started with r11-4386-g9e2256dcd481ffe3, before the revision it was rejected.
Reduced test-case:

$ cat polymorphicsmallobjecttest.cc.ii
struct integral_constant {};
template <bool> using __bool_constant = integral_constant;
template <typename _Tp, typename _Up>
using __is_nothrow_assignable_impl =
    __bool_constant<__is_nothrow_assignable(_Tp, _Up)>;
template <typename _Tp>
struct __is_nt_move_assignable_impl : __is_nothrow_assignable_impl<_Tp, _Tp>
{};
template <int _Len> struct aligned_storage {
  struct type {
    char __data[_Len];
  };
};
template <long _Len>
using aligned_storage_t = typename aligned_storage<_Len>::type;
template <int bufferSize> class PolymorphicSmallObject {
  aligned_storage_t<bufferSize> buffer_;
};
template <class Obj> void test() { __is_nt_move_assignable_impl<Obj> value; }
int main() { test<PolymorphicSmallObject<0>>; return 0; }

$ g++ polymorphicsmallobjecttest.cc.ii -c
$ g++ polymorphicsmallobjecttest.cc.ii -c -pedantic
‘
polymorphicsmallobjecttest.cc.ii: In instantiation of ‘struct
aligned_storage<0>::type’:
polymorphicsmallobjecttest.cc.ii:16:33:   required from ‘class
PolymorphicSmallObject<0>’
polymorphicsmallobjecttest.cc.ii:5:21:   in pp_cxx_trait_expression, at
cp/cxx-pretty-print.c:2671
   10 |     char __data[_Len];
      |          ^~~~~~
0x65210c pp_cxx_trait_expression(cxx_pretty_printer*, tree_node*)
        /home/marxin/Programming/gcc/gcc/cp/cxx-pretty-print.c:2671
0x9949ea dump_template_parms
        /home/marxin/Programming/gcc/gcc/cp/error.c:1945
0x996c3a subst_to_string
        /home/marxin/Programming/gcc/gcc/cp/error.c:3369
0x996c3a cp_printer
        /home/marxin/Programming/gcc/gcc/cp/error.c:4361
0x1b72e3c pp_format(pretty_printer*, text_info*)
        /home/marxin/Programming/gcc/gcc/pretty-print.c:1475
0x1b74ec0 pp_format_verbatim(pretty_printer*, text_info*)
        /home/marxin/Programming/gcc/gcc/pretty-print.c:1536
0x1b74ec0 pp_verbatim(pretty_printer*, char const*, ...)
        /home/marxin/Programming/gcc/gcc/pretty-print.c:1790
0x98c3ac print_instantiation_partial_context_line
        /home/marxin/Programming/gcc/gcc/cp/error.c:3596
0x98c3ac print_instantiation_partial_context
        /home/marxin/Programming/gcc/gcc/cp/error.c:3705
0x98c3ac print_instantiation_full_context
        /home/marxin/Programming/gcc/gcc/cp/error.c:3585
0x99791a maybe_print_instantiation_context
        /home/marxin/Programming/gcc/gcc/cp/error.c:3722
0x99791a cp_diagnostic_starter
        /home/marxin/Programming/gcc/gcc/cp/error.c:3413
0x1b56c7a diagnostic_report_diagnostic(diagnostic_context*, diagnostic_info*)
        /home/marxin/Programming/gcc/gcc/diagnostic.c:1217
0x1b59338 diagnostic_impl
        /home/marxin/Programming/gcc/gcc/diagnostic.c:1366
0x1b59338 pedwarn(unsigned int, int, char const*, ...)
        /home/marxin/Programming/gcc/gcc/diagnostic.c:1599
0x94d269 compute_array_index_type_loc
        /home/marxin/Programming/gcc/gcc/cp/decl.c:10512
0xa69a70 tsubst(tree_node*, tree_node*, int, tree_node*)
        /home/marxin/Programming/gcc/gcc/cp/pt.c:15842
0xa54b1f tsubst_decl
        /home/marxin/Programming/gcc/gcc/cp/pt.c:14475
0xa81ead instantiate_class_template_1
        /home/marxin/Programming/gcc/gcc/cp/pt.c:11959
0xa830f2 instantiate_class_template(tree_node*)
        /home/marxin/Programming/gcc/gcc/cp/pt.c:12196
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

  parent reply	other threads:[~2020-11-30  9:03 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-29 19:38 [Bug c++/98054] New: ICE: in pp_cxx_trait_expression, at cp/cxx-pretty-print.c:2671 foss at grueninger dot de
2020-11-30  8:11 ` [Bug c++/98054] [11 Regression] " rguenth at gcc dot gnu.org
2020-11-30  8:32 ` marxin at gcc dot gnu.org
2020-11-30  9:03 ` marxin at gcc dot gnu.org [this message]
2020-11-30  9:23 ` [Bug c++/98054] [11 Regression] ICE: in pp_cxx_trait_expression, at cp/cxx-pretty-print.c:2671 since r11-4386-g9e2256dcd481ffe3 ville.voutilainen at gmail dot com
2020-11-30 11:20 ` ville.voutilainen at gmail dot com
2020-12-01 22:24 ` cvs-commit at gcc dot gnu.org
2020-12-01 22:24 ` ville.voutilainen at gmail dot com

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-98054-4-44NcOYiwR6@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).