fpc/tests/test
florian 215b870f5e * StrToBool friends, fixes #7222
git-svn-id: trunk@4378 -
2006-08-06 15:38:27 +00:00
..
cg * also win64 2006-08-06 10:15:22 +00:00
opt * fixed 2006-02-12 21:31:25 +00:00
units * StrToBool friends, fixes #7222 2006-08-06 15:38:27 +00:00
dumpclass.pp no message 2004-12-27 15:55:32 +00:00
dumpmethods.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
README
tabstrcl.pp + test for published class with abstract methods 2005-04-05 19:15:58 +00:00
taddstr1.pp + optimize <string>+'' and ''+<string> 2006-05-14 09:43:53 +00:00
talign1.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
talign2.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
talign.pp * truncate log 2005-02-14 17:13:06 +00:00
tarray1.pp
tarray2.pp
tarray3.pp
tarray4.pp
tarray5.pp * check for array size 2004-11-02 07:43:22 +00:00
tarray6.pp * adjustment to target macos 2005-01-24 18:53:10 +00:00
tasmread.pp
tasout.pp
tcase1.pp
tcase2.pp
tcg1.pp
tcint64.pp * truncate log 2005-02-14 17:13:06 +00:00
tclass1.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tclass2.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tclass3.pp
tclass4.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tclass5.pp * memavail fixes 2004-11-22 22:29:26 +00:00
tclass6.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tclass7.pp
tclass8.pp * methodtable test 2004-10-24 12:56:17 +00:00
tclrprop.pp + test for publishing classref properties 2005-04-01 11:54:54 +00:00
tenum1.pp
testcmem.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
testda1.pp * truncate log 2005-02-14 17:13:06 +00:00
testfpuc.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
testmovd.pp
tests.pp
testsse2.pp + proper alignment directives added 2005-10-22 15:40:51 +00:00
testv1.pp * truncate log 2005-02-14 17:13:06 +00:00
testv2.pp
testv3.pp * truncate log 2005-02-14 17:13:06 +00:00
testv4.pp * truncate log 2005-02-14 17:13:06 +00:00
testv5.pp * truncate log 2005-02-14 17:13:06 +00:00
testv6.pp * truncate log 2005-02-14 17:13:06 +00:00
testv7.pp * truncate log 2005-02-14 17:13:06 +00:00
testv8.pp * truncate log 2005-02-14 17:13:06 +00:00
testv9.pp + extended test 2005-11-22 22:10:40 +00:00
testv10.pp * improved variant type casts 2005-12-10 16:42:28 +00:00
texception1.pp
texception2.pp git-svn-id: trunk@3242 - 2006-04-17 09:03:25 +00:00
texception3.pp * only build dbdigest for fulldb 2005-03-04 17:09:49 +00:00
texception4.pp skip for go32v2 to prevent hangings during unattended runs 2004-11-29 21:26:12 +00:00
texception5.pp
texception6.pp
texception7.pp
texception8.pp
texception9.pp
texception10.pp * new bugs 2005-01-24 15:53:20 +00:00
tfillchr.pp * truncate log 2005-02-14 17:13:06 +00:00
tfpu1.pp
tfpu2.pp skip for go32v2 to prevent hangings during unattended runs 2004-11-29 21:26:12 +00:00
tfpu3.pp
tfpu4.pp
tfpu5.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tfpuover.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tgeneric1.pp * make generic basics working again 2006-02-06 09:21:08 +00:00
tgeneric2.pp * make generic basics working again 2006-02-06 09:21:08 +00:00
tgeneric3.pp * make generic basics working again 2006-02-06 09:21:08 +00:00
tgeneric4.pp * make generic basics working again 2006-02-06 09:21:08 +00:00
tgeneric5.pp * fixed tgeneric5 test 2006-02-25 13:58:01 +00:00
tgeneric6.pp * some dummy .o files for solaris 2006-02-07 12:12:55 +00:00
tgoto.pp
theap.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
thintdir.pp
timplprog.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tinivar.pp
tinlin64.pp
tinline1.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tinline2.pp
tinline3.pp * case statement inline 2004-11-29 17:30:38 +00:00
tinline4.pp * add $inline on 2005-01-18 15:47:31 +00:00
tinline5.pp + test for new inlining (fails currently) 2005-11-02 15:11:17 +00:00
tinline6.pp * use more precise vs_* information to replace less parameters of inlined 2005-12-10 17:01:07 +00:00
tint641.pp
tint642.pp
tint643.pp
tinterface1.pp + Better comment on %SKIPTARGET=macos 2004-11-23 19:55:59 +00:00
tinterface2.pp
tinterface3.pp
tinterface4.pp new test for interface to variant 2005-03-09 23:21:23 +00:00
tinterrupt.pp
tintfdef.pp + test for macpas interface-only definition units 2006-01-02 20:59:05 +00:00
tintuint.pp
tlibrary1.pp * also win64 2006-08-06 10:15:22 +00:00
tlibrary2.pp * also win64 2006-08-06 10:15:22 +00:00
tmacbool.pp * fixed support for macpas & and | operators: they only work on booleans 2006-05-30 13:02:36 +00:00
tmacfunret.pp new tests for mode macpas 2005-10-24 22:06:49 +00:00
tmaclocalprocparam.pp added test cases for comming macpas features 2006-01-15 21:55:07 +00:00
tmacnonlocalexit.pp added test cases for comming macpas features 2006-01-15 21:55:07 +00:00
tmacnonlocalgoto.pp added test cases for comming macpas features 2006-01-15 21:55:07 +00:00
tmacpas1.pp - Moved part to tmacpas4.pp 2005-03-20 19:18:55 +00:00
tmacpas2.pp * string constants are now array of char until 2005-10-02 11:08:58 +00:00
tmacpas3.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tmacpas4.pp + New test for compile time things 2005-03-20 19:19:50 +00:00
tmacprocvar.pp new tests for mode macpas 2005-10-24 22:06:49 +00:00
tmath1.pp
tmcbool2.pp * fixed support for macpas & and | operators: they only work on booleans 2006-05-30 13:02:36 +00:00
tmmx1.pp + mmx support revived, fixes bug #4106 2005-07-02 11:53:51 +00:00
tmove.pp * truncate log 2005-02-14 17:13:06 +00:00
tmt1.pp * truncate log 2005-02-14 17:13:06 +00:00
tobject1.pp * truncate log 2005-02-14 17:13:06 +00:00
tobject2.pp * memavail fixes 2004-11-22 22:29:26 +00:00
tobject3.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tobject4.pp no message 2004-11-03 10:30:48 +00:00
toperator1.pp
toperator2.pp
toperator3.pp
toperator4.pp
toperator5.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tover1.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tover2.pp * remove svn:executable from *.pp and *.pas 2005-12-20 08:11:59 +00:00
tpackrec.pp * truncate log 2005-02-14 17:13:06 +00:00
tpara1.pp
tpara2.pp * simple test for alignment of parameters on stack 2004-09-12 12:12:33 +00:00
tparray1.pp + some packed array tests 2006-08-01 15:53:27 +00:00
tparray2.pp * fixed tests 2006-08-01 16:05:54 +00:00
tparray3.pp * fixed tests 2006-08-01 16:05:54 +00:00
tparray4.pp + some packed array tests 2006-08-01 15:53:27 +00:00
tpftch1.pp * crash test for automatic prefetching 2006-02-11 15:46:49 +00:00
tprocext.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tprocvar1.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tprocvar2.pp
tprocvar3.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tprop1.pp * truncate log 2005-02-14 17:13:06 +00:00
tprop2.pp
trange1.pp
trange2.pp
trange3.pp
trange4.pp
trange5.pp
trangeob.pp + problem when passing a typecasted class instance to a var parameter 2006-03-04 20:17:29 +00:00
trecreg2.pp * fixed bug when assigning a negative value in a register to certain 2006-05-23 09:17:21 +00:00
trecreg3.pp + new additional test program for testing record register variables 2006-06-04 12:37:26 +00:00
trecreg.pp + support for register variables which contain records 2006-05-19 15:49:07 +00:00
tresstr.pp
trtti1.pp
trtti2.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
trtti3.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
trtti4.pp * renamed to trtti4 2005-12-20 10:46:41 +00:00
trtti5.pp * write only unique property names in rtti 2005-12-20 14:44:48 +00:00
tset1.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tset2.pp
tstack.pp * truncate log 2005-02-14 17:13:06 +00:00
tstprocv.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tstring1.pp
tstring2.pp
tstring3.pp
tstring4.pp * truncate log 2005-02-14 17:13:06 +00:00
tstring5.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tstring6.pp * fixed test 2004-12-19 21:44:27 +00:00
tstring7.pp
tstring8.pp * fixed strpos() in case source or target is nil 2005-12-09 14:57:10 +00:00
tstrreal1.pp
tstrreal2.pp
tstrreal3.pp * added DecimalSeparator:='.'; to make test locale independent. 2006-07-06 19:11:43 +00:00
tsubdecl.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tunaligned1.pp * test for unaligned function 2006-04-29 19:44:50 +00:00
tunit1.pp
tunit2.pp
tunit3.pp
tunroll1.pp * fixed some small problems in loop unrolling 2005-06-19 21:00:27 +00:00
tutf81.pp * utf-8 fix from Rimgaudas Laucius 2005-07-02 12:03:47 +00:00
tutf82.pp + added forgotten $codepage directive 2005-06-16 20:22:08 +00:00
twide1.pp *** empty log message *** 2005-03-17 19:08:04 +00:00
twide2.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
uabstrcl.pp + test for published class with abstract methods 2005-04-05 19:15:58 +00:00
ugeneric3.pp * make generic basics working again 2006-02-06 09:21:08 +00:00
ugeneric4.pp * make generic basics working again 2006-02-06 09:21:08 +00:00
uimpluni1.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
uimpluni2.pp
uinline4a.pp * inline with type in implicit used unit 2005-01-13 16:46:46 +00:00
uinline4b.pp * inline with type in implicit used unit 2005-01-13 16:46:46 +00:00
umacpas1.pp + Added tests for mode macpas 2005-01-11 21:23:36 +00:00
uprocext1.pp * external handling test 2004-12-14 16:10:41 +00:00
uprocext2.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
utasout.pp
uunit1.pp
uunit2a.pp
uunit2b.pp
uunit3a.pp
uunit3b.pp
uunit3c.pp

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)