Excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
支持以下 Freescale 编译器:
|
Embedded ARM 的 Freescale C/C++ Compiler v. 5.1
- 编译器首字母缩写: cwarm_5_1
- 主机操作系统:Windows
- 不支持 CodeWarrior IDE。
- 支持的练习:静态分析
- 支持级别: Extended
HC12 的 Freescale CodeWarrior ANSI-C/cC++ Compiler 5.0.x
- 编译器首字母缩写: cwhc12_5_0
- 主机操作系统:Windows
- 不支持 CodeWarrior IDE。
- 支持的练习:静态分析
- 支持级别: Extended
FreeScale CodeWarrior ColdFire v 6.0
- 编译器首字母缩写: cwcf_6_0
- 主机操作系统:Windows
- 支持的语言: c89, c99
- 支持的练习:静态分析
- 支持 CodeWarrior IDE(仅限静态分析)
- 支持级别: Standard
其他支持信息
要使用任何受支持的发行版,包含命令行编译器驱动程序可执行文件的目录必须包含在$PATH
环境变量中。
在 C++ 中,非标准的“直接构造函数调用”,例如 BitSet::BitSet(。
。
。)
在以下示例中,不支持:
Code Block |
---|
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 编译器接受这种非标准结构。它在编译器附带的bitset.h
C++ 头文件中使用。无法分析使用该头文件的代码;目前不支持。
Freescale HC(S)12 编译器为带有普通char
参数的函数调用选择带有非普通字符(有符号字符、无符号字符
) 参数的重载函数。不支持。示例:
Code Block |
---|
class istream { istream& get(signed char p); istream& get(unsigned char p) { return get((char)'a'); } }; |
Freescale HC(S)12 编译器接受这种结构。它在编译器附带的iostream.h
C++ 头文件中使用。无法分析使用该头文件的代码;目前不支持。
在 C++ 中,不支持使用多个类型说明符的非标准构造,例如以下示例中的streamsize
int :
Code Block |
---|
class istream { typedef int streamsize; istream& read(streamsize int n); }; |
Freescale HC(S)12 编译器接受这种非标准结构。它在编译器附带的iostream.h
C++ 头文件中使用。无法分析使用该头文件的代码;目前不支持。
在 C++ 中,不支持从 void*
指针类型到其他指针类型的隐式转换。示例:
Code Block |
---|
class ios { int i; }; int vscan(ios* stream = ((void *)0)); |
Freescale HC(S)12 编译器接受这种结构。它在编译器附带的 stream.h
C++ 头文件中使用。无法分析使用该头文件的代码;目前不支持。
不支持内建的long long double
类型。
关于支持级别
扩展: 支持已通过扩展测试进行了验证,并被批准用于对安全关键软件开发。Anchor Extended Extended
标准: 支持已通过标准测试验证,并被批准用于非安全关键软件开发。Anchor Standard Standard