Hi, 
 
the following Code doesn't compile: 
 
 
class Base; 
 
 
template<typename Type> 
inline 
Base& 
operator<<(Base& rConfiguration, 
           Type const& rType) 
{ 
    return rConfiguration; 
} 
 
 
template<typename Type> 
inline 
Base const& 
operator>>(Base const& rConfiguration, 
           Type& rType) 
{ 
    return rConfiguration; 
} 
 
 
struct QSizePolicy 
{ 
    enum { HSize = 6, HMask = 0x3f, VMask = HMask << HSize }; 
 
    enum SizeType { Fixed = 0 }; 
 
    SizeType verData() const { return (SizeType)( (data & VMask) >> HSize ); } 
 
    void setVerData( SizeType d ) { data = (unsigned int)(data & ~(HMask << 
HSize)) | 
        (d << HSize); } 
 
    unsigned int data; 
}; 
 
It compiles with g++ < 4.0. 
 
 
Cheers, 
André

-- 
           Summary: error: 'QSizePolicy::<anonymous enum>' uses anonymous
                    type
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: Woebbeking at web dot de
                CC: gcc-bugs at gcc dot gnu dot org


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

Reply via email to