Essentially, clang will accept the following in C++11 and forth:
enum B : bool { b };
enum C : char { c };
int &func(bool);
double &func(char);
void func(unsigned);
void func(long);
void g() {
int &r = func(b);
double &d = func(c);
}Paths
| Differential D32251
Implement DR1601 - Promotion of enumeration with fixed underlying type Needs ReviewPublic Authored by ismailp on Apr 19 2017, 3:37 PM.
Details
Summary Essentially, clang will accept the following in C++11 and forth: enum B : bool { b };
enum C : char { c };
int &func(bool);
double &func(char);
void func(unsigned);
void func(long);
void g() {
int &r = func(b);
double &d = func(c);
}
Diff Detail
Event Timeline
Revision Contents
Diff 95838 lib/Sema/SemaOverload.cpp
test/CXX/drs/dr16xx.cpp
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
This should probably go after all the standard orderings.