Modify some macros so they evaluate to single statement
Require macros to be followed with semicolon, empty version expands to dummy statement. Fixes dangling-else problem: ``` if(1) INVERTER_ON; else INVERTER_OFF; ```
This commit is contained in:
parent
f9f40fb98f
commit
fd355caca6
|
@ -18,11 +18,11 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#ifdef INVERTER
|
#ifdef INVERTER
|
||||||
#define INVERTER_OFF digitalLo(INVERTER_GPIO, INVERTER_PIN);
|
#define INVERTER_OFF digitalLo(INVERTER_GPIO, INVERTER_PIN)
|
||||||
#define INVERTER_ON digitalHi(INVERTER_GPIO, INVERTER_PIN);
|
#define INVERTER_ON digitalHi(INVERTER_GPIO, INVERTER_PIN)
|
||||||
#else
|
#else
|
||||||
#define INVERTER_OFF ;
|
#define INVERTER_OFF do {} while(0)
|
||||||
#define INVERTER_ON ;
|
#define INVERTER_ON do {} while(0)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void initInverter(void);
|
void initInverter(void);
|
||||||
|
|
|
@ -19,49 +19,49 @@
|
||||||
|
|
||||||
// Helpful macros
|
// Helpful macros
|
||||||
#ifdef LED0
|
#ifdef LED0
|
||||||
#define LED0_TOGGLE digitalToggle(LED0_GPIO, LED0_PIN);
|
#define LED0_TOGGLE digitalToggle(LED0_GPIO, LED0_PIN)
|
||||||
#ifndef LED0_INVERTED
|
#ifndef LED0_INVERTED
|
||||||
#define LED0_OFF digitalHi(LED0_GPIO, LED0_PIN);
|
#define LED0_OFF digitalHi(LED0_GPIO, LED0_PIN)
|
||||||
#define LED0_ON digitalLo(LED0_GPIO, LED0_PIN);
|
#define LED0_ON digitalLo(LED0_GPIO, LED0_PIN)
|
||||||
#else
|
#else
|
||||||
#define LED0_OFF digitalLo(LED0_GPIO, LED0_PIN);
|
#define LED0_OFF digitalLo(LED0_GPIO, LED0_PIN)
|
||||||
#define LED0_ON digitalHi(LED0_GPIO, LED0_PIN);
|
#define LED0_ON digitalHi(LED0_GPIO, LED0_PIN)
|
||||||
#endif // inverted
|
#endif // inverted
|
||||||
#else
|
#else
|
||||||
#define LED0_TOGGLE
|
#define LED0_TOGGLE do {} while(0)
|
||||||
#define LED0_OFF
|
#define LED0_OFF do {} while(0)
|
||||||
#define LED0_ON
|
#define LED0_ON do {} while(0)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef LED1
|
#ifdef LED1
|
||||||
#define LED1_TOGGLE digitalToggle(LED1_GPIO, LED1_PIN);
|
#define LED1_TOGGLE digitalToggle(LED1_GPIO, LED1_PIN)
|
||||||
#ifndef LED1_INVERTED
|
#ifndef LED1_INVERTED
|
||||||
#define LED1_OFF digitalHi(LED1_GPIO, LED1_PIN);
|
#define LED1_OFF digitalHi(LED1_GPIO, LED1_PIN)
|
||||||
#define LED1_ON digitalLo(LED1_GPIO, LED1_PIN);
|
#define LED1_ON digitalLo(LED1_GPIO, LED1_PIN)
|
||||||
#else
|
#else
|
||||||
#define LED1_OFF digitalLo(LED1_GPIO, LED1_PIN);
|
#define LED1_OFF digitalLo(LED1_GPIO, LED1_PIN)
|
||||||
#define LED1_ON digitalHi(LED1_GPIO, LED1_PIN);
|
#define LED1_ON digitalHi(LED1_GPIO, LED1_PIN)
|
||||||
#endif // inverted
|
#endif // inverted
|
||||||
#else
|
#else
|
||||||
#define LED1_TOGGLE
|
#define LED1_TOGGLE do {} while(0)
|
||||||
#define LED1_OFF
|
#define LED1_OFF do {} while(0)
|
||||||
#define LED1_ON
|
#define LED1_ON do {} while(0)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef LED2
|
#ifdef LED2
|
||||||
#define LED2_TOGGLE digitalToggle(LED2_GPIO, LED2_PIN);
|
#define LED2_TOGGLE digitalToggle(LED2_GPIO, LED2_PIN)
|
||||||
#ifndef LED2_INVERTED
|
#ifndef LED2_INVERTED
|
||||||
#define LED2_OFF digitalHi(LED2_GPIO, LED2_PIN);
|
#define LED2_OFF digitalHi(LED2_GPIO, LED2_PIN)
|
||||||
#define LED2_ON digitalLo(LED2_GPIO, LED2_PIN);
|
#define LED2_ON digitalLo(LED2_GPIO, LED2_PIN)
|
||||||
#else
|
#else
|
||||||
#define LED2_OFF digitalLo(LED2_GPIO, LED2_PIN);
|
#define LED2_OFF digitalLo(LED2_GPIO, LED2_PIN)
|
||||||
#define LED2_ON digitalHi(LED2_GPIO, LED2_PIN);
|
#define LED2_ON digitalHi(LED2_GPIO, LED2_PIN)
|
||||||
#endif // inverted
|
#endif // inverted
|
||||||
#else
|
#else
|
||||||
#define LED2_TOGGLE
|
#define LED2_TOGGLE do {} while(0)
|
||||||
#define LED2_OFF
|
#define LED2_OFF do {} while(0)
|
||||||
#define LED2_ON
|
#define LED2_ON do {} while(0)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void ledInit(void);
|
void ledInit(void);
|
||||||
|
|
Loading…
Reference in New Issue