This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 编译器:分段故障

Guru**** 2536600 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/570860/compiler-segmentation-fault

工具/软件:TI C/C++编译器

您好,

只是想告诉你。

如果您尝试编译以下代码:

struct XXX {
unsigned short m1;
unsigned short m2;

union {
struct {
	unsigned short data[];}
raw;

struct {
		unsigned int data[];}
_u16;

struct { unsigned long
	 data[];}
_u32;


	



	
	
} unsigned t {_long data;} unsigned u64; struct { struct { struct short mX; insigned int my; insigned int my; _s3;

} uuuuu;

} xxx;

编译器可能会报告以下错误:

内部错误:16.9 C:\ti\ccsv7\tools\compiler\ti-CGT-MSP430_MSP40.0.LTS\bin\acpia430.exe遇到分段故障
处理函数(未知或文件范围)文件(未知)第0行时

,这是由编译器本身的缺陷引起的。 TI客户
支持部门可能会建议一种解决方法来避免这种情况。

升级到最新版本的编译器可以解决此问题。

在 http://e2e.ti.com上 的E2E支持论坛中,在
“开发工具”,“TI C/C++编译器”下联系TI。 请参阅标题为
"提交问题"的链接。 包括整个错误消息和

使用选项--preproc_with注释(-pPC)时创建的.pp文件的副本。 

要修复它,您必须定义数组的长度,例如:

struct XXX {
unsigned short m1;
unsigned short m2;

union {
struct {
	unsigned short data[8];
} raw;

struct {
		unsigned int data[4];
}_u16;


	{ unsigned long data[2];
}_u32;

struct {
	unsigned long long data;
}_u64;

struct {
	unsigned short;
	insigned int my;mx
} _s3;

} uuuuu;

} xxx; 

此致,
执行部分

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很抱歉,我无法再现。 请向我们展示构建此文件时使用的完整命令行选项以及文件名。 请从生成控制台窗口剪切并粘贴编译命令。