tw28007.pp 500 B

1234567891011121314151617181920212223242526272829
  1. program error_record;
  2. type
  3. TPackedBool = bitpacked record
  4. b0: Boolean;
  5. b1: Boolean;
  6. b2: Boolean;
  7. b3: Boolean;
  8. b4: Boolean;
  9. b5: Boolean;
  10. b6: Boolean;
  11. b7: Boolean;
  12. end;
  13. var
  14. B: ByteBool;
  15. PackedBool: TPackedBool;
  16. begin
  17. (*
  18. - OK on x86, x86_64 compiler
  19. - ERROR on cross arm compiler
  20. - OK on cross arm compiler if we do typecast:
  21. B := ByteBool(PackedBool.b0);
  22. *)
  23. B := PackedBool.b0;
  24. end.