CoBOT 2.7.3 新增嵌入式支持

作者:彭婷

      COBOT2.7.3新增对嵌入式环境的支持,支持多种嵌入式编译器,用户可选择自己需要的
嵌入式编译器,和自定义相关类型的长度,避免了相关误报。
      随着电子产品功能和性能的提高,高档嵌入式微处理器在电子设计中的作用变得越来越重要。
   
      C语言作为一种通用的高级语言,大幅度提高了嵌入式系统 工程的工作效率,充分发挥出嵌入式处理器日益提高的性 能,缩短产品进入市场时间。另外,C语言便于移植和修改,使产品的升级和继承更迅速。更重要的是采用C语言编写的程 序易于在不同的开发者之间进行交流,从而促进了嵌入式 系统开发的产业化。
      嵌入式环境多种多样,不同的芯片要求不同的编译器,基本类型所具有的位数也各不相同,如果对它们进行统一处理就会造成大量的误报,将真正的错误淹没在误报中,给测试人员和开发人员带来不便。
      COBOT2.7.3通过支持不同的编译环境,提供多种的编译器包括gcc,iker,keil,keil166,keil251,keil166,msvc6,borlan,cosmical,tasking251,TI v7.4.8,MinGW,vs08等。并且提供用户自定义配置基本类型长度,帮助用户配置编译环境,大量减少因嵌入式环境所造成的误报,帮助用户发现真正的bug.
      COBOT2.7.3支持的嵌入式规则如下:

COBOT_10_02 没有使用强制类型转换缩小了整型的范围

COBOT_10_04 潜在扩大了整型的函数返回值的范围

COBOT_10_05 相关类型的值出界

COBOT_10_07 没有使用强制类型转换缩小了浮点型的范围

COBOT_10_09 潜在扩大了浮点型的函数返回值的范围

COBOT_10_24 转换不是相同符号的向更宽整数类型的转换

COBOT_10_32 表达式的值向更窄类型转换

COBOT_12_28 右移丢失了所有的 bits