tw0882.pp 774 B

12345678910111213141516171819202122232425262728293031323334
  1. {$D+,E-,I+,L+,P-,Q+,R+,S+,T+,V+,X+,Y+}
  2. {$M 8192,0,655360}
  3. PROGRAM TEST;
  4. CONST
  5. maxBlockSize = 1 SHL 13;
  6. TYPE
  7. byteBlock = ARRAY[0..PRED(maxBlockSize)] OF byte;
  8. VAR
  9. bb0 : ^byteBlock;
  10. TYPE
  11. rec = RECORD i1, len : word END;
  12. VAR
  13. mr : rec;
  14. bw : word;
  15. BEGIN
  16. NEW(bb0);
  17. mr.i1:=0; mr.len:=0;
  18. bb0^[0] := 1;
  19. bb0^[1] := 2;
  20. {$T+}
  21. bw:=word(Addr(bb0^[mr.i1])^);
  22. if bw <> 1 then
  23. halt(1);
  24. {$T-}
  25. bw:=word(Addr(bb0^[mr.i1])^);
  26. {$ifndef ENDIAN_BIG}
  27. if bw <> (2 shl 8 + 1) then
  28. {$else ENDIAN_BIG}
  29. if bw <> (1 shl 8 + 2) then
  30. {$endif ENDIAN_BIG}
  31. halt(1);
  32. END
  33. .