@Oleg Ivanov,это потому что у вас в настройках компиляции включен режим строжайшей проверки синтаксиса, когда любое мало-мальское предупреждение компилятор считает ошибкой и отказывается собирать проект.
Я, конечно поправил что смог - типа обязательное отделение всех (!!!) логических операций && и || отдельно своими скобками. Типа компилятор не понимает приоритетов операций и ему всё нужно указывать явно. Или сравнение типов , который byte с типом же bytе... Или на неиспользуемые переменные...
Но даже после этого он ругается на что-то внутри комментариев - Compilation error: multi-line comment [-Werror=comment]
Чего я с моим знанием си осознать не могу.
Если хороши в си - исправьте и скажите как надо писать.
Если нет - будьте проще - отключите режим строгой проверки, включите "По умолчанию" - и будет вам счастье.
---------------------------
Напоминаю, что вот как раз возможно из за таких ошибок, когда строгая проверка не проходит и имеются в прошивке глюки,
когда после заливки прошивки отдельные эффекты могут не работать.
Что наблюдал я:
- Часть эффектов не работает, при переключении на них мерцает первый светодиод матрицы, на матрице остаток от предыдущего эффекта.
- При включении бегущей строки или когда приходит время показа даты календаря - эффект на это время размораживается
- Либо наоборот - эффекты работают, но при включении бегущей строки замирает.
- Либо эффекты замирают, но при снятии в часах галочки "цветная температура днем" все размораживается
- Либо работают все эффекты кроме какого-то одного (причем при разных сборках эффекты могут быть разными)
- На эффектах Снегопад и Matrix (и не на каких других) движение снежинок и полосок с небольшими рывками / подтормаживанием.
- Либо работает все, бегут все строки. Кроме одной какой-нибудь. Иногда в такой строке есть макрос {D} но это не обязательно - может только одна с макросом не показываться а другие - нормально. Или с каким-нибудь другим макросом типа {S}.
В общем - не работать может в любом случайном месте. И найти и побороть этот глюк мне не хватает знаний/ квалификации / удачи.
Так с этим и живу. Впрочем я прошивку для себя делал. Если что - полно других безглючных.
Как я с этим борюсь.
Если в настройках функционала включить режим USE_E131 (или выключить) - иногда глюков не наблюдается.
Можно попробовать в меню "Инструменты" включить / выключить настройки (для ESP8266) - Stack Protection и/или С++Exception. Это дает 4 комбинации. Возможно с какой-нибудь из них заработает. Если нет - можно еще какие-нибудь настройки "пощелкать" - типа SSL Support, попереключать частоты CPU и памяти, режимы DOUT/DIO/QOUT/QUIO, для ESP32 - выбрать другую плату ESP32...
Обычно если найти "удачную" комбинацию настроек компиляции, при которой дефектов не наблюдается - их и не будет наблюдаться в дальнейшей работе до следующей перепрошивки. При которой, возможно, понадобится искать новую комбинацию настроек.
По видимому с каждым вариантом компилятор как-то по-разному собирает в конечном итоге блоки и глюк не проявляется.
Я не могу отловить причину. Если кто скажет как это исправить - welcome
А пока - только так... Или на другую прошивку.