我已经为所有记录类型添加了表示形式(rep)子句,这些子句将通过消息发送到另一个处理器。这是另一种CPU制造商,编译器和编程语言,因此存在未对齐/错误解释的危险。
很显然,type XXX is record
要求for XXX use
的每个字段都具有适当的字节和位数据。
type null_record is null record;
呢?
for null_record use
null;
end record;
不编译,似乎没有任何意义。
老板正在争取使用'size
,'alignment
'Object_size
,Value_size
和pragma pack
的100%rep子句,但是对于空记录吗?
答案 0 :(得分:6)
对于所有组件,如果record representation clause
强制component clause
,则是有意义的。在那种情况下,编译器将检测到record definition
的任何更改,因此也迫使您查看representation clause
。 当然不是这样,所以您是对的,没有太大意义。
但是,如果老板真的坚持,正确的语法是:
for null_record use
record
end record;