------- Additional Comments From nomis80 at nomis80 dot org  2004-12-22 20:54 
-------
I just got hit with that bug and spent too much time figuring out what was
wrong. Here's my code, just to show an example of real-life usage:

//////////////////////////////////////////////////////////////////////////
/**
 * Returns the unsigned version of \a number.
 */
template< class T >
T abs( T number )
{
    // This is the default implementation, using comparison to zero and unary
    // negation operator.
    if ( number < 0 ) {
        return -number;
    }
    return number;
}

// Here are some specific implementations.

template<> bool             WRAP_API abs( bool           number );
template<> char             WRAP_API abs( char           number );
template<> unsigned char    WRAP_API abs( unsigned char  number );
template<> short            WRAP_API abs( short          number );
template<> unsigned short   WRAP_API abs( unsigned short number );
template<> int              WRAP_API abs( int            number );
template<> unsigned int     WRAP_API abs( unsigned int   number );
template<> long             WRAP_API abs( long           number );
template<> unsigned long    WRAP_API abs( unsigned long  number );
template<> float            WRAP_API abs( float          number );
template<> double           WRAP_API abs( double         number );
//////////////////////////////////////////////////////////////////////////

Please fix this bug!

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |s_gccbugzilla at nedprod dot
                   |                            |com


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

Reply via email to