Оператор броска и тернарный оператор в C ++

Следующий код компилируется с G ++ 4.6.1, но не с Visual Studio 2008

return (m_something == 0) ? 
    throw std::logic_error("Something wrong happened") : m_something;

Дело в том, что компилятор Visual Studio выполняет внутренний сбой.

Я хочу знать, является ли это стандартным C ++ и почему он компилируется не с Visual Studio, а с G ++?

8
задан fmorency 31 October 2011 в 18:00
поделиться