public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/42701] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
@ 2010-01-12 12:16 ` doko at ubuntu dot com
  2010-01-12 12:49 ` paolo dot carlini at oracle dot com
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: doko at ubuntu dot com @ 2010-01-12 12:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from doko at ubuntu dot com  2010-01-12 12:16 -------
Created an attachment (id=19546)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=19546&action=view)
preprocessed source


-- 


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


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

* [Bug c++/42701]  New: ICE on error recovery
@ 2010-01-12 12:16 doko at ubuntu dot com
  2010-01-12 12:16 ` [Bug c++/42701] " doko at ubuntu dot com
                   ` (12 more replies)
  0 siblings, 13 replies; 14+ messages in thread
From: doko at ubuntu dot com @ 2010-01-12 12:16 UTC (permalink / raw)
  To: gcc-bugs

seen with trunk 20100107 on ix86:

$ g++ -c greg_month.ii
In file included from ./boost/date_time/gregorian/formatters.hpp:17:0,
                 from libs/date_time/src/gregorian/greg_month.cpp:21:
./boost/date_time/date_formatting.hpp: In static member function 'static
std::basic_string<charT> boost::date_time::ymd_formatter<ymd_type, format_type,
charT>::ymd_to_string(ymd_type)':
./boost/date_time/date_formatting.hpp:87:36: error: cannot call constructor
'std::locale::locale' directly
./boost/date_time/date_formatting.hpp:87:36: note: for a function-style cast,
remove the redundant '::locale'
./boost/date_time/gregorian/formatters.hpp:65: confused by earlier errors,
bailing out
Preprocessed source stored into /tmp/ccNSCpcB.out file, please attach this to
your bugreport.


-- 
           Summary: ICE on error recovery
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: doko at ubuntu dot com


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


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

* [Bug c++/42701] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
  2010-01-12 12:16 ` [Bug c++/42701] " doko at ubuntu dot com
@ 2010-01-12 12:49 ` paolo dot carlini at oracle dot com
  2010-01-12 13:43 ` [Bug c++/42701] [4.5 Regression] " rguenth at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: paolo dot carlini at oracle dot com @ 2010-01-12 12:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from paolo dot carlini at oracle dot com  2010-01-12 12:49 -------
As usual, please reduce these beasts...


-- 

paolo dot carlini at oracle dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
  2010-01-12 12:16 ` [Bug c++/42701] " doko at ubuntu dot com
  2010-01-12 12:49 ` paolo dot carlini at oracle dot com
@ 2010-01-12 13:43 ` rguenth at gcc dot gnu dot org
  2010-01-12 14:30 ` rguenth at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-01-12 13:43 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from rguenth at gcc dot gnu dot org  2010-01-12 13:43 -------
You can use -fpermissive in which case it's no longer error-recovery.

The emitted warning doesn't vanish with -w, the note stays:

> ./cc1plus -quiet greg_month.ii  -m32 -fpermissive -w
In file included from ./boost/date_time/gregorian/formatters.hpp:17:0,
                 from libs/date_time/src/gregorian/greg_month.cpp:21:
./boost/date_time/date_formatting.hpp: In static member function 'static
std::basic_string<charT> boost::date_time::ymd_formatter<ymd_type, format_type,
charT>::ymd_to_string(ymd_type)':
./boost/date_time/date_formatting.hpp:87:36: note: for a function-style cast,
remove the redundant '::locale'
In file included from libs/date_time/src/gregorian/greg_month.cpp:21:0:
./boost/date_time/gregorian/formatters.hpp: In function
'std::basic_string<_CharT> boost::gregorian::to_iso_string_type(const
boost::gregorian::date_period&) [with charT = char,
boost::gregorian::date_period =
boost::date_time::period<boost::gregorian::date,
boost::gregorian::date_duration>]':
./boost/date_time/gregorian/formatters.hpp:72:38:   instantiated from here
./boost/date_time/gregorian/formatters.hpp:65:125: internal compiler error: in
tsubst_copy, at cp/pt.c:10664
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.


Reducing.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|error-recovery              |diagnostic, ice-on-valid-
                   |                            |code
            Summary|ICE on error recovery       |[4.5 Regression] ICE on
                   |                            |error recovery
   Target Milestone|---                         |4.5.0


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (2 preceding siblings ...)
  2010-01-12 13:43 ` [Bug c++/42701] [4.5 Regression] " rguenth at gcc dot gnu dot org
@ 2010-01-12 14:30 ` rguenth at gcc dot gnu dot org
  2010-01-12 14:30 ` rguenth at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-01-12 14:30 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|WAITING                     |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-01-12 14:30:35
               date|                            |


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (3 preceding siblings ...)
  2010-01-12 14:30 ` rguenth at gcc dot gnu dot org
@ 2010-01-12 14:30 ` rguenth at gcc dot gnu dot org
  2010-01-13  0:21 ` manu at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-01-12 14:30 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from rguenth at gcc dot gnu dot org  2010-01-12 14:30 -------
Created an attachment (id=19549)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=19549&action=view)
reduced testcase


-- 


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (4 preceding siblings ...)
  2010-01-12 14:30 ` rguenth at gcc dot gnu dot org
@ 2010-01-13  0:21 ` manu at gcc dot gnu dot org
  2010-01-13 17:43 ` hjl dot tools at gmail dot com
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: manu at gcc dot gnu dot org @ 2010-01-13  0:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from manu at gcc dot gnu dot org  2010-01-13 00:21 -------
The code warning:

155347      jason   user_args = args == NULL ? NULL : *args;
155347      jason   /* Under DR 147 A::A() is an invalid constructor call,
155347      jason      not a functional cast.  */
155347      jason   if (DECL_MAYBE_IN_CHARGE_CONSTRUCTOR_P (fn))
155347      jason     {
155347      jason       if (! (complain & tf_error))
155347      jason       return error_mark_node;
155347      jason
155347      jason       permerror (input_location,
155347      jason                "cannot call constructor %<%T::%D%> directly",
155347      jason                basetype, name);
155347      jason       inform (input_location, "for a function-style cast,
remove the "
155347      jason             "redundant %<::%D%>", name);
155347      jason       call = build_functional_cast (basetype,
build_tree_list_vec (user_args),
155347      jason                                   complain);
155347      jason       release_tree_vector (user_args);
155347      jason       return call;
155347      jason     }

To avoid the spurious note, the code should use the idiom permerror() &&
inform(), since diagnostics functions that may be suppressed return false if
they don't print anything.


-- 


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (5 preceding siblings ...)
  2010-01-13  0:21 ` manu at gcc dot gnu dot org
@ 2010-01-13 17:43 ` hjl dot tools at gmail dot com
  2010-01-13 17:44 ` hjl dot tools at gmail dot com
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-01-13 17:43 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from hjl dot tools at gmail dot com  2010-01-13 17:43 -------
This is caused by revision 155347:

http://gcc.gnu.org/ml/gcc-cvs/2009-12/msg00491.html


-- 

hjl dot tools at gmail dot com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jason at redhat dot com


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (6 preceding siblings ...)
  2010-01-13 17:43 ` hjl dot tools at gmail dot com
@ 2010-01-13 17:44 ` hjl dot tools at gmail dot com
  2010-01-14 10:14 ` rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: hjl dot tools at gmail dot com @ 2010-01-13 17:44 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from hjl dot tools at gmail dot com  2010-01-13 17:44 -------
*** Bug 42725 has been marked as a duplicate of this bug. ***


-- 


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (7 preceding siblings ...)
  2010-01-13 17:44 ` hjl dot tools at gmail dot com
@ 2010-01-14 10:14 ` rguenth at gcc dot gnu dot org
  2010-01-14 16:39 ` rguenth at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-01-14 10:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from rguenth at gcc dot gnu dot org  2010-01-14 10:14 -------
Reduced testcase from PR42725:

namespace Glib {
    class ustring {
    public:
        typedef unsigned size_type;
        ustring(const char* src, size_type n);
        ustring(const char* src);
    };
}
namespace Gdk {
    class Color {
    public:
        explicit Color(const Glib::ustring& value);
    };
}
namespace Gtk {
    enum StateType { STATE_NORMAL };
    class Widget   {
    public:
        void modify_bg(StateType state, const Gdk::Color& color);
    };
    class Label {
    public:
        void set_text(const Glib::ustring &str);
    };
}
typedef enum Result { eSuccess = 0 } Result;
class MainWindow  {
    void update_status(Result result);
    Gtk::Widget status_frame;
    Gtk::Label status_label;
};
void MainWindow::update_status(Result result) {
    switch (result) {
        status_frame.modify_bg(Gtk::STATE_NORMAL,Gdk::Color::Color("green"));
        status_frame.modify_bg(Gtk::STATE_NORMAL,Gdk::Color::Color("red"));
        status_label.set_text("Out of memory");
    }
}


-- 


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (8 preceding siblings ...)
  2010-01-14 10:14 ` rguenth at gcc dot gnu dot org
@ 2010-01-14 16:39 ` rguenth at gcc dot gnu dot org
  2010-01-14 22:33 ` jason at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-01-14 16:39 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (9 preceding siblings ...)
  2010-01-14 16:39 ` rguenth at gcc dot gnu dot org
@ 2010-01-14 22:33 ` jason at gcc dot gnu dot org
  2010-01-14 22:34 ` jason at gcc dot gnu dot org
  2010-01-15  6:18 ` jason at gcc dot gnu dot org
  12 siblings, 0 replies; 14+ messages in thread
From: jason at gcc dot gnu dot org @ 2010-01-14 22:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from jason at gcc dot gnu dot org  2010-01-14 22:32 -------
Subject: Bug 42701

Author: jason
Date: Thu Jan 14 22:32:24 2010
New Revision: 155916

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=155916
Log:
        PR c++/42701
        * call.c (build_new_method_call): Don't free the vec here.

Added:
    trunk/gcc/testsuite/g++.dg/overload/error3.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/call.c
    trunk/gcc/testsuite/ChangeLog


-- 


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (10 preceding siblings ...)
  2010-01-14 22:33 ` jason at gcc dot gnu dot org
@ 2010-01-14 22:34 ` jason at gcc dot gnu dot org
  2010-01-15  6:18 ` jason at gcc dot gnu dot org
  12 siblings, 0 replies; 14+ messages in thread
From: jason at gcc dot gnu dot org @ 2010-01-14 22:34 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from jason at gcc dot gnu dot org  2010-01-14 22:34 -------
Fixed.


-- 

jason at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


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


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

* [Bug c++/42701] [4.5 Regression] ICE on error recovery
  2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
                   ` (11 preceding siblings ...)
  2010-01-14 22:34 ` jason at gcc dot gnu dot org
@ 2010-01-15  6:18 ` jason at gcc dot gnu dot org
  12 siblings, 0 replies; 14+ messages in thread
From: jason at gcc dot gnu dot org @ 2010-01-15  6:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from jason at gcc dot gnu dot org  2010-01-15 06:18 -------
*** Bug 42569 has been marked as a duplicate of this bug. ***


-- 

jason at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dirtyepic at gentoo dot org


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


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

end of thread, other threads:[~2010-01-15  6:18 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-01-12 12:16 [Bug c++/42701] New: ICE on error recovery doko at ubuntu dot com
2010-01-12 12:16 ` [Bug c++/42701] " doko at ubuntu dot com
2010-01-12 12:49 ` paolo dot carlini at oracle dot com
2010-01-12 13:43 ` [Bug c++/42701] [4.5 Regression] " rguenth at gcc dot gnu dot org
2010-01-12 14:30 ` rguenth at gcc dot gnu dot org
2010-01-12 14:30 ` rguenth at gcc dot gnu dot org
2010-01-13  0:21 ` manu at gcc dot gnu dot org
2010-01-13 17:43 ` hjl dot tools at gmail dot com
2010-01-13 17:44 ` hjl dot tools at gmail dot com
2010-01-14 10:14 ` rguenth at gcc dot gnu dot org
2010-01-14 16:39 ` rguenth at gcc dot gnu dot org
2010-01-14 22:33 ` jason at gcc dot gnu dot org
2010-01-14 22:34 ` jason at gcc dot gnu dot org
2010-01-15  6:18 ` jason at gcc dot gnu dot 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).