4 ms·
This is gonna haunt me. Digging through some old code of mine (circa 2009) I found this bit: #elif _MSC_VER >= 1310 #define typeof(type) __typeof(type)
by wahern 1y ago
This is gonna haunt me.
Digging through some old code of mine (circa 2009) I found this bit:
#elif _MSC_VER >= 1310
#define typeof(type) __typeof(type)
So somehow I had the impression Visual Studio .NET 2003 (7.1)[1] added __typeof. I'm still holding out hope someone will come to my rescue and reply that once upon a time MSVC had __typeof, but removed it. But for now it seems past me is gaslighting present me.
[1] See https://learn.microsoft.com/en-us/cpp/overview/compiler-versions?view=msvc-170 https://learn.microsoft.com/en-us/cpp/overview/compiler-vers... for mapping between Visual Studio versions and _MSC_VER.
EDIT: Ah ha! It seems Microsoft did support __typeof, but perhaps only for "managed" C++ (aka C++ .NET)?
> One thing to watch out for when using the __typeof operator in managed C++ is that __typeof(wchar_t) can return different values depending on the compilation options.
Source: https://learn.microsoft.com/en-us/archive/msdn-magazine/2002/february/visual-c-net-tips-and-tricks-to-bolster-your-managed-c-code-in-visual-studio-net https://learn.microsoft.com/en-us/archive/msdn-magazine/2002... (See also https://learn.microsoft.com/en-us/archive/msdn-magazine/2005/july/c-at-work-enum-declarations-template-function-specialization https://learn.microsoft.com/en-us/archive/msdn-magazine/2005...)