public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/51395] New: [4.5/4.6 Regression] ICE in dependent_type_p (endless (?) recursion)
@ 2011-12-03 18:22 doko at gcc dot gnu.org
  2011-12-05  9:38 ` [Bug c++/51395] " rguenth at gcc dot gnu.org
  2011-12-07 16:56 ` paolo.carlini at oracle dot com
  0 siblings, 2 replies; 3+ messages in thread
From: doko at gcc dot gnu.org @ 2011-12-03 18:22 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51395

             Bug #: 51395
           Summary: [4.5/4.6 Regression] ICE in dependent_type_p (endless
                    (?) recursion)
    Classification: Unclassified
           Product: gcc
           Version: 4.6.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: doko@gcc.gnu.org


Created attachment 25981
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25981
test case

the ICE is seen with 4.5 and 4.6 branches, not with 4.4 and trunk.

$ g++-4.4 -std=c++0x t.cpp
t.cpp: In function 'F2 operator|(F1, F2)':
t.cpp:2: error: expected primary-expression before '[' token
t.cpp:2: error: expected primary-expression before '=' token
t.cpp:2: error: expected primary-expression before ']' token
t.cpp:2: error: expected primary-expression before 'unsigned'
t.cpp:2: error: expected ';' before '{' token
t.cpp:2: error: 'x' was not declared in this scope
t.cpp: At global scope:
t.cpp:4: error: expected primary-expression before '[' token
t.cpp:4: error: expected primary-expression before ']' token
t.cpp:4: error: expected primary-expression before 'float'
t.cpp:4: error: unable to deduce 'auto' from '<expression error>'
t.cpp:5: error: expected ',' or ';' before '{' token


$ g++-4.5 -std=c++0x t.cpp 
g++-4.5: Internal error: Segmentation fault (program cc1plus)
Please submit a full bug report.


$ g++-4.6 -std=c++0x t.cpp 
g++-4.6: internal compiler error: Segmentation fault (program cc1plus)
Please submit a full bug report,



$ /usr/lib/gcc-snapshot/bin/g++ -std=c++0x t.cpp 
t.cpp: In instantiation of 'operator|(F1, F2) [with F1 =
<lambda(float)>::<lambda(long long unsigned int)>; F2 =
<lambda()>]::<lambda(long long unsigned int)>':
t.cpp:2:75:   required from 'struct operator|(F1, F2) [with F1 =
<lambda(float)>::<lambda(long long unsigned int)>; F2 =
<lambda()>]::<lambda(long long unsigned int)>'
t.cpp:2:83:   required from 'F2 operator|(F1, F2) [with F1 =
<lambda(float)>::<lambda(long long unsigned int)>; F2 = <lambda()>]'
t.cpp:16:26:   required from here
t.cpp:2:83: error: no match for call to '(const<lambda()>) (float)'
t.cpp:9:15: note: candidates are:
t.cpp:2:83: note: <lambda()>::<lambda(float)> (*)() <conversion>
t.cpp:2:83: note:   candidate expects 1 argument, 2 provided
t.cpp:9:17: note: <lambda()>
t.cpp:9:17: note:   candidate expects 0 arguments, 1 provided
t.cpp:2:83: error: return-statement with a value, in function returning 'void'
[-fpermissive]
t.cpp: In instantiation of 'F2 operator|(F1, F2) [with F1 =
<lambda(float)>::<lambda(long long unsigned int)>; F2 = <lambda()>]':
t.cpp:16:26:   required from here
t.cpp:2:83: error: could not convert '{f2, f1}' from 'operator|(F1, F2) [with
F1 = <lambda(float)>::<lambda(long long unsigned int)>; F2 =
<lambda()>]::<lambda(long long unsigned int)>' to '<lambda()>'


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-12-07 16:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-03 18:22 [Bug c++/51395] New: [4.5/4.6 Regression] ICE in dependent_type_p (endless (?) recursion) doko at gcc dot gnu.org
2011-12-05  9:38 ` [Bug c++/51395] " rguenth at gcc dot gnu.org
2011-12-07 16:56 ` paolo.carlini at oracle dot com

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).