LINUX.ORG.RU

История изменений

Исправление shdown, (текущая версия) :

Выравнивание тут не причём. Это алиасинг.

Ключ -fno-strict-aliasing уже существует.

Алсо, ты присваиваешь 1 в любом случае, поэтому компилятор даже с этим ключом заоптимизирует и вернёт 1.

Выравнивание тут ни при чём. Это алиасинг. Но код с -fno-strict-aliasing всё равно вернёт 1. (А ещё я поменял код my_func, и теперь оно печатает другое!)

Странно как-то, не находишь?

(Я знаю, как продемонстрировать, что это выравниваниие, но хочу немного потроллить Stanson’а перед этим.)

Исправление shdown, :

Выравнивание тут не причём. Это алиасинг.

Ключ -fno-strict-aliasing уже существует.

Алсо, ты присваиваешь 1 в любом случае, поэтому компилятор даже с этим ключом заоптимизирует и вернёт 1.

Выравнивание тут ни при чём. Это алиасинг. Но код с -fno-strict-aliasing всё равно вернёт 1.

Странно как-то, не находишь?

(Я знаю, как продемонстрировать, что это выравниваниие, но хочу немного потроллить Stanson’а перед этим.)

Исходная версия shdown, :

Выравнивание тут не причём. Это алиасинг.

Ключ -fno-strict-aliasing уже существует.

Алсо, ты присваиваешь 1 в любом случае, поэтому компилятор даже с этим ключом заоптимизирует и вернёт 1.

Выравнивание тут не причём. Это алиасинг. Но код с -fno-strict-aliasing всё равно вернёт 1.

Странно как-то, не находишь?

(Я знаю, как продемонстрировать, что это выравниваниие, но хочу немного потроллить Stanson’а перед этим.)