expected.tsv 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. # Expected results for tests/fixtures/*.pas - one line per fixture:
  2. #
  3. # <fixture-basename> OK <code> <data>
  4. # <fixture-basename> ERR <tp3-error-no> <relative-pos>
  5. #
  6. # Both the verdict AND the numbers are asserted by run_compile_tests.sh, so a
  7. # regression in the *reported error position* fails the suite just like a
  8. # regression in the generated code. That matters: error positions were once
  9. # silently wrong (a multi-character string literal swallowed the rest of the
  10. # source, so every later error pointed at end-of-file), and nothing caught it
  11. # because the old harness only printed the position for a human to squint at.
  12. #
  13. # Re-baseline deliberately, never to make a red test go green: if a fixture's
  14. # expectation has to change because the compiler legitimately improved, change
  15. # it in the same commit as the fix and say why in the message.
  16. #
  17. # ERR 102 = ENoLib, the original's "not implemented" path. The remaining ERR
  18. # rows are unimplemented features, not parser bugs:
  19. # t14 'array [..] of <type>' at its point of use
  20. # t25 a string literal used where a 16-bit word is wanted
  21. # uierror deliberate syntax error, pinned by the editor UI test
  22. #
  23. # t02 t03 t05 t17 used to be ERR 102 as well: a multi-character literal was
  24. # rejected because writeln had no string support. They compile now, via the
  25. # inline-string path (CALL wrtinl, then <length><chars> in the code stream -
  26. # TPSRC8 pwrinlin / TPSRC4 xwrtinl), so their rows changed from ERR to OK and
  27. # their code sizes went up by the literal's own bytes.
  28. t01_minimal OK 26 260
  29. t02_writeln OK 35 260
  30. t03_inline_comment OK 35 260
  31. t04_var OK 45 262
  32. t05_own_line_comment OK 35 260
  33. t06_two_args OK 49 260
  34. t07_big OK 99 262
  35. t08_const OK 32 262
  36. t09_if OK 64 262
  37. t10_while OK 72 262
  38. t11_for OK 66 262
  39. t12_repeat OK 69 262
  40. t13_proc OK 50 262
  41. t14_types ERR 102 83
  42. t15_label OK 35 262
  43. t16_str1 OK 39 260
  44. t17_two_str OK 42 260
  45. t18_writeln_bare OK 29 260
  46. t19_int1 OK 39 260
  47. t20_str3 OK 59 260
  48. t21_mixed OK 59 260
  49. t22_case OK 93 262
  50. t23_str_empty OK 33 260
  51. t24_str_quote OK 38 260
  52. t25_str_as_value ERR 102 48
  53. t26_str_mixed_args OK 55 260
  54. uierror ERR 41 331