tinline1.pp 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. program inline01;
  2. var
  3. starti: longint;
  4. i:longint;
  5. {$INLINE ON}
  6. procedure kkainl(var c: longint); inline;
  7. begin
  8. if c <> starti then
  9. begin
  10. writeln('bug');
  11. halt(1);
  12. end;
  13. writeln('kka ',c);
  14. c:=c+1;
  15. if i <> starti+1 then
  16. begin
  17. writeln('bug');
  18. halt(1);
  19. end;
  20. end;
  21. procedure kka(var c:longint);
  22. begin
  23. if c <> starti then
  24. begin
  25. writeln('bug');
  26. halt(1);
  27. end;
  28. writeln('kka ',c);
  29. c:=c+1;
  30. if i <> starti+1 then
  31. begin
  32. writeln('bug');
  33. halt(1);
  34. end;
  35. end;
  36. procedure kkb(var c:longint);inline;
  37. begin
  38. if c <> starti then
  39. begin
  40. writeln('bug');
  41. halt(1);
  42. end;
  43. kka(c);
  44. if i <> starti+1 then
  45. begin
  46. writeln('bug');
  47. halt(1);
  48. end;
  49. writeln('kkb ',c);
  50. end;
  51. procedure kkb2(var c:longint);inline;
  52. begin
  53. if c <> starti then
  54. begin
  55. writeln('bug');
  56. halt(1);
  57. end;
  58. kkainl(c);
  59. if i <> starti+1 then
  60. begin
  61. writeln('bug');
  62. halt(1);
  63. end;
  64. writeln('kkb ',c);
  65. end;
  66. procedure kkc(var c: longint);
  67. begin
  68. if c <> starti then
  69. begin
  70. writeln('bug');
  71. halt(1);
  72. end;
  73. kkb(c);
  74. if i <> starti+1 then
  75. begin
  76. writeln('bug');
  77. halt(1);
  78. end;
  79. end;
  80. procedure kkcinl(var c: longint); inline;
  81. begin
  82. if c <> starti then
  83. begin
  84. writeln('bug');
  85. halt(1);
  86. end;
  87. kkb2(c);
  88. if i <> starti+1 then
  89. begin
  90. writeln('bug');
  91. halt(1);
  92. end;
  93. end;
  94. begin
  95. i:=5;
  96. starti := 5;
  97. kkc(i);
  98. starti := i;
  99. kkc(i);
  100. starti := i;
  101. kkb(i);
  102. starti := i;
  103. kkb(i);
  104. starti := i;
  105. kka(i);
  106. starti := i;
  107. kkcinl(i);
  108. starti := i;
  109. kkb2(i);
  110. end.