Merge pull request #3036 from JoshuaRLi/master

[c/en] Fixed and improved compiler flag recommendations
This commit is contained in:
Pratik Karki 2018-02-28 13:54:30 +05:45 committed by GitHub
commit f5951674cb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -8,6 +8,7 @@ contributors:
- ["Marco Scannadinari", "https://marcoms.github.io"]
- ["Zachary Ferguson", "https://github.io/zfergus2"]
- ["himanshu", "https://github.com/himanshu81494"]
- ["Joshua Li", "https://github.com/JoshuaRLi"]
---
Ah, C. Still **the** language of modern high-performance computing.
@ -19,11 +20,12 @@ memory management and C will take you as far as you need to go.
> **About compiler flags**
>
> By default, gcc and clang are pretty quiet about compilation warnings and
> errors, which can be very useful information. Using some
> stricter compiler flags is recommended. Here is an example you can
> tweak to your liking:
> errors, which can be very useful information. Explicitly using stricter
> compiler flags is recommended. Here are some recommended defaults:
>
> `-Wall -Wextra -Werror -O0 -ansi -pedantic -std=c11`
> `-Wall -Wextra -Werror -O2 -std=c99 -pedantic`
>
> For information on what these flags do as well as other flags, consult the man page for your C compiler (e.g. `man 1 gcc`) or just search online.
```c
// Single-line comments start with // - only available in C99 and later.