[Bug libstdc++/43813] [DR1234] vector<T*>(3, NULL) fails to compile

redi at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Tue Apr 20 09:40:00 GMT 2010



------- Comment #1 from redi at gcc dot gnu dot org  2010-04-20 09:40 -------
(In reply to comment #0)
> Passing "NULL" instead of "0" makes the error depend on the build target. For
> example, NULL appears to be an int on x86-32 but a long on x86-64, meaning the
> error appears on x86-32 but not on x86-64.

Right, NULL is 0L on 64-bit to ensure it has the same size as (void*) and can
be used as a sentinel in varargs functions such as execl


-- 

redi at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-04-20 09:40:35
               date|                            |
            Summary|vector<T*>(3, NULL) fails to|[DR1234] vector<T*>(3, NULL)
                   |compile                     |fails to compile


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



More information about the Gcc-bugs mailing list