![]() |
|
|||
File indexing completed on 2025-09-13 09:06:17
0001 // Copyright (C) 2025 The Qt Company Ltd. 0002 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only 0003 0004 #if 0 0005 #pragma qt_class(QtStdLibDetection) 0006 #pragma qt_sync_skip_header_check 0007 #pragma qt_sync_stop_processing 0008 #endif 0009 0010 #ifndef QSTDLIBDETECTION_H 0011 #define QSTDLIBDETECTION_H 0012 0013 #include <QtCore/qtconfiginclude.h> 0014 0015 #ifdef __cplusplus 0016 0017 /* If <version> exists, qtconfiginclude.h will have included it. */ 0018 /* If not, we need to include _something_, and <utility> is included by qcompilerdetection.h, too */ 0019 #if !__has_include(<version>) 0020 # include <utility> 0021 #endif 0022 0023 /* 0024 The std lib, must be one of: (Q_STL_x) 0025 0026 LIBCPP - libc++ (shipped with Clang, e.g.) 0027 LIBSTDCPP - libstdc++ (shipped with GCC, e.g.) 0028 MSSTL - Microsoft STL 0029 DINKUMWARE - Dinkumware (shipped with QNX, VxWorks, Integrity, origin of MSSTL) 0030 STLPORT - STLport (merged with SGI) 0031 SGI - The original STL 0032 ROGUEWAVE - RogueWave ((used to be) popular on ARM?) 0033 0034 Not included: 0035 EASTL - EASTL (this is not a drop-in STL, e.g. it doesn't have <vector>-style headers) 0036 0037 Should be sorted most to least authoritative. 0038 */ 0039 0040 #if defined(_LIBCPP_VERSION) /* libc++ */ 0041 # define Q_STL_LIBCPP 0042 #elif defined(_GLIBCXX_RELEASE) /* libstdc++ */ 0043 # define Q_STL_LIBSTDCPP 0044 #elif defined(_MSVC_STL_VERSION) /* MSSTL (must be before Dinkumware) */ 0045 # define Q_STL_MSSTL 0046 #elif defined(_YVALS) || defined(_CPPLIB_VER) /* Dinkumware */ 0047 # define Q_STL_DINKUMWARE 0048 #elif defined(_STLPORT_VERSION) /* STLport, cf. _stlport_version.h */ 0049 # define Q_STL_STLPORT 0050 #elif defined(__SGI_STL) /* must be after STLport, which mimics as SGI STL */ 0051 # define Q_STL_SGI 0052 #elif defined(_RWSTD_VER) /* RogueWave, at least as contributed to Apache stdcxx, cf. rw/_config.h */ 0053 # define Q_STL_ROGUEWAVE 0054 #else 0055 # error Unknown std library implementation, please file a report at bugreports.qt.io. 0056 #endif 0057 0058 #endif // __cplusplus 0059 0060 #endif // QSTDLIBDETECTION_H
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |