[LLVMbugs] [Bug 12185] New: locale errors with clang 3.0 on apple - libc++ revision 152018

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Sun Mar 4 22:18:37 PST 2012


http://llvm.org/bugs/show_bug.cgi?id=12185

             Bug #: 12185
           Summary: locale errors with clang 3.0 on apple - libc++
                    revision 152018
           Product: libc++
           Version: unspecified
          Platform: PC
        OS/Version: MacOS X
            Status: NEW
          Severity: normal
          Priority: P
         Component: All Bugs
        AssignedTo: hhinnant at apple.com
        ReportedBy: phillipvoyle at hotmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


I fixed this in my build using loc == nullptr in each of these instances
instead of loc == 0

exhaustive errors below.

+ clang++ -c -g -Os -arch i386 -arch x86_64 -std=c++0x -fstrict-aliasing -Wall
-Wextra -Wshadow -Wconversion -Wnewline-eof -Wpadded -Wmissing-prototypes
-Wstrict-aliasing=2 -Wstrict-overflow=4 -nostdinc++ -I../include
../src/locale.cpp
../src/locale.cpp:4087:17: error: use of overloaded operator '==' is ambiguous
(with operand types '__locale_unique_ptr' (aka
      'unique_ptr<__locale_struct, decltype(&freelocale)>') and 'int')
        if (loc == 0)
            ~~~ ^  ~
../include/memory:2993:1: note: candidate function [with _T1 = _xlocale, _D1 =
int (*)(_xlocale *)]
operator==(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, int)
        if (loc == 0)
                ^
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, long
double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, unsigned
int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, unsigned
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(int, unsigned
long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long, int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
long double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long,
unsigned long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long,
unsigned long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long,
unsigned int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long, long
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long, long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long, long
double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, unsigned long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, unsigned long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, unsigned int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, long double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long
long, float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
unsigned long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
unsigned long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
unsigned int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
long double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned long,
float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
unsigned long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
unsigned long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
unsigned int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(unsigned int,
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, unsigned
long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, unsigned
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, unsigned
int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, long
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, long
double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(double, float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, unsigned
long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, unsigned
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, unsigned
int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, long
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, long
double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(float, float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long,
double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long long,
float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, unsigned
long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, unsigned
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, unsigned
int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, long
double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long, float)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
unsigned long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
unsigned long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
unsigned int)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
long long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
long)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
long double)
../src/locale.cpp:4087:17: note: built-in candidate operator==(long double,
double)
../src/locale.cpp:4130:17: error: use of overloaded operator '==' is ambiguous
(with operand types '__locale_unique_ptr' (aka
      'unique_ptr<__locale_struct, decltype(&freelocale)>') and 'int')
        if (loc == 0)
            ~~~ ^  ~
../include/memory:2993:1: note: candidate function [with _T1 = _xlocale, _D1 =
int (*)(_xlocale *)]
operator==(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, int)
        if (loc == 0)
                ^
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, long
double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, unsigned
int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, unsigned
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(int, unsigned
long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long, int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
long double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long,
unsigned long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long,
unsigned long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long,
unsigned int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long, long
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long, long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long, long
double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, unsigned long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, unsigned long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, unsigned int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, long double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long
long, float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
unsigned long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
unsigned long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
unsigned int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
long double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned long,
float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
unsigned long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
unsigned long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
unsigned int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(unsigned int,
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, unsigned
long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, unsigned
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, unsigned
int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, long
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, long
double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(double, float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, unsigned
long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, unsigned
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, unsigned
int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, long
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, long
double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(float, float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long,
double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long long,
float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, unsigned
long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, unsigned
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, unsigned
int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, long
double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long, float)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
unsigned long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
unsigned long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
unsigned int)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
long long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
long)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
long double)
../src/locale.cpp:4130:17: note: built-in candidate operator==(long double,
double)
../src/locale.cpp:5521:13: error: use of overloaded operator '==' is ambiguous
(with operand types '__locale_unique_ptr' (aka
      'unique_ptr<__locale_struct, decltype(&freelocale)>') and 'int')
    if (loc == 0)
        ~~~ ^  ~
../include/memory:2993:1: note: candidate function [with _T1 = _xlocale, _D1 =
int (*)(_xlocale *)]
operator==(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, int)
    if (loc == 0)
            ^
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, long
double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, unsigned
int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, unsigned
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(int, unsigned
long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long, int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
long double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long,
unsigned long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long,
unsigned long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long,
unsigned int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long, long
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long, long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long, long
double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, unsigned long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, unsigned long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, unsigned int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, long double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long
long, float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
unsigned long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
unsigned long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
unsigned int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
long double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned long,
float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
unsigned long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
unsigned long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
unsigned int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(unsigned int,
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, unsigned
long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, unsigned
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, unsigned
int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, long
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, long
double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(double, float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, unsigned
long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, unsigned
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, unsigned
int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, long
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, long
double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(float, float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long,
double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long long,
float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, unsigned
long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, unsigned
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, unsigned
int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, long
double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long, float)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
unsigned long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
unsigned long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
unsigned int)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
long long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
long)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
long double)
../src/locale.cpp:5521:13: note: built-in candidate operator==(long double,
double)
../src/locale.cpp:5563:13: error: use of overloaded operator '==' is ambiguous
(with operand types '__locale_unique_ptr' (aka
      'unique_ptr<__locale_struct, decltype(&freelocale)>') and 'int')
    if (loc == 0)
        ~~~ ^  ~
../include/memory:2993:1: note: candidate function [with _T1 = _xlocale, _D1 =
int (*)(_xlocale *)]
operator==(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, int)
    if (loc == 0)
            ^
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, long
double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, unsigned
int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, unsigned
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(int, unsigned
long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long, int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
long double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long,
unsigned long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long,
unsigned long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long,
unsigned int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long, long
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long, long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long, long
double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, unsigned long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, unsigned long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, unsigned int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, long double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long
long, float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
unsigned long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
unsigned long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
unsigned int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
long double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned long,
float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
unsigned long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
unsigned long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
unsigned int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(unsigned int,
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, unsigned
long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, unsigned
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, unsigned
int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, long
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, long
double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(double, float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, unsigned
long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, unsigned
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, unsigned
int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, long
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, long
double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(float, float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long,
double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long long,
float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, unsigned
long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, unsigned
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, unsigned
int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, long
double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long, float)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
unsigned long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
unsigned long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
unsigned int)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
long long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
long)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
long double)
../src/locale.cpp:5563:13: note: built-in candidate operator==(long double,
double)
../src/locale.cpp:5618:13: error: use of overloaded operator '==' is ambiguous
(with operand types '__locale_unique_ptr' (aka
      'unique_ptr<__locale_struct, decltype(&freelocale)>') and 'int')
    if (loc == 0)
        ~~~ ^  ~
../include/memory:2993:1: note: candidate function [with _T1 = _xlocale, _D1 =
int (*)(_xlocale *)]
operator==(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, int)
    if (loc == 0)
            ^
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, long
double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, unsigned
int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, unsigned
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(int, unsigned
long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long, int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
long double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long,
unsigned long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long,
unsigned long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long,
unsigned int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long, long
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long, long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long, long
double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, unsigned long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, unsigned long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, unsigned int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, long double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long
long, float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
unsigned long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
unsigned long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
unsigned int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
long double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned long,
float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
unsigned long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
unsigned long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
unsigned int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(unsigned int,
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, unsigned
long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, unsigned
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, unsigned
int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, long
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, long
double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(double, float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, unsigned
long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, unsigned
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, unsigned
int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, long
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, long
double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(float, float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long,
double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long long,
float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, unsigned
long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, unsigned
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, unsigned
int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, long
double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long, float)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
unsigned long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
unsigned long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
unsigned int)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
long long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
long)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
long double)
../src/locale.cpp:5618:13: note: built-in candidate operator==(long double,
double)
../src/locale.cpp:5695:13: error: use of overloaded operator '==' is ambiguous
(with operand types '__locale_unique_ptr' (aka
      'unique_ptr<__locale_struct, decltype(&freelocale)>') and 'int')
    if (loc == 0)
        ~~~ ^  ~
../include/memory:2993:1: note: candidate function [with _T1 = _xlocale, _D1 =
int (*)(_xlocale *)]
operator==(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, int)
    if (loc == 0)
            ^
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, long
double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, unsigned
int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, unsigned
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(int, unsigned
long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long, int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
long double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long,
unsigned long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long,
unsigned long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long,
unsigned int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long, long
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long, long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long, long
double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, unsigned long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, unsigned long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, unsigned int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, long double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long
long, float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
unsigned long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
unsigned long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
unsigned int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
long double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned long,
float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
unsigned long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
unsigned long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
unsigned int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(unsigned int,
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, unsigned
long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, unsigned
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, unsigned
int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, long
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, long
double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(double, float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, unsigned
long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, unsigned
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, unsigned
int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, long
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, long
double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(float, float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long,
double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long long,
float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, unsigned
long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, unsigned
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, unsigned
int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, long
double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long, float)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
unsigned long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
unsigned long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
unsigned int)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
long long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
long)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
long double)
../src/locale.cpp:5695:13: note: built-in candidate operator==(long double,
double)
In file included from ../src/locale.cpp:17:
../include/locale:3563:18: error: use of overloaded operator '==' is ambiguous
(with operand types
      'unique_ptr<char_type, void (*)(void *)>' and 'int')
        if (__hd == 0)
            ~~~~ ^  ~
../src/locale.cpp:5830:16: note: in instantiation of member function
'std::__1::money_put<char, std::__1::ostreambuf_iterator<char,
      std::__1::char_traits<char> > >::do_put' requested here
template class money_put<char>;
               ^
../include/memory:2993:1: note: candidate function [with _T1 = char, _D1 = void
(*)(void *)]
operator==(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
../include/locale:3563:18: note: built-in candidate operator==(int, int)
        if (__hd == 0)
                 ^
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
int)
../include/locale:3563:18: note: built-in candidate operator==(int, float)
../include/locale:3563:18: note: built-in candidate operator==(int, double)
../include/locale:3563:18: note: built-in candidate operator==(int, long
double)
../include/locale:3563:18: note: built-in candidate operator==(long double,
int)
../include/locale:3563:18: note: built-in candidate operator==(int, long)
../include/locale:3563:18: note: built-in candidate operator==(int, long long)
../include/locale:3563:18: note: built-in candidate operator==(int, unsigned
int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
int)
../include/locale:3563:18: note: built-in candidate operator==(int, unsigned
long)
../include/locale:3563:18: note: built-in candidate operator==(int, unsigned
long long)
../include/locale:3563:18: note: built-in candidate operator==(double, int)
../include/locale:3563:18: note: built-in candidate operator==(long, int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, int)
../include/locale:3563:18: note: built-in candidate operator==(float, int)
../include/locale:3563:18: note: built-in candidate operator==(long long, int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
long double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
float)
../include/locale:3563:18: note: built-in candidate operator==(long long,
unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(long long,
unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(long long,
unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(long long, long
long)
../include/locale:3563:18: note: built-in candidate operator==(long long, long)
../include/locale:3563:18: note: built-in candidate operator==(long long, long
double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, long double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, float)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
long double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
float)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
float)
../include/locale:3563:18: note: built-in candidate operator==(double, unsigned
long long)
../include/locale:3563:18: note: built-in candidate operator==(double, unsigned
long)
../include/locale:3563:18: note: built-in candidate operator==(double, unsigned
int)
../include/locale:3563:18: note: built-in candidate operator==(double, long
long)
../include/locale:3563:18: note: built-in candidate operator==(double, long)
../include/locale:3563:18: note: built-in candidate operator==(double, long
double)
../include/locale:3563:18: note: built-in candidate operator==(double, double)
../include/locale:3563:18: note: built-in candidate operator==(double, float)
../include/locale:3563:18: note: built-in candidate operator==(float, unsigned
long long)
../include/locale:3563:18: note: built-in candidate operator==(float, unsigned
long)
../include/locale:3563:18: note: built-in candidate operator==(float, unsigned
int)
../include/locale:3563:18: note: built-in candidate operator==(float, long
long)
../include/locale:3563:18: note: built-in candidate operator==(float, long)
../include/locale:3563:18: note: built-in candidate operator==(float, long
double)
../include/locale:3563:18: note: built-in candidate operator==(float, double)
../include/locale:3563:18: note: built-in candidate operator==(float, float)
../include/locale:3563:18: note: built-in candidate operator==(long long,
double)
../include/locale:3563:18: note: built-in candidate operator==(long long,
float)
../include/locale:3563:18: note: built-in candidate operator==(long, unsigned
long long)
../include/locale:3563:18: note: built-in candidate operator==(long, unsigned
long)
../include/locale:3563:18: note: built-in candidate operator==(long, unsigned
int)
../include/locale:3563:18: note: built-in candidate operator==(long, long long)
../include/locale:3563:18: note: built-in candidate operator==(long, long)
../include/locale:3563:18: note: built-in candidate operator==(long, long
double)
../include/locale:3563:18: note: built-in candidate operator==(long, double)
../include/locale:3563:18: note: built-in candidate operator==(long, float)
../include/locale:3563:18: note: built-in candidate operator==(long double,
unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(long double,
long long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
long double)
../include/locale:3563:18: note: built-in candidate operator==(long double,
double)
../include/locale:3563:18: error: use of overloaded operator '==' is ambiguous
(with operand types
      'unique_ptr<char_type, void (*)(void *)>' and 'int')
        if (__hd == 0)
            ~~~~ ^  ~
../src/locale.cpp:5831:16: note: in instantiation of member function
'std::__1::money_put<wchar_t, std::__1::ostreambuf_iterator<wchar_t,
      std::__1::char_traits<wchar_t> > >::do_put' requested here
template class money_put<wchar_t>;
               ^
../include/memory:2993:1: note: candidate function [with _T1 = wchar_t, _D1 =
void (*)(void *)]
operator==(const unique_ptr<_T1, _D1>& __x, nullptr_t)
^
../include/locale:3563:18: note: built-in candidate operator==(int, int)
        if (__hd == 0)
                 ^
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
int)
../include/locale:3563:18: note: built-in candidate operator==(int, float)
../include/locale:3563:18: note: built-in candidate operator==(int, double)
../include/locale:3563:18: note: built-in candidate operator==(int, long
double)
../include/locale:3563:18: note: built-in candidate operator==(long double,
int)
../include/locale:3563:18: note: built-in candidate operator==(int, long)
../include/locale:3563:18: note: built-in candidate operator==(int, long long)
../include/locale:3563:18: note: built-in candidate operator==(int, unsigned
int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
int)
../include/locale:3563:18: note: built-in candidate operator==(int, unsigned
long)
../include/locale:3563:18: note: built-in candidate operator==(int, unsigned
long long)
../include/locale:3563:18: note: built-in candidate operator==(double, int)
../include/locale:3563:18: note: built-in candidate operator==(long, int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, int)
../include/locale:3563:18: note: built-in candidate operator==(float, int)
../include/locale:3563:18: note: built-in candidate operator==(long long, int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
long double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
float)
../include/locale:3563:18: note: built-in candidate operator==(long long,
unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(long long,
unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(long long,
unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(long long, long
long)
../include/locale:3563:18: note: built-in candidate operator==(long long, long)
../include/locale:3563:18: note: built-in candidate operator==(long long, long
double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, long double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long
long, float)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
long double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
double)
../include/locale:3563:18: note: built-in candidate operator==(unsigned long,
float)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
long long)
../include/locale:3563:18: note: built-in candidate operator==(unsigned int,
long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
float)
../include/locale:3563:18: note: built-in candidate operator==(double, unsigned
long long)
../include/locale:3563:18: note: built-in candidate operator==(double, unsigned
long)
../include/locale:3563:18: note: built-in candidate operator==(double, unsigned
int)
../include/locale:3563:18: note: built-in candidate operator==(double, long
long)
../include/locale:3563:18: note: built-in candidate operator==(double, long)
../include/locale:3563:18: note: built-in candidate operator==(double, long
double)
../include/locale:3563:18: note: built-in candidate operator==(double, double)
../include/locale:3563:18: note: built-in candidate operator==(double, float)
../include/locale:3563:18: note: built-in candidate operator==(float, unsigned
long long)
../include/locale:3563:18: note: built-in candidate operator==(float, unsigned
long)
../include/locale:3563:18: note: built-in candidate operator==(float, unsigned
int)
../include/locale:3563:18: note: built-in candidate operator==(float, long
long)
../include/locale:3563:18: note: built-in candidate operator==(float, long)
../include/locale:3563:18: note: built-in candidate operator==(float, long
double)
../include/locale:3563:18: note: built-in candidate operator==(float, double)
../include/locale:3563:18: note: built-in candidate operator==(float, float)
../include/locale:3563:18: note: built-in candidate operator==(long long,
double)
../include/locale:3563:18: note: built-in candidate operator==(long long,
float)
../include/locale:3563:18: note: built-in candidate operator==(long, unsigned
long long)
../include/locale:3563:18: note: built-in candidate operator==(long, unsigned
long)
../include/locale:3563:18: note: built-in candidate operator==(long, unsigned
int)
../include/locale:3563:18: note: built-in candidate operator==(long, long long)
../include/locale:3563:18: note: built-in candidate operator==(long, long)
../include/locale:3563:18: note: built-in candidate operator==(long, long
double)
../include/locale:3563:18: note: built-in candidate operator==(long, double)
../include/locale:3563:18: note: built-in candidate operator==(long, float)
../include/locale:3563:18: note: built-in candidate operator==(long double,
unsigned long long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
unsigned long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
unsigned int)
../include/locale:3563:18: note: built-in candidate operator==(long double,
long long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
long)
../include/locale:3563:18: note: built-in candidate operator==(long double,
long double)
../include/locale:3563:18: note: built-in candidate operator==(long double,
double)

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list