我已经为所有记录类型添加了表示形式(rep)子句,这些子句将通过消息发送到另一个处理器。它是不同的CPU制造商,编译器和编程语言,因此存在未对齐/错误解释的危险。
显然,对于每个字段都type XXX is record需要for XXX use具有适当的字节和位数据。
那type null_record is null record;呢
for null_record use
null;
end record;
Run Code Online (Sandbox Code Playgroud)
不会编译,而且似乎没有任何意义。
老板正在推动100%代表条款,有'size,'alignment 'Object_size,Value_size和pragma pack,但肯定是没有意义的空记录?
如果对所有组件都record representation clause强制使用a component clause,那将是有道理的。在这种情况下,编译器将检测到的任何更改record definition,从而迫使您也查看representation clause。当然,事实并非如此,所以您是对的,这没有多大意义。
但是,如果老板真的坚持,正确的语法是:
for null_record use
record
end record;
Run Code Online (Sandbox Code Playgroud)