But what it does after that does not really behave as a proper implementation of the second lookup phase. At the surface, it is the obvious fact that Microsoft's compiler fails to perform early (first phase) lookup for a non-dependent expression foo(0). However, MSVC (2005 as well as 2010 Express) will report an error because of incorrect implementation of two-phase lookup.Īnd if you look closer, the issue is actually two-layered. The above code is supposed to compile in a standard C++ compiler. bind it to 'foo(int)', reporting an error in the late, during instantiation of 'S::S()') and VS2005 will resolve the 'foo(0)' call here (i.e. A standard-compliant compiler is supposed to I'll just copy an example from my "notebook" int foo(void*)
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |