public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors
@ 2011-03-12  9:00 gcc at magfr dot user.lysator.liu.se
  2011-03-12 13:11 ` [Bug c++/48089] [C++0x] " redi at gcc dot gnu.org
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: gcc at magfr dot user.lysator.liu.se @ 2011-03-12  9:00 UTC (permalink / raw)
  To: gcc-bugs

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

           Summary: ICE on in(?)valid in constexpr constructors
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: gcc@magfr.user.lysator.liu.se


Created attachment 23635
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23635
Example showing the problem

Trying to mark a value as don't care using the gcc extension of initializing it
with itself triggers an ICE in lookup_parameter_binding.


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
@ 2011-03-12 13:11 ` redi at gcc dot gnu.org
  2011-03-12 13:21 ` redi at gcc dot gnu.org
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: redi at gcc dot gnu.org @ 2011-03-12 13:11 UTC (permalink / raw)
  To: gcc-bugs

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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2011.03.12 13:11:18
            Version|unknown                     |4.6.0
            Summary|ICE on in(?)valid in        |[C++0x] ICE on in(?)valid
                   |constexpr constructors      |in constexpr constructors
     Ever Confirmed|0                           |1

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-03-12 13:11:18 UTC ---
I guess an ICE is one way to solve the missing diagnostic for PR 18016 ;)

4.5 didn't ICE, but then constexpr was ignored so I'm not sure it counts as a
regression


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
  2011-03-12 13:11 ` [Bug c++/48089] [C++0x] " redi at gcc dot gnu.org
@ 2011-03-12 13:21 ` redi at gcc dot gnu.org
  2011-03-16 23:59 ` jason at gcc dot gnu.org
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: redi at gcc dot gnu.org @ 2011-03-12 13:21 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> 2011-03-12 13:20:53 UTC ---
N.B. I don't think there's any GCC extension involving initializing class
members with themselves. Doing so is almost certainly a mistake.


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
  2011-03-12 13:11 ` [Bug c++/48089] [C++0x] " redi at gcc dot gnu.org
  2011-03-12 13:21 ` redi at gcc dot gnu.org
@ 2011-03-16 23:59 ` jason at gcc dot gnu.org
  2011-03-17  2:37 ` jason at gcc dot gnu.org
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2011-03-16 23:59 UTC (permalink / raw)
  To: gcc-bugs

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

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
                 CC|                            |jason at gcc dot gnu.org
         AssignedTo|unassigned at gcc dot       |jason at gcc dot gnu.org
                   |gnu.org                     |


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
                   ` (2 preceding siblings ...)
  2011-03-16 23:59 ` jason at gcc dot gnu.org
@ 2011-03-17  2:37 ` jason at gcc dot gnu.org
  2011-03-17  2:48 ` jason at gcc dot gnu.org
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2011-03-17  2:37 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Jason Merrill <jason at gcc dot gnu.org> 2011-03-17 02:36:33 UTC ---
Author: jason
Date: Thu Mar 17 02:36:29 2011
New Revision: 171086

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=171086
Log:
    PR c++/48089
    * semantics.c (potential_constant_expression_1): Don't allow *this
    in a constructor.
    (register_constexpr_fundef): Use potential_rvalue_constant_expression.

Added:
    trunk/gcc/testsuite/g++.dg/cpp0x/constexpr-48089.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/semantics.c
    trunk/gcc/testsuite/ChangeLog


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
                   ` (3 preceding siblings ...)
  2011-03-17  2:37 ` jason at gcc dot gnu.org
@ 2011-03-17  2:48 ` jason at gcc dot gnu.org
  2011-03-29 18:58 ` jason at gcc dot gnu.org
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2011-03-17  2:48 UTC (permalink / raw)
  To: gcc-bugs

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

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |4.7.0
   Target Milestone|---                         |4.6.1
      Known to fail|                            |4.6.0

--- Comment #4 from Jason Merrill <jason at gcc dot gnu.org> 2011-03-17 02:42:06 UTC ---
Fixed for 4.7.  Will backport for 4.6.1.


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
                   ` (4 preceding siblings ...)
  2011-03-17  2:48 ` jason at gcc dot gnu.org
@ 2011-03-29 18:58 ` jason at gcc dot gnu.org
  2011-04-28 16:53 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2011-03-29 18:58 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Jason Merrill <jason at gcc dot gnu.org> 2011-03-29 18:47:46 UTC ---
Author: jason
Date: Tue Mar 29 18:47:43 2011
New Revision: 171687

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=171687
Log:
    PR c++/48089
    * semantics.c (potential_constant_expression_1): Change error about
    use of *this in constructor into sorry.

Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/semantics.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/g++.dg/cpp0x/constexpr-48089.C


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
                   ` (5 preceding siblings ...)
  2011-03-29 18:58 ` jason at gcc dot gnu.org
@ 2011-04-28 16:53 ` rguenth at gcc dot gnu.org
  2011-05-06 22:09 ` jason at gcc dot gnu.org
  2011-05-06 22:15 ` jason at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-04-28 16:53 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Guenther <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.6.1                       |---


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
                   ` (6 preceding siblings ...)
  2011-04-28 16:53 ` rguenth at gcc dot gnu.org
@ 2011-05-06 22:09 ` jason at gcc dot gnu.org
  2011-05-06 22:15 ` jason at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2011-05-06 22:09 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Jason Merrill <jason at gcc dot gnu.org> 2011-05-06 21:58:25 UTC ---
Author: jason
Date: Fri May  6 21:58:22 2011
New Revision: 173513

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=173513
Log:
    PR c++/48089
    * semantics.c (potential_constant_expression_1): Don't allow *this
    in a constructor.
    (register_constexpr_fundef): Use potential_rvalue_constant_expression.

Added:
    branches/gcc-4_6-branch/gcc/testsuite/g++.dg/cpp0x/constexpr-48089.C
Modified:
    branches/gcc-4_6-branch/gcc/cp/ChangeLog
    branches/gcc-4_6-branch/gcc/cp/semantics.c
    branches/gcc-4_6-branch/gcc/testsuite/ChangeLog


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

* [Bug c++/48089] [C++0x] ICE on in(?)valid in constexpr constructors
  2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
                   ` (7 preceding siblings ...)
  2011-05-06 22:09 ` jason at gcc dot gnu.org
@ 2011-05-06 22:15 ` jason at gcc dot gnu.org
  8 siblings, 0 replies; 10+ messages in thread
From: jason at gcc dot gnu.org @ 2011-05-06 22:15 UTC (permalink / raw)
  To: gcc-bugs

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

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.6.1

--- Comment #7 from Jason Merrill <jason at gcc dot gnu.org> 2011-05-06 22:00:31 UTC ---
Fixed for 4.6.1.


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

end of thread, other threads:[~2011-05-06 22:15 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-12  9:00 [Bug c++/48089] New: ICE on in(?)valid in constexpr constructors gcc at magfr dot user.lysator.liu.se
2011-03-12 13:11 ` [Bug c++/48089] [C++0x] " redi at gcc dot gnu.org
2011-03-12 13:21 ` redi at gcc dot gnu.org
2011-03-16 23:59 ` jason at gcc dot gnu.org
2011-03-17  2:37 ` jason at gcc dot gnu.org
2011-03-17  2:48 ` jason at gcc dot gnu.org
2011-03-29 18:58 ` jason at gcc dot gnu.org
2011-04-28 16:53 ` rguenth at gcc dot gnu.org
2011-05-06 22:09 ` jason at gcc dot gnu.org
2011-05-06 22:15 ` jason 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).