tbs0213a.pp 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. { different tests for the problem of local
  2. functions having the same name }
  3. unit tbs0213a;
  4. interface
  5. PROCEDURE Testsomething(VAR A:LONGINT);
  6. PROCEDURE Testsomething(VAR A:WORD);
  7. implementation
  8. PROCEDURE Testsomething(VAR A:LONGINT);
  9. FUNCTION Internaltest(L:LONGINT):LONGINT;
  10. BEGIN
  11. InternalTest:=L+10;
  12. END;
  13. BEGIN
  14. A:=Internaltest(20)+5;
  15. END;
  16. PROCEDURE Testsomething(VAR A:WORD);
  17. FUNCTION Internaltest(L:LONGINT):WORD;
  18. BEGIN
  19. InternalTest:=L+15;
  20. END;
  21. BEGIN
  22. A:=Internaltest(20)+5;
  23. END;
  24. PROCEDURE Testsomething2(VAR A:LONGINT);
  25. FUNCTION Internaltest(L:LONGINT):LONGINT;
  26. BEGIN
  27. InternalTest:=L+10;
  28. END;
  29. BEGIN
  30. A:=Internaltest(20)+5;
  31. END;
  32. PROCEDURE Testsomething2(VAR A:WORD);
  33. FUNCTION Internaltest(L:LONGINT):WORD;
  34. BEGIN
  35. InternalTest:=L+15;
  36. END;
  37. BEGIN
  38. A:=Internaltest(20)+5;
  39. END;
  40. PROCEDURE Testsomething3(VAR A:WORD);forward;
  41. PROCEDURE Testsomething3(VAR A:LONGINT);
  42. FUNCTION Internaltest(L:LONGINT):LONGINT;
  43. BEGIN
  44. InternalTest:=L+10;
  45. END;
  46. BEGIN
  47. A:=Internaltest(20)+5;
  48. END;
  49. PROCEDURE Testsomething3(VAR A:WORD);
  50. FUNCTION Internaltest(L:LONGINT):WORD;
  51. BEGIN
  52. InternalTest:=L+15;
  53. END;
  54. BEGIN
  55. A:=Internaltest(20)+5;
  56. END;
  57. VAR O : LONGINT;
  58. O2 : WORD;
  59. BEGIN
  60. TestSomething(O);
  61. TestSomething(O2);
  62. END.