pierre d20b8fef95 * check static with objects without VMTs 23 年 前
..
cg d20b8fef95 * check static with objects without VMTs 23 年 前
opt 952e80a72f * old logs removed and tabs fixed 23 年 前
units e34a4abeb2 * win32 fix 23 年 前
.cvsignore 47758ec9fc + explicit .cvsignore files added 24 年 前
README f228f4d812 + Added tinivar.pp test 23 年 前
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 1c253e8411 * flagged as known bug 25 年 前
tarray4.pp 1c253e8411 * flagged as known bug 25 年 前
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 7a03f8f3b2 no message 25 年 前
tclass2.pp 7a03f8f3b2 no message 25 年 前
tclass3.pp e7d12a5de3 * renamed test suite 25 年 前
tclass4.pp 697b015e3f * fixed 23 年 前
tclass5.pp 87d602ac5b + Range check error testing for non-init classes and objects 23 年 前
tclass6.pp 91dfe9bec5 * compile time class check 23 年 前
tenum1.pp e7d12a5de3 * renamed test suite 25 年 前
testda1.pp 5400c36e4f *** empty log message *** 23 年 前
testmovd.pp 502f7cce52 * fixes for m68k testing 24 年 前
testsse2.pp 0cb666c270 * fix compile problem 23 年 前
testv1.pp 371661e332 * 1.1 only 23 年 前
testv2.pp fa14d04d88 *** empty log message *** 23 年 前
testv3.pp 371661e332 * 1.1 only 23 年 前
testv4.pp 371661e332 * 1.1 only 23 年 前
testv5.pp 371661e332 * 1.1 only 23 年 前
testv6.pp 371661e332 * 1.1 only 23 年 前
testv7.pp 371661e332 * 1.1 only 23 年 前
testv8.pp 371661e332 * 1.1 only 23 年 前
texception1.pp e7d12a5de3 * renamed test suite 25 年 前
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 年 前
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 25 年 前
tinivar.pp 780b31cdb3 + Test for locally initialized variables 23 年 前
tinlin64.pp 42035e7283 + new test for in64 value parameter push inlined 25 年 前
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 年 前
tlibrary1.pp 405bc99c16 * renamed tlibrary to tlibrary1 so it'll be compiled before tlibrary2 23 年 前
tlibrary2.pp 405bc99c16 * renamed tlibrary to tlibrary1 so it'll be compiled before tlibrary2 23 年 前
tmath1.pp 952e80a72f * old logs removed and tabs fixed 23 年 前
tmmx1.pp 502f7cce52 * fixes for m68k testing 24 年 前
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 23 年 前
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 952e80a72f * old logs removed and tabs fixed 23 年 前
tresstr.pp e7d12a5de3 * renamed test suite 25 年 前
trtti1.pp b9a0b3108a * update 25 年 前
trtti2.pp 7aae5f99f1 * runs now with 1.0.x as well 25 年 前
trtti3.pp b9a0b3108a * update 25 年 前
tset1.pp e7d12a5de3 * renamed test suite 25 年 前
tset2.pp 952e80a72f * old logs removed and tabs fixed 23 年 前
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 25 年 前
tunit2.pp 093c0c3921 * 1.1 update 24 年 前
tunit3.pp 1b28fe0e03 * more type redefining tests 25 年 前
uimpluni1.pp 7c067cef8a * renamed 25 年 前
uimpluni2.pp 7c067cef8a * renamed 25 年 前
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
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)