0
ответов

Как безопасно выполнять набор текста во встроенной системе

Наша команда в настоящее время использует некоторый перенесенный код из старой архитектуры в новый продукт, основанный на платформе ARM Cortex M3, с использованием адаптированной версии GCC 4.5.1. Мы читаем данные из ...
вопрос задан: 25 January 2012 23:18
0
ответов

char * правила преобразования и псевдонима

Согласно строгим правилам псевдонима: struct B {virtual ~ B () {}}; структура D: общедоступный B {}; D d; char * c = reinterpret_cast (& d); Допускается символ * для любого объекта другого типа. ...
вопрос задан: 18 December 2011 23:39
0
ответов

Strict aliasling warning on gcc 4.6.1 bug

Я пытаюсь скомпилировать следующее на gcc с -pedantic-errors -pedantic -Wall -O2 #include void reset_uint32(uint32_t* pi) { char* c = (char*)(pi); uint16_t* j = (...
вопрос задан: 18 December 2011 17:37
0
ответов

Включение предупреждений о строгом псевдониме в g ++

Как правильно включить предупреждения о строгом псевдониме в g ++? Реализует ли VC ++ 10 эти правила?
вопрос задан: 18 December 2011 16:02
0
ответов

Это хакерство для удаления предупреждения UB о псевдонимах?

Мы только что обновили наш компилятор до gcc 4.6 и теперь получаем некоторые из этих предупреждений. На данный момент наша кодовая база не в состоянии скомпилировать с c ++ 0x, и в любом случае мы не хотим запускать это в prod (at ...
вопрос задан: 13 December 2011 15:14
0
ответов

Распределитель памяти C и строгий псевдоним

, даже после того, как я немного прочитал о правилах строгого псевдонима, я все еще запутался. Насколько я понял, невозможно реализовать разумный распределитель памяти, который следует этим правилам, ...
вопрос задан: 13 December 2011 08:31
0
ответов

Почему boost :: optional не работает для классов, наследующих виртуальные функции

boost :: optional <> идеально подходит для простых типов данных, но как только используется для класса, наследующего от класса, реализующего интерфейс не работает, когда включен строгий псевдоним. Пример: #include ...
вопрос задан: 29 June 2011 09:58
0
ответов

Различное поведение оператора сдвига с -O2 и без

Без -O2 этот код печатает 84 84, с флагом O2 вывод 84 42. Код был скомпилирован с использованием gcc 4.4.3. на 64-битной платформе Linux. Почему вывод для следующего кода отличается? Обратите внимание, что ...
вопрос задан: 4 March 2011 16:10
0
ответов

Является символом без знака a [4] [5]; а [1] [7]; неопределенное поведение?

Один из примеров неопределенного поведения из стандарта C гласит (J.2): - Индекс массива вне допустимого диапазона, даже если объект явно доступен с данным индексом (как в .. .
вопрос задан: 22 September 2010 03:15