https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67777

            Bug ID: 67777
           Summary: unsigned wchar_t and signed wchar_t should cause
                    compiler errors but do not.
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: TrevorJamesHickey at gmail dot com
  Target Milestone: ---

Is the following program valid C++?

void f(unsigned wchar_t){}
int main(){}

It compiles without errors.   

The standard specifies that:  
"signed or unsigned can be combined with char, long, short, or int."

wchar_t is a distinct type, but the standard makes no mention of it being able
to be qualified with signed or unsigned.

"Type wchar_t shall have the same size, signedness, and alignment requirements
(3.11) as one of the other integral types, called its underlying type."  

Why can we add signed/unsigned qualifiers to wchar_t?  
Is this by design?  Can I get a warning about this?

Reply via email to