KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
When compiling void ambig( signed long) { } void ambig(unsigned long) { } int main(void) { ambig(-1); return 0; } I get error C2668: 'ambig' : ambiguous call to overloaded function could be 'void ambig(unsigned long)' or 'void ambig(long)' while trying to match the argument list '(int)' I know I can 'fix' it by saying -1L instead of -1 , but why/how exactly is this considered ambiguous in the first place?
Tags (comma-separated)
Save Edits
Cancel