Arene Base
Fundamental Utilities For Safety Critical C++
Loading...
Searching...
No Matches
stdlib_info.hpp File Reference

Go to the source code of this file.

Macro Definition Documentation

◆ ARENE_STDLIB_LIBARENECXX

#define ARENE_STDLIB_LIBARENECXX

A platform support query for testing if the current stdlib is the internal arene_base C++ standard library.

Usage:

#if ARENE_IS_ON(ARENE_STDLIB_LIBARENECXX)

The value of this query is determined as follows, in order of precedence:

  1. If ARENE_STDLIB_LIBARENECXX has been explicitly defined via a -D flag to the compiler or similar:
    • ARENE_ON if it is truthy
    • ARENE_OFF if it is not truthy
  1. If the inclusion of <cstddef> results in detection of internal stdlib defines known to be in that header, it is ARENE_ON_BY_DEFAULT
  1. Otherwise, it is ARENE_OFF_BY_DEFAULT

◆ ARENE_STDLIB_LIBARENECXX_I_

#define ARENE_STDLIB_LIBARENECXX_I_   ARENE_OFF_BY_DEFAULT

◆ ARENE_STDLIB_LIBCXX

#define ARENE_STDLIB_LIBCXX

A platform support query for testing if the current stdlib is libc++ .

Usage:

#if ARENE_IS_ON(ARENE_STDLIB_LIBCXX)

The value of this query is determined as follows, in order of precedence:

  1. If ARENE_STDLIB_LIBCXX has been explicitly defined via a -D flag to the compiler or similar:
    • ARENE_ON if it is truthy
    • ARENE_OFF if it is not truthy
  1. If _LIBCPP_STD_VER is defined it is ARENE_ON_BY_DEFAULT
  1. Otherwise, it is ARENE_OFF_BY_DEFAULT

◆ ARENE_STDLIB_LIBCXX_I_

#define ARENE_STDLIB_LIBCXX_I_   ARENE_OFF_BY_DEFAULT

◆ ARENE_STDLIB_LIBSTDCXX

#define ARENE_STDLIB_LIBSTDCXX

A platform support query for testing if the current stdlib is libstdc++ .

Usage:

#if ARENE_IS_ON(ARENE_STDLIB_LIBSTDCXX)

The value of this query is determined as follows, in order of precedence:

  1. If ARENE_STDLIB_LIBSTDCXX has been explicitly defined via a -D flag to the compiler or similar:
    • ARENE_ON if it is truthy
    • ARENE_OFF if it is not truthy
  1. If __GLIBCXX__ or __GLIBCPP__ are defined it is ARENE_ON_BY_DEFAULT
  1. Otherwise, it is ARENE_OFF_BY_DEFAULT

◆ ARENE_STDLIB_LIBSTDCXX_I_

#define ARENE_STDLIB_LIBSTDCXX_I_   ARENE_OFF_BY_DEFAULT