Имеется объявление:
Код
typedef const struct
{
const int32_t *Index; // Указатель на редактируемый параметр/ смещение для каналов
const uint16_t Ch; // 0/ Указатель на канал
const uint8_t fSignEn; // Отображение знака числа
const uint8_t LenDig; // Число цифр в числе (0 - гашение незначащих нулей)
const uint8_t DigAfterDot; // Число цифр после точки (0 - точки нет)
const uint8_t DigType; // Тип результирующего числа (0 - int8, 1 - int16, 2 - int32, 3 - float)
const uint16_t typeEditing; // возможножность редактирования
void (*savefunc)(void); // Указатель на функцию записи редактируемых параметров
const char* const NameUnits; // наименование единиц измерения
} DigEditing_t;
{
const int32_t *Index; // Указатель на редактируемый параметр/ смещение для каналов
const uint16_t Ch; // 0/ Указатель на канал
const uint8_t fSignEn; // Отображение знака числа
const uint8_t LenDig; // Число цифр в числе (0 - гашение незначащих нулей)
const uint8_t DigAfterDot; // Число цифр после точки (0 - точки нет)
const uint8_t DigType; // Тип результирующего числа (0 - int8, 1 - int16, 2 - int32, 3 - float)
const uint16_t typeEditing; // возможножность редактирования
void (*savefunc)(void); // Указатель на функцию записи редактируемых параметров
const char* const NameUnits; // наименование единиц измерения
} DigEditing_t;
Имеется строка
const char* const strSec = "сек.";
Объявлена структура
Код
//***************************************************************
// @@ 12. Настройки работы подсветки прибора
DigEditing_t dgeLightTime = // Меню "Настройки подсветки"
{
(int32_t *)&LightTime, // Время работы подсветки прибора
0, 0, // прямой, неотображать знак
3, 0, // два знака, нет запятой
0, // int8
ALLEDIT, SaveGlobalSetting, // Редактировать можно без пароля, сохранять
strSec // "сек."
};
// @@ 12. Настройки работы подсветки прибора
DigEditing_t dgeLightTime = // Меню "Настройки подсветки"
{
(int32_t *)&LightTime, // Время работы подсветки прибора
0, 0, // прямой, неотображать знак
3, 0, // два знака, нет запятой
0, // int8
ALLEDIT, SaveGlobalSetting, // Редактировать можно без пароля, сохранять
strSec // "сек."
};
IAR 6.40.2 даёт сообщение об ошибке на строке
strSec // "сек."
Error[Pe028]: expression must have a constant value E:\work\IAR C Proect\tm3\Source\MonoMenu\lcd_work.c 432
Что он от меня хочет?
GCC компилит.