peter d7f23a530a Merged revisions 569,602,604-605,609 via svnmerge from 20 лет назад
..
cg b39e336430 Merged revisions 371 via svnmerge from 20 лет назад
opt b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
units d7f23a530a Merged revisions 569,602,604-605,609 via svnmerge from 20 лет назад
README d3e1891eea + added submitter, machine and comment field to sql version 22 лет назад
dumpclass.pp e9676f56b8 no message 21 лет назад
dumpmethods.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tabstrcl.pp 0b79e441ab + test for published class with abstract methods 21 лет назад
talign.pp e417e34496 * truncate log 21 лет назад
talign1.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
talign2.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tarray1.pp e7d12a5de3 * renamed test suite 25 лет назад
tarray2.pp 952e80a72f * old logs removed and tabs fixed 23 лет назад
tarray3.pp 487408c8da + known problems described 23 лет назад
tarray4.pp 487408c8da + known problems described 23 лет назад
tarray5.pp f5f187f3a9 * check for array size 21 лет назад
tarray6.pp a684ebf7f8 * adjustment to target macos 21 лет назад
tasmread.pp 5953d974c2 *** empty log message *** 21 лет назад
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 лет назад
tcint64.pp e417e34496 * truncate log 21 лет назад
tclass1.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tclass2.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tclass3.pp e7d12a5de3 * renamed test suite 25 лет назад
tclass4.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tclass5.pp bbb08436c5 * memavail fixes 21 лет назад
tclass6.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tclass7.pp 6939e0e4d4 * removed knowncompilererror10 22 лет назад
tclass8.pp ea6715c207 * methodtable test 21 лет назад
tclrprop.pp dacdc8c38f + test for publishing classref properties 21 лет назад
tenum1.pp e7d12a5de3 * renamed test suite 25 лет назад
testcmem.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
testda1.pp e417e34496 * truncate log 21 лет назад
testfpuc.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
testmovd.pp e7b757fb32 * mmx is 1.0.x only 22 лет назад
tests.pp 8f41503f9f no message 22 лет назад
testsse2.pp 645310a071 * restrict to i386 22 лет назад
testv1.pp e417e34496 * truncate log 21 лет назад
testv2.pp fa14d04d88 *** empty log message *** 23 лет назад
testv3.pp e417e34496 * truncate log 21 лет назад
testv4.pp e417e34496 * truncate log 21 лет назад
testv5.pp e417e34496 * truncate log 21 лет назад
testv6.pp e417e34496 * truncate log 21 лет назад
testv7.pp e417e34496 * truncate log 21 лет назад
testv8.pp e417e34496 * truncate log 21 лет назад
texception1.pp c37cdcf4e8 * Improved output 22 лет назад
texception10.pp 92a6e151ff * new bugs 21 лет назад
texception2.pp 9da80100a2 skip for go32v2 to prevent hangings during unattended runs 21 лет назад
texception3.pp 79ba0c0609 * only build dbdigest for fulldb 21 лет назад
texception4.pp 9da80100a2 skip for go32v2 to prevent hangings during unattended runs 21 лет назад
texception5.pp 3bd0c0f4b5 no message 22 лет назад
texception6.pp 7d9ec3978d + Fixed exit code 22 лет назад
texception7.pp 7d9ec3978d + Fixed exit code 22 лет назад
texception8.pp 3bd0c0f4b5 no message 22 лет назад
texception9.pp 3bd0c0f4b5 no message 22 лет назад
tfillchr.pp e417e34496 * truncate log 21 лет назад
tfpu1.pp 952e80a72f * old logs removed and tabs fixed 23 лет назад
tfpu2.pp 9da80100a2 skip for go32v2 to prevent hangings during unattended runs 21 лет назад
tfpu3.pp cc47536e71 fsub check enhanced 23 лет назад
tfpu4.pp 2608db056d * win32 also has as instead of asw in 1.1 22 лет назад
tfpu5.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tfpuover.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tgoto.pp e7d12a5de3 * renamed test suite 25 лет назад
theap.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
thintdir.pp 952e80a72f * old logs removed and tabs fixed 23 лет назад
timplprog.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tinivar.pp 780b31cdb3 + Test for locally initialized variables 23 лет назад
tinlin64.pp 42035e7283 + new test for in64 value parameter push inlined 25 лет назад
tinline1.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tinline2.pp 952e80a72f * old logs removed and tabs fixed 23 лет назад
tinline3.pp 1fa574257d * case statement inline 21 лет назад
tinline4.pp 35d252cae4 * add $inline on 21 лет назад
tint641.pp e7d12a5de3 * renamed test suite 25 лет назад
tint642.pp b193cd19ad * added missing double() typecasts 21 лет назад
tint643.pp 5c36a38290 + qword multiplication and overflow test 22 лет назад
tinterface1.pp 2ecaba47e1 + Better comment on %SKIPTARGET=macos 21 лет назад
tinterface2.pp b9a0b3108a * update 25 лет назад
tinterface3.pp b9a0b3108a * update 25 лет назад
tinterface4.pp b16af7dfcc new test for interface to variant 21 лет назад
tinterrupt.pp 952e80a72f * old logs removed and tabs fixed 23 лет назад
tintuint.pp d298043d6b * 0->nil 22 лет назад
tlibrary1.pp 24833fe874 + added SKIPTARGET=macos 21 лет назад
tlibrary2.pp 56b74202eb * remove -Fl. 21 лет назад
tmacpas1.pp 59f83a5357 - Moved part to tmacpas4.pp 21 лет назад
tmacpas2.pp 0434d73f2b Merged revisions 387,392,433,442,516 via svnmerge from 20 лет назад
tmacpas3.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tmacpas4.pp 91c8da4e1a + New test for compile time things 21 лет назад
tmath1.pp 952e80a72f * old logs removed and tabs fixed 23 лет назад
tmmx1.pp 845dd70787 Merged revisions 555 via svnmerge from 20 лет назад
tmove.pp e417e34496 * truncate log 21 лет назад
tmt1.pp e417e34496 * truncate log 21 лет назад
tobject1.pp e417e34496 * truncate log 21 лет назад
tobject2.pp bbb08436c5 * memavail fixes 21 лет назад
tobject3.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tobject4.pp 741f42c3b0 no message 21 лет назад
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 b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tover1.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tover2.pp 385a0a0550 Merged revisions 536 via svnmerge from 20 лет назад
tpackrec.pp e417e34496 * truncate log 21 лет назад
tpara1.pp e2719218f8 * several fixes to run also with kylix 24 лет назад
tpara2.pp bb4fa3dcf0 * simple test for alignment of parameters on stack 21 лет назад
tprocext.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tprocvar1.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tprocvar2.pp d3e1891eea + added submitter, machine and comment field to sql version 22 лет назад
tprocvar3.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tprop1.pp e417e34496 * truncate log 21 лет назад
tprop2.pp a42f9109c0 * global properties 22 лет назад
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 23 лет назад
tresstr.pp e7d12a5de3 * renamed test suite 25 лет назад
trtti1.pp b9a0b3108a * update 25 лет назад
trtti2.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
trtti3.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tset1.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tset2.pp 992fe2b52c * test now returns exitcode 1 in case something went wrong 23 лет назад
tstack.pp e417e34496 * truncate log 21 лет назад
tstprocv.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tstring1.pp e7d12a5de3 * renamed test suite 25 лет назад
tstring2.pp e7d12a5de3 * renamed test suite 25 лет назад
tstring3.pp e7d12a5de3 * renamed test suite 25 лет назад
tstring4.pp e417e34496 * truncate log 21 лет назад
tstring5.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tstring6.pp 49ef73e24f * fixed test 21 лет назад
tstring7.pp 16bd288cae * simple test that failed for m68k 24 лет назад
tstrreal1.pp e7d12a5de3 * renamed test suite 25 лет назад
tstrreal2.pp bfd9c1f91c * fixed for processors where sizeof extended = sizeof(double) 22 лет назад
tsubdecl.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
tunit1.pp 1b28fe0e03 * more type redefining tests 25 лет назад
tunit2.pp 093c0c3921 * 1.1 update 24 лет назад
tunit3.pp 1b28fe0e03 * more type redefining tests 25 лет назад
tutf81.pp 2801071c2b Merged revisions 556 via svnmerge from 20 лет назад
tutf82.pp c8397915a4 Merged revisions 428-429 via svnmerge from 20 лет назад
twide1.pp 1872bac94a *** empty log message *** 21 лет назад
twide2.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
uabstrcl.pp 0b79e441ab + test for published class with abstract methods 21 лет назад
uimpluni1.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
uimpluni2.pp 7c067cef8a * renamed 25 лет назад
uinline4a.pp 6fc687a44c * inline with type in implicit used unit 21 лет назад
uinline4b.pp 6fc687a44c * inline with type in implicit used unit 21 лет назад
umacpas1.pp 403043058c + Added tests for mode macpas 21 лет назад
uprocext1.pp 87d02dfb7e * external handling test 21 лет назад
uprocext2.pp b409904e44 Merged revisions 42 via svnmerge from 20 лет назад
utasout.pp 9c95811fc0 * Renamefest 23 лет назад
uunit1.pp 1b28fe0e03 * more type redefining tests 25 лет назад
uunit2a.pp 1b28fe0e03 * more type redefining tests 25 лет назад
uunit2b.pp 1b28fe0e03 * more type redefining tests 25 лет назад
uunit3a.pp 1b28fe0e03 * more type redefining tests 25 лет назад
uunit3b.pp 1b28fe0e03 * more type redefining tests 25 лет назад
uunit3c.pp 1b28fe0e03 * more type redefining tests 25 лет назад

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
<<<<<<< README
Variants............... tvariant.pp tests the variant support of FPC
=======
tasout.pp tests a problem if a unit is compiled with nasm
>>>>>>> 1.13

--------------------------------------------------------------------
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)