Компилятор, отображающий символ "pi" при ошибке

Я тестировал код Coliru, и я получил странный результат. Я спустил код и смог воспроизвести его с помощью этого простого фрагмента кода:

int main()
{
    π
}

Вывод на g++:

output on g++

лязг:

output on clang

Например, использование только pi (без адреса) показывает ожидаемый результат:

main.cpp:3:5: error: 'pi' was not declared in this scope
    pi;
    ^

Я попытался воспроизвести это на своей машине, используя g++ 4.9.2 и другие сайты, но не смог.

Это какая-то ошибка на этом сайте, какая-то конфигурация этих компиляторов?

И почему только использование адреса-оператора (&) показывает этот символ?

Ответ 1

Это ошибка на сайте, поскольку выход компилятора не экранирован должным образом. Компилятор должен выводить π, но этот действительный HTML, создавая символ pi, который вы видите.

Ответ 2

π - это html-код для & pi;. Похоже, кто-то забыл что-то избежать.