[Bug c++/49812] strange return type for built-in operator++(int, int)

2011-08-05 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49812

Jason Merrill jason at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 AssignedTo|unassigned at gcc dot   |jason at gcc dot gnu.org
   |gnu.org |


[Bug c++/49812] strange return type for built-in operator++(int, int)

2011-08-05 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49812

--- Comment #2 from Jason Merrill jason at gcc dot gnu.org 2011-08-05 
14:42:00 UTC ---
operator++ isn't returning void.  The problem is that GCC is treating it as a
volatile prvalue, which can't bind to either const volatile int or const int.
 But int prvalues shouldn't have cv-quals.


[Bug c++/49812] strange return type for built-in operator++(int, int)

2011-08-05 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49812

--- Comment #3 from Jason Merrill jason at gcc dot gnu.org 2011-08-05 
19:12:27 UTC ---
Author: jason
Date: Fri Aug  5 19:12:24 2011
New Revision: 177479

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=177479
Log:
PR c++/49812
* typeck.c (cp_build_unary_op) [POSTINCREMENT_EXPR]: Strip cv-quals.

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


[Bug c++/49812] strange return type for built-in operator++(int, int)

2011-08-05 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49812

Jason Merrill jason at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.7.0

--- Comment #4 from Jason Merrill jason at gcc dot gnu.org 2011-08-05 
19:40:56 UTC ---
Fixed for 4.7.


[Bug c++/49812] strange return type for built-in operator++(int, int)

2011-07-22 Thread frederic.bron at m4x dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49812

--- Comment #1 from Frédéric Bron frederic.bron at m4x dot org 2011-07-22 
08:58:31 UTC ---
Created attachment 24809
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=24809
program that fails

This program should write false but writes true.


[Bug c++/49812] strange return type for built-in operator++(int, int)

2011-07-22 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49812

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2011.07.22 10:15:28
 CC||jason at gcc dot gnu.org
 Ever Confirmed|0   |1