LINUX.ORG.RU

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

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

Это нюансы разработчиков GCC и их видения

Нет, это нюансы разработчиков стандарта C. gcc как раз в интересующих меня версиях компилирует код как я ожидаю. Но полагаться я на это не могу.

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

Компилятор меня ни о чём не предупреждает.

Про одно адресное пространство не совсем понял.

Это мой комментарий к вашей фразе про «замену Си» и что «все этого хотят».

Всё равно не понял, ну да ладно.

Все данные и сам код находятся в одном адресном пространстве процессора для работающей программы.

Это неправда в общем случае. Есть процессоры, у которых не одно адресное пространство. Да взять банальный DOS с сегментами, это не совсем то, но там уже не одно адресное пространство. Процессоры, у которых данные и код находятся в разных сегментах, для работы с ними используются разные инструкции процессора, тоже существуют, хотя и не так известны. И C для них существует.

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

Это нюансы разработчиков GCC и их видения

Нет, это нюансы разработчиков стандарта C. gcc как раз в интересующих меня версиях компилирует код как я ожидаю. Но полагаться я на это не могу.

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

Компилятор меня ни о чём не предупреждает.