5 ms·
Try passing at least the -Wall and -Wextra flags. For learning, you could also add -ansi, as it will make your compiler be stricter about standards.
by enqk 13y ago
Try passing at least the -Wall and -Wextra flags.
For learning, you could also add -ansi, as it will make your compiler be stricter about standards.
- zokier 13y agoinstead of -ansi, i'd argue that -std=c99 (or -std=c11) would be more appropriate. also note the -pedantic flag.
- e12e 13y agoAnd probably -Werror (all warnings become errors, breaking compilation). Fun post. Now I know why everyone was raving about the clang error-messages: echo "void main() {}" > main.c gcc -Wall -Werror --std=c99 main.c main.c:1:6: error: return type of ‘main’ is not ‘int’ [-Werror=main] cc1: all warnings being treated as errors clang -Wall -Werror --std=c99 main.c main.c:1:1: error: 'main' must return 'int' void main() {} ^ 1 error generated. (not showing clangs pretty colours)
- morganwilde 13y agoNice suggestion. Although I can't seem where one would have to look for those "pretty colours" you mentioned, I certainly can't see any of them on my Mac terminal...
- e12e 13y agoCan't help you there -- but I don't think I've set any exotic terminal variables or anything like that, and I get this: http://i.imgur.com/BjWj7h6.png http://i.imgur.com/BjWj7h6.png FWIW, I have: COLORTERM=gnome-terminal TERM=screen and Debian takes care of my termcap etc, afaik.
- mitchty 13y agoThink its his TERM env most likely being straight xterm (no color ansi escapes in the termcap iirc). http://i.imgur.com/0Hzze9G.png http://i.imgur.com/0Hzze9G.png Thats me on osx running tmux with TERM=xterm-256color.
- dsego 13y ago"-Weverything" if the code is compiling perfectly, but you're just bored. If you're not a complete masochist try turning off some of the sillier ones (-Wno-padded -Wno-unused-parameter -Wno-conversion)