支持以下 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(。。)在以下示例中,不支持:

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 参数的函数调用选择带有非普通字符(有符号字符、无符号字符) 参数的重载函数。不支持。示例:

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 :

class istream {
  typedef int streamsize; 
  istream& read(streamsize int n);
              };

Freescale HC(S)12 编译器接受这种非标准结构。它在编译器附带的iostream.h C++ 头文件中使用。无法分析使用该头文件的代码;目前不支持。

在 C++ 中,不支持从 void* 指针类型到其他指针类型的隐式转换。示例:

 class ios {
    int i;
           };
 int vscan(ios* stream = ((void *)0));

Freescale HC(S)12 编译器接受这种结构。它在编译器附带的 stream.h C++ 头文件中使用。无法分析使用该头文件的代码;目前不支持。

不支持内建的long long double 类型。


关于支持级别

  • 扩展: 支持已通过扩展测试进行了验证,并被批准用于对安全关键软件开发。
  • 标准: 支持已通过标准测试验证,并被批准用于非安全关键软件开发。
  • No labels