CertC-PREΒΆ

Preprocessor

Nested Rules

CertC-PRE00

Prefer inline or static functions to function-like macros

CertC-PRE01

Use parentheses within macros around parameter names

CertC-PRE02

Macro replacement lists should be parenthesized

CertC-PRE03

Prefer typedefs to defines for encoding non-pointer types

CertC-PRE04

Do not reuse a standard header file name

CertC-PRE05

Understand macro replacement when concatenating tokens or performing stringification

CertC-PRE06

Enclose header files in an include guard

CertC-PRE07

Avoid using repeated question marks

CertC-PRE08

Guarantee that header file names are unique

CertC-PRE09

Do not replace secure functions with deprecated or obsolescent functions

CertC-PRE10

Wrap multistatement macros in a do-while loop

CertC-PRE11

Do not conclude macro definitions with a semicolon

CertC-PRE12

Do not define unsafe macros

CertC-PRE13

Use the Standard predefined macros to test for versions and features

CertC-PRE30

Do not create a universal character name through concatenation

CertC-PRE31

Avoid side effects in arguments to unsafe macros

CertC-PRE32

Do not use preprocessor directives in invocations of function-like macros

Options