制御マクロ名 |
説明 |
デフォルト |
_STLP_UINT32_T |
符号無 32ビット整数型。
|
unsigned long |
_STLP_LONG_LONG |
コンパイラが標準以外のlong long 型のみをサポートする場合に定義。
|
Off |
_STLP_NO_WCHAR_T |
コンパイラが wchar_t型を持たない場合に定義。
|
Off |
_STLP_WCHAR_T_IS_USHORT
|
wchar_t がユニークな型でなく unsigned short を typedef していた場合に定義。
|
Off |
_STLP_NO_LONG_DOUBLE |
コンパイラが long double 型をサポートしない場合に定義。
|
Off |
_STLP_NO_TYPENAME |
コンパイラが typename 識別子をサポートしない場合に定義
|
Off |
_STLP_NO_EXPLICIT |
コンパイラが explicit 識別子をサポートしない場合に定義
|
Off |
_STLP_NO_MUTABLE |
コンパイラが mutable 識別子をサポートしない場合に定義
|
Off |
_STLP_NO_NEW_STYLE_CASTS |
コンパイラが新しいスタイルのキャスト(const_cast<>)をサポートしない場合に定義
|
Off |
_STLP_NO_BOOL |
コンパイラが bool をサポートしない場合に定義
|
Off |
_STLP_DONT_USE_BOOL_TYPEDEF |
コンパイラが bool をサポートしないが将来のため予約語になっている(typedef出来ない)場合に定義
|
Off |
_STLP_YVALS_H |
true/false が定義される <yvals.h> ヘッダを使う場合に定義。 (Visual C++ 4.2)
|
Off |
_STLP_DEFAULT_TEMPLATE_PARAM |
コンパイラがデフォルトtemplateパラメータをサポートしない場合に定義。
訳注:STLport 5.2.1ではすでに存在しない
|
Off |
_STLP_DEFAULT_TYPE_PARAM |
コンパイラがデフォルトパラメータとして、完全型しかサポートしていない場合に定義。
|
Off |
_STLP_LIMITED_DEFAULT_TEMPLATES |
コンパイラが非型のデフォルトテンプレートパラメータを扱えない場合に定義
|
Off |
_STLP_NON_TYPE_TMPL_PARAM_BUG |
コンパイラが 非型のテンプレートパラメータを持つ関数でトラブルがある場合に定義。
|
Off |
_STLP_NO_STATIC_TEMPLATE_DATA |
コンパイラが static な class データのtemplate定義をサポートしない場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_STATIC_CONST_INIT_BUG |
コンパイラが class 内の static のclassデータtemplate なメンバーの初期化をサポートしない場合に定義。
|
Off |
_STLP_WEAK_ATTRIBUTE |
コンパイラが __attribute((weak))__ を扱える場合に拡張してコンストラクトする。
(gcc 2.7.2 のように) static なテンプレートデータメンバーを扱えない場合に必要となる。
訳注:STLport 5.2.1ではすでに存在しない
| Off |
_STLP_HAS_NO_NAMESPACES |
コンパイラが名前空間をサポートしない場合に定義
|
Off |
_STLP_BROKEN_USING_DIRECTIVE
|
"using" キーワードが template 型で使えない場合に定義
|
Off |
_STLP_HAS_NO_EXCEPTIONS |
コンパイラが 例外処理を扱えない場合に定義。
|
Off |
_STLP_NO_EXCEPTION_SPEC |
コンパイラが例外の仕様をサポートしない場合に定義
|
Off |
_STLP_THROW_RETURN_BUG
|
throw() のあとに return 文が必要なコンパイラの場合に定義
|
Off |
_STLP_NO_BAD_ALLOC |
ヘッダ <new> で bad_alloc 例外が定義されていないコンパイラの場合に定義。
|
Off |
_STLP_NO_MEMBER_TEMPLATES |
コンパイラがメンバー(関数)テンプレートをサポートしない場合に定義。
|
Off |
_STLP_NO_MEMBER_TEMPLATE_CLASSES |
コンパイラがメンバー クラス テンプレートをサポートしない場合に定義。
|
Off |
_STLP_NO_FRIEND_TEMPLATES |
コンパイラが firend テンプレートをサポートしない場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_NO_QUALIFIED_FRIENDS |
コンパイラが namespace名付の frend 宣言を受け付けない場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_NO_CLASS_PARTIAL_SPECIALIZATION |
コンパイラがクラステンプレートの部分特殊化をサポートしない場合に定義。
|
Off |
_STLP_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS
|
部分的に特化しているクラスには、メソッド宣言に自身のフルネーム(テンプレートパラメータ)が必要
|
Off |
_STLP_PARTIAL_SPECIALIZATION_BUG |
部分特殊化で新しいスタイルのreverse_iteratorを使うときにバグになる場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_MEMBER_SPECIALIZATION_BUG |
コンパイラが部分特殊化クラスのメンバーに固有のバグを保つ場合に定義。
訳注:v5.2.1で#defineは残っているがそれを参照しているものがない
|
Off |
_STLP_NO_METHOD_SPECIALIZATION |
コンパイラが 単一のテンプレートメソッドの特殊化をサポートしていない場合に定義。
|
Off |
_STLP_NO_FUNC_PARTIAL_ORDERING |
コンパイラが部分テンプレート関数の順序をサポートしていない場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off
|
_STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX |
コンパイラがテンプレートの特殊化の文法をサポートしない場合に定義
|
Off |
_STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS
|
コンパイラが関数の明示的なテンプレート引数をサポートしない場合に定義
|
Off |
_STLP_AUTOMATIC_TYPE_TRAITS |
コンパイラが あらゆる型のために予め特殊化したクラス type_traits<T>を用意してある場合に定義。
これは拡張機能。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_LOOP_INLINE_PROBLEMS |
コンパイラが while(), for() 含むinline関数をコンパイル出来ない場合に定義。
|
Off |
_STLP_BASE_MATCH_BUG |
コンパイラが基本型のテンプレート関数引数でマッチに失敗する場合に定義
|
Off |
_STLP_NONTEMPL_BASE_MATCH_BUG |
コンパイラが (非テンプレートの)ベース型のテンプレート関数引数のマッチに失敗する場合に定義。
|
Off |
_STLP_NESTED_TYPE_PARAM_BUG |
コンパイラが メソット定義の外観部(引数型や返値型)でclassをネストした型やtypedef名を明示して使うのを拒否する場合に定義。
|
Off |
_STLP_TYPENAME_ON_RETURN_TYPE |
コンパイラが メソット定義の外観部(引数型や返値型)でclassをネストした型やtypedef名を明示して使うのにキーワードtypenameを必要とする場合に定義。
|
Off |
_STLP_BASE_TYPEDEF_BUG |
コンパイラが typedef に深刻な問題をもつ場合に定義
|
Off |
_STLP_BASE_TYPEDEF_OUTSIDE_BUG |
ベースclassのtypedef名が外から見えない場合に定義
訳注:v5.2.1で#defineは残っているがそれを参照しているものがない
|
Off |
_STLP_MEMBER_POINTER_PARAM_BUG |
コンパイラが、関数引数としてメンバーへのポインタを扱えない場合に定義。
|
Off |
_STLP_UNINITIALIZABLE_PRIVATE |
コンパイラが、staticなpriavateデーターメンバーの初期化に問題がある場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_STATIC_ARRAY_BUG |
コンパイラが、enumで定義された要素数でのstaticな配列メンバーの具現化にトラブルが有る場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_DEFAULT_CONSTRUCTOR_BUG |
コンパイラが、組み込みの 整数型のデフォルトコンストラクタで0への初期化ができない場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_CONST_CONSTRUCTOR_BUG |
コンパイラが、constオブジェクトでメンバーのデフォルトコンストラクタの呼び出しに失敗する場合に定義。
|
Off |
_STLP_TRIVIAL_CONSTRUCTOR_BUG |
コンパイラが、POD型のコンストラクタの呼び出しにトラブルがある場合に定義
|
Off |
_STLP_TRIVIAL_DESTRUCTOR_BUG |
コンパイラが、POD型のデストラクタの呼び出しにトラブルがある場合に定義
|
Off |
_STLP_MULTI_CONST_TEMPLATE_ARG_BUG |
map/set でconstにされているキーの型に特化した問題
|
Off |
_STLP_NO_ARROW_OPERATOR
__SGI_STL_NO_ARROW_OPERATOR |
SGI 製 iterator の -> operator の使用をやめる。
プロキシ回避策として用意。
|
Off |
_STLP_NO_AT_MEMBER_FUNCTION |
コンテナのメンバー関数 at() を使えなくする。
訳注:v5.2.1では、at(n)自体は存在し例外を投げなくなっている。
|
Off |
_STLP_HAS_NO_NEW_IOSTREAMS |
ネイティブ(コンパイラ付属)のC++ライブラリが template実装された新しいスタイルの iostreams を提供していない場合に定義。
訳注:v5.2.1ではすでに存在しない
|
Off |
_STLP_NO_EXCEPTION_HEADER |
<exception> ヘッダが欠乏しているコンパイラの場合に定義
|
Off |
_STLP_HAS_NO_NEW_C_HEADERS |
ネイティブ(コンパイラ付属)のC++ライブラリが <cstddef> のような新しいスタイルのCヘッダを持たず、
<stddef.h> のような古いスタイルのものしか持っていない場合に定義。
|
Off |
_STLP_NO_NEW_NEW_HEADER |
ネイティブ(コンパイラ付属)のC++ライブラリが 新しいスタイルの <new> ヘッダを持っていない場合に定義。
|
Off |
_STLP_VENDOR_GLOBAL_STD |
コンパイラが提供するC++標準ライブラリが置かれる名前空間が std:: でなくグローバルの名前空間を使う場合に定義。
|
std:: |
_STLP_VENDOR_GLOBAL_CSTD |
コンパイラが提供するC標準ライブラリが置かれる名前空間が std:: でなくグローバルの名前空間を使う場合に定義。
|
Off |
_STLP_RAND48 |
Cライブラリに関数 lrand48() がある場合に定義。
|
Off |
_STLP_NATIVE_INCLUDE_PATH
|
ネイティブ(コンパイラ付属)ヘッダが置かれているパス。
相対パスか絶対パスで指定。
STLport は _STL:: 名前空間に std:: の名前をインポートするのにこの情報を使う。
デフォルトは ../include。
ヒント: include で終わるディレクトリに STLport を絶対にインストールしないこと。
|
../include |
_STLP_NATIVE_C_INCLUDE_PATH
|
ネイティブ(コンパイラ付属)の stdio.hのようなCヘッダが置かれているパス。
相対パスか絶対パスで指定。
|
../include |
_STLP_NATIVE_CPP_C_INCLUDE_PATH
|
ネイティブ(コンパイラ付属)の cstdioのような新しいスタイルのCヘッダが置かれているパス。
相対パスか絶対パスで指定。
|
../include |
_STLP_MAKE_HEADER |
このマクロは ディレクトリと名前でヘッダパスを作る。
コンパイラが "/" を理解しない場合、マクロの変更が必要。
|
<path/header> |
_STLP_NATIVE_HEADER(header)
|
このマクロは ネイティブパスから header ファイルを include ためにある。
プリプロセッサに問題がある場合はマクロを修正すること。
|
See stl_config.h |
_STLP_NATIVE_C_HEADER(header)
|
古いスタイルのCヘッダ用ということ以外は _STLP_NATIVE_HEADER(header)に同じ。
|
See stl_config.h |
_STLP_NATIVE_CPP_C_HEADER(header)
|
新しいいスタイルのCヘッダ用ということ以外は _STLP_NATIVE_HEADER(header) に同じ。
|
See stl_config.h |
_STLP_LINK_TIME_INSTANTIATION |
コンパイラが、templateの分割コンパイル・モデルをサポートしていて 非inline関数やメソッドの実装を .c ファイルに置けるような場合に定義。
|
Off |