Что значит ссылка без типа?
const &y = x;
Это не ссылка без типа, а синтаксически неверный код, который не пройдет трансляцию за пределами GCC.

Т.к. ты пользуешься GCC, тебе стоит принять во внимание то, что он не соблюдает стандарт в некоторых случаях.
В частности - в данном случае.

В C++ нет типа по умолчанию, в отличие от С, где типом по умолчанию является int. Если в C код const y = x является синтаксически верным и подразумевает const int y = x, то в C++ этот же код является уже синтаксически неверным и не пройдет трансляцию.
GCC в твоем коде отходит от стандарта C++ в пользу поведения как в C.
Компилируйте всегда с флагами -Wall -Wextra -pedantic и будет вам счастье :)