-
- Конфиги RTOS (chibios и по моему freertos) устроены так что дефайны всегда определены к концу conf***.h. Это либо TRUE/FALSE либо 0/1 либо 0/число. Внутри конфига закрыто проверками #if !defined(UseHren) ... #endif - 3m(14.09.2022 14:58)
- Можно так Bill(31 знак., 14.09.2022 14:30)
- #ifndef "не спасёт отца русской демкратии??" (С) :)) но при этом конечно нужно прописывать условия проверки
определения для всех переменных, и там тоже можно допустить ошибку. - Adept(14.09.2022 13:30)
- та же херня, только в профиль. Может есть где опция которая бы
включала проверку синтаксиса #if - IBAH(14.09.2022 13:56)
- Статические анализаторы кода? MISRA C 2012, 20.9: "All identifiers
used in the controlling expression of #if or #elif preprocessing
directives shall be #define’d before evaluation". Вроде бы тот же
яр умеет проверять правила мисры? - SciFi(14.09.2022 14:31)
- Спасибо, дельно. Но почему в Мисру включили, а в компиляторы нет? - IBAH(14.09.2022 14:59)
- А какая разница? - SciFi(14.09.2022 15:02)
- в полазил в в своем Иаре 7, как раз этого правила 20.9 нет! - IBAH(14.09.2022 15:13)
- А какая разница? - SciFi(14.09.2022 15:02)
- Спасибо, дельно. Но почему в Мисру включили, а в компиляторы нет? - IBAH(14.09.2022 14:59)
- С чего бы "та же"? Ты сначала проверь есть такой макрос вообще, прерви компиляцию если нет, и лишь затем уже ветви. POV(1 знак., 14.09.2022 14:14, картинка)
- Непонятно. ASDFS(61 знак., 14.09.2022 14:03)
- слишкам много букф! почему компилятор этого не делает сам? - IBAH(14.09.2022 14:08)
- не знаю как там в "сях", но приличные компиляторы при попытке
использования недекларированной переменной всегда выдают ошибку
(исключение только "васик" в котором необъявленные переменные
инициализируются нулевым значением автоматически. ну и ассемблер,
вестимо, где всё надо прописывать ручками :)) Adept(446 знак., 14.09.2022 14:26)
- Речь за препроцессор. Что в него было заложено десятки лет назад,
то сейчас и есть. - POV(14.09.2022 14:29)
- ну да, "всё смешалось" :(( перепутал малька :) - Adept(14.09.2022 14:38)
- Речь за препроцессор. Что в него было заложено десятки лет назад,
то сейчас и есть. - POV(14.09.2022 14:29)
- не знаю как там в "сях", но приличные компиляторы при попытке
использования недекларированной переменной всегда выдают ошибку
(исключение только "васик" в котором необъявленные переменные
инициализируются нулевым значением автоматически. ну и ассемблер,
вестимо, где всё надо прописывать ручками :)) Adept(446 знак., 14.09.2022 14:26)
- слишкам много букф! почему компилятор этого не делает сам? - IBAH(14.09.2022 14:08)
- Статические анализаторы кода? MISRA C 2012, 20.9: "All identifiers
used in the controlling expression of #if or #elif preprocessing
directives shall be #define’d before evaluation". Вроде бы тот же
яр умеет проверять правила мисры? - SciFi(14.09.2022 14:31)
- та же херня, только в профиль. Может есть где опция которая бы
включала проверку синтаксиса #if - IBAH(14.09.2022 13:56)
- Есть еще #ifdef - ASDFS(14.09.2022 13:27)
- то есть так IBAH(86 знак., 14.09.2022 14:02)
- Типа того - ASDFS(14.09.2022 14:03)
- то есть так IBAH(86 знак., 14.09.2022 14:02)