C++ では、非標準の「コンストラクターの直接呼び出し」はサポートされません。たとえば以下のサンプル コードの
BitSet::BitSet(. . .)
などです。class BitSet { protected: enum BS_op { BS_and = (int) '&', BS_or = (int) '|', }; BitSet(const BitSet& x, const BitSet& y, enum BS_op op); friend BitSet operator & (const BitSet& x, const BitSet& y); }; BitSet operator & (const BitSet& x, const BitSet& y) { return BitSet::BitSet(x, y, BitSet::BS_and); }
Freescale HC(S)12 コンパイラは、この非標準の構造を許容します。この構造は、Freescale HC(S)12 コンパイラに付属する C++ ヘッダー ファイルbitset.h
で使用されます。このヘッダー ファイルを使用するコードは解析できません。現在のところサポートされません。Freescale HC(S)12 コンパイラは、単なる char の引数を持つ関数呼び出しに対して、
signed char
またはunsigned char
パラメーターを持つ、オーバーロードされた関数を選択します。これはサポートされません。class istream { istream& get(signed char p); istream& get(unsigned char p) { return get((char)'a'); } };
Freescale HC(S)12 はこの構造を許容します。この構造は、Freescale HC(S)12 コンパイラに付属するiostream.h
C++ ヘッダー ファイルで使用されます。 このヘッダー ファイルを使用するコードは解析できません。現在のところサポートされません。C++ では、たとえば以下の
streamsize
int のように、複数の型指定子を使用する非標準の構造はサポートされません。class istream { typedef int streamsize; istream& read(streamsize int n); };
Freescale HC(S)12 コンパイラは、この非標準の構造を許容します。この構造は、Freescale HC(S)12 コンパイラに付属するiostream.h
C++ ヘッダー ファイルで使用されます。このヘッダー ファイルを使用するコードは解析できません。現在のところサポートされていません。C++ では、
void*
ポインター型から他のポインター型への暗黙的な変換はサポートされません。例:class ios { int i; }; int vscan(ios* stream = ((void *)0));
Freescale HC(S)12 コンパイラは、この構造を許容します。この構造は、Freescale HC(S)12 コンパイラに付属するstream.h
C++ ヘッダー ファイルで使用されます。このヘッダー ファイルを使用するコードは解析できません。現在のところサポートされていません。- ビルトインの
long long double
型はサポートされません。
Overview
Content Tools