fpc/tests/test
2007-03-04 19:16:20 +00:00
..
cg * adapt test to range check 2007-02-18 00:20:18 +00:00
opt * fixed 2006-02-12 21:31:25 +00:00
units * delete temp file when test ends. 2007-01-24 15:00:02 +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 * Fixed an old svn-conflict in tests/test/README 2007-01-24 16:25:40 +00:00
t4cc1.pp - removed automatic int-string, string-int and int-array conversion for 2006-11-01 16:34:37 +00:00
t4cc2.pp + support for indexing 4-byte sized integers as array[1..4] of char in 2006-10-18 17:26:00 +00:00
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 * fixed test for win64 2006-09-06 20:47:34 +00:00
talign.pp * truncate log 2005-02-14 17:13:06 +00:00
tarray1.pp
tarray2.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
tarray3.pp + known problems described 2003-02-20 12:42:20 +00:00
tarray4.pp + known problems described 2003-02-20 12:42:20 +00:00
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 *** empty log message *** 2004-05-26 20:41:52 +00:00
tasout.pp * nasm required note added 2002-10-18 11:35:40 +00:00
tbrtlevt.pp * fixed datarace in case heaptrc is used 2007-03-02 09:01:25 +00:00
tcase1.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
tcase2.pp
tcg1.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
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 * removed knowncompilererror10 2003-10-31 16:11:47 +00:00
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
tendian1.pp * another old test added 2006-11-01 21:02:12 +00:00
tenum1.pp
tenum2.pp * fixed typos 2006-12-29 17:48:36 +00:00
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 * enabled for darwin and solaris 2006-09-08 16:00:55 +00:00
testmovd.pp * mmx is 1.0.x only 2003-10-13 13:03:43 +00:00
tests.pp no message 2003-10-04 23:43:51 +00:00
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 *** empty log message *** 2003-01-03 01:08:33 +00:00
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 * adapt test to $R+ 2007-02-17 23:57:44 +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 * Improved output 2003-05-13 16:55:30 +00:00
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 no message 2003-10-06 16:00:46 +00:00
texception6.pp + Fixed exit code 2003-12-01 11:08:23 +00:00
texception7.pp + Fixed exit code 2003-12-01 11:08:23 +00:00
texception8.pp no message 2003-10-06 16:00:46 +00:00
texception9.pp no message 2003-10-06 16:00:46 +00:00
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 * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
tfpu2.pp skip for go32v2 to prevent hangings during unattended runs 2004-11-29 21:26:12 +00:00
tfpu3.pp fsub check enhanced 2002-10-31 13:16:27 +00:00
tfpu4.pp * win32 also has as instead of asw in 1.1 2003-10-29 15:37:52 +00:00
tfpu5.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tfpuover.pp * fixed assembling of sse instructions on x86-64 with regs > xmm7 2007-03-04 19:16:20 +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 * fixed test 2006-11-01 23:22:43 +00:00
tgeneric7.pp + store compiler switch changes in generic token streams 2006-10-30 19:54:17 +00:00
tgeneric8.pp * allow usage of nested types 2006-11-01 23:33:55 +00:00
tgeneric9.pp + template test with 2 template parameters 2006-11-09 21:25:36 +00:00
tgeneric10.pp * make tgeneric10 more complex 2006-11-13 20:13:02 +00:00
tgeneric11.pp * make tgeneric10 more complex 2006-11-13 20:13:02 +00:00
tgeneric12.pp + test procedure override in generic classes 2006-11-19 15:59:43 +00:00
tgeneric13.pp * only non generic types can be used when specializing generics, fixes 7735 2006-12-30 21:51:24 +00:00
tgoto.pp
theap.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
thintdir.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
timplprog.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tinivar.pp + Test for locally initialized variables 2003-01-02 11:19:42 +00:00
tinlin64.pp
tinline1.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tinline2.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
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
tint2str1.pp - removed automatic int-string, string-int and int-array conversion for 2006-11-01 16:34:37 +00:00
tint2str2.pp * test header fixed 2006-10-18 20:35:53 +00:00
tint641.pp
tint642.pp * added missing double() typecasts 2004-05-29 21:38:57 +00:00
tint643.pp + qword multiplication and overflow test 2004-01-12 21:35:18 +00:00
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 * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
tintfdef.pp + test for macpas interface-only definition units 2006-01-02 20:59:05 +00:00
tintuint.pp * 0->nil 2003-12-23 22:12:15 +00:00
tlibrary1.pp * ifdef'ed pic directive 2006-11-25 22:59:18 +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 * extended test 2006-10-23 22:50:35 +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 * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
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 * added Sleep to wait loop for wince. 2006-11-26 13:26:35 +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 * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
toperator2.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
toperator3.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
toperator4.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
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 * changed so it still fails after today's changes 2006-09-09 18:43:34 +00:00
tparray2.pp * changed so it still fails after today's changes 2006-09-09 18:55:48 +00:00
tparray3.pp * fixed tests 2006-08-01 16:05:54 +00:00
tparray4.pp + support for bitsizeof() function 2006-09-09 18:57:49 +00:00
tparray5.pp + another packed array test (which already works fine with my local 2006-08-15 22:03:36 +00:00
tparray6.pp + another packarray test which works 2006-08-16 21:37:31 +00:00
tparray7.pp + some more working packed array tests 2006-08-19 11:15:26 +00:00
tparray8.pp + some more working packed array tests 2006-08-19 11:15:26 +00:00
tparray9.pp + some more working packed array tests 2006-08-19 11:15:26 +00:00
tparray10.pp + support for bitsizeof() function 2006-09-09 18:57:49 +00:00
tparray11.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
tparray12.pp * fixed packed arrays of enums in case of packenum 2/4 2006-09-21 14:46:32 +00:00
tparray13.pp + support for packed array constants 2007-02-20 21:53:46 +00:00
tparray14.pp + support for packed array constants 2007-02-20 21:53:46 +00:00
tparray15.pp + support for bitpacked record constants 2007-02-24 17:39:06 +00:00
tparray16.pp + support for bitpacked record constants 2007-02-24 17:39:06 +00:00
tparray17.pp + support for bitpacked record constants 2007-02-24 17:39:06 +00:00
tparray18.pp + support for bitpacked record constants 2007-02-24 17:39:06 +00:00
tparray19.pp + support for bitpacking types with a negative lower bound 2007-02-28 17:42:41 +00:00
tpftch1.pp * crash test for automatic prefetching 2006-02-11 15:46:49 +00:00
tprec1.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
tprec2.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
tprec3.pp * fixed out-of-bounds int64 constant 2006-08-23 17:55:41 +00:00
tprec4.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
tprec5.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
tprec6.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
tprec7.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
tprec8.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
tprec9.pp * don't allow taking the address of packed record fields 2006-08-27 11:08:39 +00:00
tprec10.pp * don't allow taking the address of packed record fields 2006-08-27 11:08:39 +00:00
tprec11.pp + support for bitpacked record constants 2007-02-24 17:39:06 +00:00
tprec12.pp + support for bitpacked record constants 2007-02-24 17:39:06 +00:00
tprec13.pp + support for bitpacked record constants 2007-02-24 17:39:06 +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 + added submitter, machine and comment field to sql version 2003-10-15 21:45:50 +00:00
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 * global properties 2003-12-10 16:32:19 +00:00
trange1.pp
trange2.pp
trange3.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
trange4.pp * old logs removed and tabs fixed 2002-09-07 15:40:30 +00:00
trange5.pp * fix trange5 for big endian machines 2003-03-07 11:11:04 +00:00
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
trecreg4.pp * forgot to commit 2007-03-02 08:57:21 +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 * remove executable flag for pascal source 2006-11-12 13:51:37 +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 * test now returns exitcode 1 in case something went wrong 2003-05-01 12:30:16 +00:00
tset3.pp + support for sets with size 1 and 2 2007-01-24 20:06:56 +00:00
tset4.pp + support for sets with size 1 and 2 2007-01-24 20:06:56 +00:00
tset5.pp + new test for varsets and conversion among varsets 2007-01-27 20:29:06 +00:00
tset5a.pp * variant of tset5a which shows an error without -Or 2007-02-20 16:28:28 +00:00
tstack.pp * test fixed to turn off stack checking in stack checking error handling 2006-09-07 20:10:32 +00:00
tstprocv.pp * log and id tags removed 2005-05-21 09:42:41 +00:00
tstring1.pp * Made the test working for delphi/fpc and return error code for failures 2006-10-01 10:15:56 +00:00
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 * fixed for processors where sizeof extended = sizeof(double) 2003-12-28 22:22:56 +00:00
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
tugeneric7.pp + store compiler switch changes in generic token streams 2006-10-30 19:54:17 +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
tvarset1.pp + first batch of varset support, as long as packset isn't changed, it doesn't change anything 2006-09-24 14:40:11 +00:00
tw6727.pp + added 2006-12-27 15:24:56 +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
uenum2a.pp + using items of aliased enum type in other unit test 2006-12-02 11:30:59 +00:00
uenum2b.pp + using items of aliased enum type in other unit test 2006-12-02 11:30:59 +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
ugeneric10.pp * make tgeneric10 more complex 2006-11-13 20:13:02 +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
uprec6.pp + support for bitpacked records, except for: 2006-08-23 15:44:13 +00:00
uprec7.pp * fixed syntax errors 2007-02-24 17:28:14 +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 * Renamefest 2002-06-01 19:08:52 +00:00
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
Variants............... tvariant.pp    tests the variant support of FPC
                        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)