ufe 5.5
Universal Front End is a DCC-agnostic component that will allow a DCC to browse and edit data in multiple data models
CfgWarningMacros.h File Reference

This file defines the generic exclusion for warnings. More...

Include dependency graph for CfgWarningMacros.h:

Go to the source code of this file.

Macros

#define PEPTIDE_DO_PRAGMA(a)   /* empty */
 Helper defining the various warning macros. More...
 
#define PEPTIDE_WARNING_PUSH
 Warning Push. More...
 
#define PEPTIDE_WARNING_DISABLE(a)
 Warning Disable. More...
 
#define PEPTIDE_WARNING_POP
 Warning Pop. More...
 
#define PEPTIDE_WARNING_PUSH_SYSTEM_HEADER_MSC
 Warning Push System/Library Header. More...
 
#define PEPTIDE_WARNING_POP_SYSTEM_HEADER_MSC
 Warning Pop System/Library Header. More...
 
#define PEPTIDE_WARNING_DISABLE_MSC(a)
 Disable specific warnings on specific compilers. More...
 
#define PEPTIDE_WARNING_DISABLE_CLANG(a)
 Disable specific warnings on specific compilers. More...
 
#define PEPTIDE_WARNING_DISABLE_CLANG_80(a)
 Disable specific warnings on specific compilers. More...
 
#define PEPTIDE_WARNING_DISABLE_GCC(a)
 Disable specific warnings on specific compilers. More...
 

Detailed Description

This file defines the generic exclusion for warnings.

Here's an example of how to use the macros defined in this file:

// Push the current set of warnings.
// Disable this particular warning when compiling using the
// MSC compiler.
/* Code for which we want to disable a particular warning. */
...
// Restore the previous set of warnings.
PEPTIDE_WARNING_POP
#define PEPTIDE_WARNING_DISABLE_MSC(a)
Disable specific warnings on specific compilers.
#define PEPTIDE_WARNING_PUSH
Warning Push.
See also
BaPushLLVMWarnings.h BaPopLLVMWarnings.h

Definition in file CfgWarningMacros.h.

Macro Definition Documentation

◆ PEPTIDE_DO_PRAGMA

#define PEPTIDE_DO_PRAGMA (   a)    /* empty */

Helper defining the various warning macros.

It encapsulates the compiler differences. For gcc and clang, the macro uses the C99 _Pragma() preprocessor directive. It also takes care of stringizing the argument passed to _Pragma(). For MSC, this is using the Microsoft specific __pragma() preprocessor extension.

Definition at line 52 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_DISABLE

#define PEPTIDE_WARNING_DISABLE (   a)

Warning Disable.

This macro should be called within a compiler or OS specific set of warnings, as it does not distinguish which warning identifiers correspond to which compiler. It can be called once for every warning to be disabled.

Assure that any call of this macro is surrounded with a push and pop macro.

Definition at line 88 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_DISABLE_CLANG

#define PEPTIDE_WARNING_DISABLE_CLANG (   a)

Disable specific warnings on specific compilers.

Definition at line 103 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_DISABLE_CLANG_80

#define PEPTIDE_WARNING_DISABLE_CLANG_80 (   a)

Disable specific warnings on specific compilers.

Definition at line 109 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_DISABLE_GCC

#define PEPTIDE_WARNING_DISABLE_GCC (   a)

Disable specific warnings on specific compilers.

Definition at line 115 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_DISABLE_MSC

#define PEPTIDE_WARNING_DISABLE_MSC (   a)

Disable specific warnings on specific compilers.

Definition at line 97 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_POP

#define PEPTIDE_WARNING_POP

Warning Pop.

This will end a selection of disabled warnings, and must match to PEPTIDE_WARNING_PUSH, after a selection (possibly empty) of PEPTIDE_WARNING_DISABLE.

Definition at line 129 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_POP_SYSTEM_HEADER_MSC

#define PEPTIDE_WARNING_POP_SYSTEM_HEADER_MSC

Warning Pop System/Library Header.

This will end a section of disabled warnings, and must match to PEPTIDE_WARNING_PUSH_SYSTEM_HEADER.

Definition at line 157 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_PUSH

#define PEPTIDE_WARNING_PUSH

Warning Push.

This is to be called before a collection of warnings which are to be ignored, and when used should be closed with the PEPTIDE_WARNING_POP.

Any additional compilers that are added to this macro should have an equivalent statement included in the disable and pop macro respectively.

Definition at line 70 of file CfgWarningMacros.h.

◆ PEPTIDE_WARNING_PUSH_SYSTEM_HEADER_MSC

#define PEPTIDE_WARNING_PUSH_SYSTEM_HEADER_MSC

Warning Push System/Library Header.

This is to be called when all warnings should be ignored because we are about to parse a system or a library header. The assumption is that there is nothing that can be done about these, so why bother... When used, it should be closed with a matching PEPTIDE_WARNING_POP_SYSTEM_HEADER_MSC.

Warning
This macros is only implemented for the MSC compiler. The other compilers support system header through command line options. This is well integrated and supported by CMake and this mechanisms should be used instead.

Definition at line 146 of file CfgWarningMacros.h.