MSVC 2015 bug - template alias o_O
От: Кодт Россия  
Дата: 16.03.15 15:32
Оценка: 3 (2) +1
http://webcompiler.cloudapp.net/
Compiler version: 19.00.22620(x86) Last updated: Feb. 24, 2015

Опечатался (бесконтрольное контрол-вэ) и получил удивительный результат
#include <cstdio>

template<class T> using foo = T*;
template<class T> using bar = T*;
template<class T> using buz = foo<T>;
    
template< template<class>class TT > struct id {};
    
using id_foo = id<foo>;
using id_bar = id<bar>;
using id_buz = id<buz>;

template<class I> void say() { puts(__FUNCSIG__); }
template< template<class> class > void say2() { puts(__FUNCSIG__); }


int main()
{
    say<id_foo>(); // void __cdecl say<struct id<foo>>(void)
    say<id_bar>(); // void __cdecl say<struct id<bar>>(void)
    say<id_buz>(); // void __cdecl say<struct id<buz>>(void)

    say2<foo>(); // void __cdecl say2<foo>(void)
    say2<bar>(); // void __cdecl say2<bar>(void)
    say2<buz>(); // void __cdecl say2<buz>(void)
    
    // вот эти ребята! сейчас мы покажем особую уличную магию!!!
    say<foo>(); // void __cdecl say<foo>(void)
    say<bar>(); // void __cdecl say<bar>(void)
    say<buz>(); // void __cdecl say<buz>(void)
}

gcc 4.9 на уличной магии, как и положено, ругается.
Перекуём баги на фичи!
Re: VS bug: new int(1,2,"wtf")
От: Constructor  
Дата: 16.03.15 15:53
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Опечатался (бесконтрольное контрол-вэ) и получил удивительный результат


К>gcc 4.9 на уличной магии, как и положено, ругается.


С таким богатством прямая дорога сюда: Visual Studio Feedback Center.
Re[2]: VS bug: new int(1,2,"wtf")
От: Кодт Россия  
Дата: 23.03.15 17:07
Оценка:
Здравствуйте, Constructor, Вы писали:

C>С таким богатством прямая дорога сюда: Visual Studio Feedback Center.


Только что починили, обещают в ближайшем мажорном релизе. Будет выдавать error C3206
Перекуём баги на фичи!
Re[3]: VS bug: new int(1,2,"wtf")
От: Constructor  
Дата: 23.03.15 17:42
Оценка:
Здравствуйте, Кодт, Вы писали:

C>>С таким богатством прямая дорога сюда: Visual Studio Feedback Center.


К>Только что починили, обещают в ближайшем мажорном релизе. Будет выдавать error C3206


Ссылочкой не поделитесь?
Re[4]: VS bug: new int(1,2,"wtf")
От: Кодт Россия  
Дата: 23.03.15 18:20
Оценка: 4 (1)
Здравствуйте, Constructor, Вы писали:

C>Ссылочкой не поделитесь?


https://connect.microsoft.com/VisualStudio/feedback/details/1184458/msvc-compiler-bug-template-alias-is-treated-as-instantiated-class
Перекуём баги на фичи!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.