florian c37cdcf4e8 * Improved output пре 22 година
..
cg cca04655a6 * fxed test for 80x86 пре 22 година
opt 952e80a72f * old logs removed and tabs fixed пре 23 година
units 409e9c5606 * fix loop variable пре 22 година
.cvsignore 47758ec9fc + explicit .cvsignore files added пре 23 година
README f228f4d812 + Added tinivar.pp test пре 22 година
talign.pp 6fa306abd7 * missing mode objfpc added пре 23 година
talign1.pp e8a8374e77 * resource string table simple compilation test пре 23 година
talign2.pp 1c978e95d9 * now check address of tc's also and give error. пре 23 година
tarray1.pp e7d12a5de3 * renamed test suite пре 25 година
tarray2.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tarray3.pp 487408c8da + known problems described пре 22 година
tarray4.pp 487408c8da + known problems described пре 22 година
tasmread.pp 502f7cce52 * fixes for m68k testing пре 24 година
tasout.pp 0f0eedba0a * nasm required note added пре 23 година
tcase1.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tcase2.pp e7d12a5de3 * renamed test suite пре 25 година
tcg1.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tcg2.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tcint64.pp b95509219c * check for negative int64 constants пре 24 година
tclass1.pp a78099a64f * extended the tests with inherited call пре 22 година
tclass2.pp 4aec360876 * fix calling of to1.destroy from to2.destroy пре 22 година
tclass3.pp e7d12a5de3 * renamed test suite пре 25 година
tclass4.pp 697b015e3f * fixed пре 23 година
tclass5.pp b809c662e4 * remove typeof() call on the uninitialized class, because пре 22 година
tclass6.pp 91dfe9bec5 * compile time class check пре 23 година
tclass7.pp a0ab7525d0 * mark tclaa7 as a known problem for v1.0 пре 22 година
tenum1.pp e7d12a5de3 * renamed test suite пре 25 година
testda1.pp 5400c36e4f *** empty log message *** пре 22 година
testmovd.pp 502f7cce52 * fixes for m68k testing пре 24 година
testsse2.pp 0cb666c270 * fix compile problem пре 23 година
testv1.pp 371661e332 * 1.1 only пре 22 година
testv2.pp fa14d04d88 *** empty log message *** пре 22 година
testv3.pp 371661e332 * 1.1 only пре 22 година
testv4.pp 371661e332 * 1.1 only пре 22 година
testv5.pp 371661e332 * 1.1 only пре 22 година
testv6.pp 371661e332 * 1.1 only пре 22 година
testv7.pp 371661e332 * 1.1 only пре 22 година
testv8.pp 371661e332 * 1.1 only пре 22 година
texception1.pp c37cdcf4e8 * Improved output пре 22 година
texception2.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
texception3.pp fa934bd43f * more info on memory holes пре 23 година
texception4.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tfillchr.pp a2dc1e7a9d + fillchar test пре 22 година
tfpu1.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tfpu2.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tfpu3.pp cc47536e71 fsub check enhanced пре 23 година
tfpu4.pp cc47536e71 fsub check enhanced пре 23 година
tfpu5.pp cc47536e71 fsub check enhanced пре 23 година
tfpuover.pp 4a4d7cd40d test for fpu overflow пре 24 година
tgoto.pp e7d12a5de3 * renamed test suite пре 25 година
theap.pp e7d12a5de3 * renamed test suite пре 25 година
thintdir.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
timplprog.pp 6a694bf11f * test should fail now пре 24 година
tinivar.pp 780b31cdb3 + Test for locally initialized variables пре 22 година
tinlin64.pp 42035e7283 + new test for in64 value parameter push inlined пре 24 година
tinline1.pp e7d12a5de3 * renamed test suite пре 25 година
tinline2.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tint641.pp e7d12a5de3 * renamed test suite пре 25 година
tint642.pp 4bf356ab09 * small fixes to tests пре 23 година
tinterface1.pp 8af1cb19ee *** empty log message *** пре 23 година
tinterface2.pp b9a0b3108a * update пре 25 година
tinterface3.pp b9a0b3108a * update пре 25 година
tinterrupt.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tintuint.pp d24fa6492c + catch RTE 201 пре 22 година
tlibrary1.pp 405bc99c16 * renamed tlibrary to tlibrary1 so it'll be compiled before tlibrary2 пре 23 година
tlibrary2.pp 3897bcb765 * avoid failure on dummy test пре 22 година
tmath1.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tmmx1.pp 502f7cce52 * fixes for m68k testing пре 24 година
tmove.pp 41a008a3bc + test for move() procedure пре 22 година
tmt1.pp 1144e7ccce * made the test threadsafe :) пре 23 година
tobject1.pp e7d12a5de3 * renamed test suite пре 25 година
tobject2.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tobject3.pp 6b3159d30e * Return runerror 219 пре 23 година
toperator1.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
toperator2.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
toperator3.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
toperator4.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
toperator5.pp cf6c0a1a54 * ucomplex will be delivered with 1.1 пре 22 година
tover1.pp 1dea3ef6b5 * overloaded string routines testing пре 23 година
tpara1.pp e2719218f8 * several fixes to run also with kylix пре 24 година
tprocvar1.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tprocvar2.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
trange1.pp e2719218f8 * several fixes to run also with kylix пре 24 година
trange2.pp 11ab2b888a * compiles with 1.1 пре 25 година
trange3.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
trange4.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
trange5.pp 6f8c7b37c4 * fix trange5 for big endian machines пре 22 година
tresstr.pp e7d12a5de3 * renamed test suite пре 25 година
trtti1.pp b9a0b3108a * update пре 25 година
trtti2.pp 7aae5f99f1 * runs now with 1.0.x as well пре 24 година
trtti3.pp b9a0b3108a * update пре 25 година
tset1.pp e7d12a5de3 * renamed test suite пре 25 година
tset2.pp 992fe2b52c * test now returns exitcode 1 in case something went wrong пре 22 година
tstack.pp 6f2a3683f8 * check that an infinite recursion generates RTE 202 or at least 216 пре 22 година
tstprocv.pp 010beefd28 * procvar types checks for strings args should be stricter пре 23 година
tstring1.pp e7d12a5de3 * renamed test suite пре 25 година
tstring2.pp e7d12a5de3 * renamed test suite пре 25 година
tstring3.pp e7d12a5de3 * renamed test suite пре 25 година
tstring4.pp 1ba8fd756e * define COMP_IS_INT64 for m68k cpu пре 23 година
tstring5.pp 952e80a72f * old logs removed and tabs fixed пре 23 година
tstring6.pp 221cec9d92 * widestring tests based on the ansistring test program пре 24 година
tstring7.pp 16bd288cae * simple test that failed for m68k пре 24 година
tstrreal1.pp e7d12a5de3 * renamed test suite пре 25 година
tstrreal2.pp e7d12a5de3 * renamed test suite пре 25 година
tsubdecl.pp 375eca81ae + initial version пре 23 година
tunit1.pp 1b28fe0e03 * more type redefining tests пре 24 година
tunit2.pp 093c0c3921 * 1.1 update пре 24 година
tunit3.pp 1b28fe0e03 * more type redefining tests пре 24 година
uimpluni1.pp 7c067cef8a * renamed пре 25 година
uimpluni2.pp 7c067cef8a * renamed пре 25 година
utasout.pp 9c95811fc0 * Renamefest пре 23 година
uunit1.pp 1b28fe0e03 * more type redefining tests пре 24 година
uunit2a.pp 1b28fe0e03 * more type redefining tests пре 24 година
uunit2b.pp 1b28fe0e03 * more type redefining tests пре 24 година
uunit3a.pp 1b28fe0e03 * more type redefining tests пре 24 година
uunit3b.pp 1b28fe0e03 * more type redefining tests пре 24 година
uunit3c.pp 1b28fe0e03 * more type redefining tests пре 24 година

README

This directory contains tests for several parts of the compiler and RTL


--------------------------------------------------------------------
Code generator
--------------------------------------------------------------------
These tests should be considered unitary, as they only verify
simple cases of the code generator. Used for porting to other
architectures. Tries to validate all possible Location types
valid for that node. They are based on tests on these
reference platforms:
Borland Pascal v7.01
Delphi 3.0
Delphi 4.0
Delphi 6.0 Personal Edition

'Natural type' is a signed 32-bit value on 32-bit architectures.
'Natural type' is a signed 64-bit value on 64-bit architectures.


--------------------------------------------------------------------
Compiler
--------------------------------------------------------------------


Shortstrings .......... tstring1.pp compatibility and speed of shortstrings
tstring2.pp some misc. tests mainly collected
from bug reports
tstring3.pp Typed Constant string loading from
other constants
tstring4.pp Ansistring #1
tstring5.pp Ansistring #2
Classes ............... tclass1.pp AfterConstruction
tclass2.pp BeforeDestruction
Objects ............... tobject1.pp Fail in constructor
Exceptions ............ texception1.pp
texception2.pp
texception3.pp
texception4.pp Math exceptions
Procedure Variable .... tprocvar1.pp
tprocvar2.pp
Libraries ............. testlib.pp a very primitive test
Parameter passing ..... tpara1.pp Out Parameter

Units ................. testu1.pp tests init. & finalization and halt
testu2.pp in finalization
testu3.pp a type redefining problem
testu4.pp
testu5.pp
case .................. tcase1.pp tests case statements with byte and word
sized decision variables
tcase2.pp tests case with sub enum types
Arrays ................ tarray1.pp open arrays with classes
tarray2.pp Array of const
tarray3.pp Array of Char #1 (Known bug)
tarray4.pp Array of Char #2 (Known bug)
Enumerations .......... tenum1.pp tests assignments of subrange
enumerations
Codegenerration ....... tcg1.pp i386 pushw
tcg2.pp saveregisters
tinivar.pp initial values for local variables (1.1)
Inline ................ tinline1.pp tests recursive inlining, inlining
a procedure multiple times and
inlining procedures in other
inline procedures.
tinlin64.pp tests for a problem in pushing 64bit parameters
by value.
TypeInfo .............. trtti2.pp test the function system.typeinfo
trtti3.pp tests the procedure system.finalize
Resourcestrings ....... tresstr.pp tests a simple resource string
Range checking ........ trange1.pp range checking when converting int64/
qword to longint/cardinal
trange2.pp range checking when converting
between longint and cardinal
trange3.pp range checking for array
trange4.pp range checking when assigning
values to int64/qword
Floating Point ........ tfpu1.pp
tfpu2.pp
Assembler readers.......tasmread.pp tests for support of unit or program specifier
testmovd.pp testspecial issues about MOVD instruction
tasout.pp tests a problem if a unit is compiled with nasm

--------------------------------------------------------------------
RTL
--------------------------------------------------------------------

SYSTEM
------
str/write(real_type) .. tstrreal1.pp test correct rounding
tstrreal2.pp test correct writing of 10 till 1e-24
Heap .................. theap.pp Heap manager test
input/output .......... /units/system/tiorte.pp tests inoutres values of invalid operations
Random ................ /units/system/trandom.pp tests random (interactive)

DOS
---
General .............. /units/dos/tdos.pp (interactive)
General .............. /units/dos/testdos.pas (interactive)
FExpand .............. /units/dos/tfexpand.pp

CRT
---
General .............. /units/crt/tcrt.pp tests most crt unit functions (interactive)