Кресты / Говнокод #9905 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
#include <iostream>
#include <stdio.h>
 
void foo(const long) { std::cout << "long" << std::endl; }
 
template<typename _type_>
void omg()
{
        short i = 0;
        foo(i);
}
 
void foo(const short) { std::cout << "short" << std::endl; }
 
int main(int, char*[])
{
  omg<int>();
 
  getchar();
  return 0;
}

код для гцц -> http://ideone.com/mifTV

вопрос, что выдаст говностудия?

связанно с тем, что говностудия не ищет независимые типы использованные в шаблоне на этапе определения. она их ищет только в точке конкретизации шаблона. гцц связывает независимые типы в шаблоне на этапе определения шаблона

З.Ы. ответ на http://govnokod.ru/9885#comment134160

Запостил: Govnoeb Govnoeb, (Updated )

Комментарии (2) RSS

  • Хорошо известный, подробно описанный баг. Присутвовал в VS2005. Присутствует в VS2010.
    Ответить
    • Это фишка мелкомягких: хорошо известный и подробно описанный баг элегантно превращается в фичу
      Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8