TI中文支持网
TI专业的中文技术问题搜集分享网站

C6000 8.2.3版本之后的编译器使用堆大于512M时编译报错

工程原来使用cgt c6000 8.2.2之前版本一直编译正常,最近安装了cgt c6000 8.2.3后,编译报错,描述为:

Object size 671088640 byte is greater than maximum supported size 536870911 bytes

之后试用8.2.4和8.3.0均会有同样问题,好像是堆大小被限制在512M字节了!!!

Shine:

这个是CGT的bug,请参考下面的帖子。
e2e.ti.com/…/886334

xian ping:

程序中使用了deque,析构时出现崩溃现象,查源码发现C6000 8.3版本修改了deque实现(请自行查看源代码),其中deque析构时调用的clear方法中,释放资源时对迭代器使用了++操作,典型的迭代器失效案例,这是数据结构中的基本常识,每个合格的程序员都应该具备的基本素质!在基础库中竟然出如此低级的编程思想错误,在此对TI的程序员素质表示严重怀疑,请给予重视!TI作为大企业,竟然没有对新修改的标准库这样的产品进行测试就发布,难道没有测试团队?那单元测试也没有?这在单元测试阶段就能发现的简单错误,竟然还能通过后续的系统和集成错误?另人匪夷所思!!!

xian ping:

回复 Shine:

既然已经发现了这么久的Bug,而且已经过了几个版本,怎么只是报另一个错误,让人去规避这样的用法,而不是解决此问题,至少也应该在报错时直接描述不能直接设置堆大于256M吧!

赞(0)
未经允许不得转载:TI中文支持网 » C6000 8.2.3版本之后的编译器使用堆大于512M时编译报错
分享到: 更多 (0)