Serialbox  2.2.0
Data serialization library and tools for C/C++, Python and Fortran
Compiler.h File Reference
#include "serialbox/core/Config.h"
#include <boost/version.hpp>

Go to the source code of this file.

Macros

#define __has_feature(x)   0
 
#define __has_extension(x)   0
 
#define __has_attribute(x)   0
 
#define __has_builtin(x)   0
 
#define SERIALBOX_GNUC_PREREQ(maj, min, patch)   0
 Extend the default __GNUC_PREREQ even if glibc's features.h isn't available. More...
 
#define SERIALBOX_ATTRIBUTE_ALWAYS_INLINE
 Indicate unreachable state. More...
 
#define SERIALBOX_ATTRIBUTE_NORETURN
 Mark a method as "no return". More...
 
#define SERIALBOX_BUILTIN_LIKELY(x)   (x)
 Mark this expression as being likely evaluated to "true". More...
 
#define SERIALBOX_BUILTIN_UNLIKELY(x)   (x)
 Mark this expression as being likely evaluated to "false". More...
 

Detailed Description

This file defines several macros, based on the current compiler. This allows use of compiler-specific features in a way that remains portable.

Definition in file Compiler.h.

Macro Definition Documentation

◆ SERIALBOX_ATTRIBUTE_ALWAYS_INLINE

#define SERIALBOX_ATTRIBUTE_ALWAYS_INLINE

Indicate unreachable state.

SERIALBOX_BUILTIN_UNREACHABLE On compilers which support it, expands to an expression which states that it is undefined behaviour for the compiler to reach this point. Otherwise is not defined. SERIALBOX_ATTRIBUTE_ALWAYS_INLINE Mark a method as "always inline" for performance reasons

Definition at line 92 of file Compiler.h.

◆ SERIALBOX_ATTRIBUTE_NORETURN

#define SERIALBOX_ATTRIBUTE_NORETURN

Mark a method as "no return".

SERIALBOX_ATTRIBUTE_NORETURN

Definition at line 102 of file Compiler.h.

◆ SERIALBOX_BUILTIN_LIKELY

#define SERIALBOX_BUILTIN_LIKELY (   x)    (x)

Mark this expression as being likely evaluated to "true".

SERIALBOX_BUILTIN_LIKELY

Definition at line 110 of file Compiler.h.

◆ SERIALBOX_BUILTIN_UNLIKELY

#define SERIALBOX_BUILTIN_UNLIKELY (   x)    (x)

Mark this expression as being likely evaluated to "false".

SERIALBOX_BUILTIN_UNLIKELY

Definition at line 118 of file Compiler.h.

◆ SERIALBOX_GNUC_PREREQ

#define SERIALBOX_GNUC_PREREQ (   maj,
  min,
  patch 
)    0

Extend the default __GNUC_PREREQ even if glibc's features.h isn't available.

SERIALBOX_GNUC_PREREQ

Definition at line 70 of file Compiler.h.