Adding -std=gnu99 to the CFLAGS does nothing, while using extern inline to the functions, that are throwing the errors, works. -std=gnu89 works with just inline, but adds 4 byte. Sizes differ by a surprising amount, just in case you are interested:
extern inline and -std=gnu89 OR extern inline and -fgnu89-inline
text data bss dec hex filename
0 940 0 940 3ac STAR_smaller.hex
extern inline (same with -std=gnu99 and without)
text data bss dec hex filename
0 952 0 952 3b8 STAR_smaller.hex
-std=gnu89
text data bss dec hex filename
0 956 0 956 3bc STAR_smaller.hex
precompiled
text data bss dec hex filename
0 972 0 972 3cc precompiled.hex
Adding -std=gnu99 to the CFLAGS does nothing, while using extern inline to the functions, that are throwing the errors, works. -std=gnu89 works with just inline, but adds 4 byte. Sizes differ by a surprising amount, just in case you are interested:
extern inline and -std=gnu89 OR extern inline and -fgnu89-inline
text data bss dec hex filename
0 940 0 940 3ac STAR_smaller.hex
extern inline (same with -std=gnu99 and without)
text data bss dec hex filename
0 952 0 952 3b8 STAR_smaller.hex
-std=gnu89
text data bss dec hex filename
0 956 0 956 3bc STAR_smaller.hex
precompiled
text data bss dec hex filename
0 972 0 972 3cc precompiled.hex