summary refs log tree commit diff stats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/accept/compile/tarrindx.nim (renamed from tests/tarrindx.nim)0
-rw-r--r--tests/accept/compile/tassign.nim (renamed from tests/tassign.nim)0
-rw-r--r--tests/accept/compile/tcmdline.nim (renamed from tests/tcmdline.nim)0
-rw-r--r--tests/accept/compile/tcolors.nim (renamed from tests/tcolors.nim)0
-rw-r--r--tests/accept/compile/tconsteval.nim (renamed from tests/tconsteval.nim)0
-rw-r--r--tests/accept/compile/tconvert.nim (renamed from tests/tconvert.nim)0
-rw-r--r--tests/accept/compile/tdeprecated.nim (renamed from tests/tdeprecated.nim)0
-rw-r--r--tests/accept/compile/tdialogs.nim (renamed from tests/tdialogs.nim)0
-rw-r--r--tests/accept/compile/tdllvar.nim (renamed from tests/tdllvar.nim)0
-rw-r--r--tests/accept/compile/tdumpast.nim (renamed from tests/tdumpast.nim)0
-rw-r--r--tests/accept/compile/techo.nim (renamed from tests/techo.nim)0
-rw-r--r--tests/accept/compile/tendian.nim (renamed from tests/tendian.nim)0
-rw-r--r--tests/accept/compile/tenum.nim (renamed from tests/tenum.nim)0
-rw-r--r--tests/accept/compile/tforwty.nim (renamed from tests/tforwty.nim)0
-rw-r--r--tests/accept/compile/tforwty2.nim (renamed from tests/tforwty2.nim)0
-rw-r--r--tests/accept/compile/tgtk.nim (renamed from tests/tgtk.nim)0
-rw-r--r--tests/accept/compile/thallo.nim (renamed from tests/thallo.nim)0
-rw-r--r--tests/accept/compile/tident.nim (renamed from tests/tident.nim)0
-rw-r--r--tests/accept/compile/tindent1.nim (renamed from tests/tindent1.nim)0
-rw-r--r--tests/accept/compile/tio.nim (renamed from tests/tio.nim)0
-rw-r--r--tests/accept/compile/titer.nim (renamed from tests/titer.nim)0
-rw-r--r--tests/accept/compile/tlastmod.nim (renamed from tests/tlastmod.nim)0
-rw-r--r--tests/accept/compile/tlexer.nim (renamed from tests/scantest.nim)5
-rw-r--r--tests/accept/compile/tlibs.nim (renamed from tests/tlibs.nim)0
-rw-r--r--tests/accept/compile/tloops.nim (renamed from tests/tloops.nim)0
-rw-r--r--tests/accept/compile/tmath.nim (renamed from tests/tmath.nim)0
-rw-r--r--tests/accept/compile/tnew.nim (renamed from tests/tnew.nim)0
-rw-r--r--tests/accept/compile/tnewlibs.nim (renamed from tests/tnewlibs.nim)0
-rw-r--r--tests/accept/compile/tnewsets.nim (renamed from tests/tnewsets.nim)0
-rw-r--r--tests/accept/compile/tnewuns.nim (renamed from tests/tnewuns.nim)0
-rw-r--r--tests/accept/compile/tobjcov.nim (renamed from tests/tobjcov.nim)0
-rw-r--r--tests/accept/compile/tobject2.nim (renamed from tests/tobject2.nim)0
-rw-r--r--tests/accept/compile/tobjects.nim (renamed from tests/tobjects.nim)0
-rw-r--r--tests/accept/compile/toptions.nim (renamed from tests/toptions.nim)0
-rw-r--r--tests/accept/compile/tos.nim (renamed from tests/tos.nim)0
-rw-r--r--tests/accept/compile/toverprc.nim (renamed from tests/toverprc.nim)0
-rw-r--r--tests/accept/compile/tparedef.nim (renamed from tests/tparedef.nim)0
-rw-r--r--tests/accept/compile/tparscfg.nim (renamed from tests/tparscfg.nim)0
-rw-r--r--tests/accept/compile/tparsefloat.nim (renamed from tests/tparsefloat.nim)0
-rw-r--r--tests/accept/compile/tparsopt.nim (renamed from tests/tparsopt.nim)0
-rw-r--r--tests/accept/compile/tposix.nim (renamed from tests/tposix.nim)0
-rw-r--r--tests/accept/compile/tprep.nim (renamed from tests/tprep.nim)0
-rw-r--r--tests/accept/compile/tpush.nim (renamed from tests/tpush.nim)0
-rw-r--r--tests/accept/compile/tquicksort.nim (renamed from tests/tquicksort.nim)0
-rw-r--r--tests/accept/compile/tquit.nim (renamed from tests/tquit.nim)0
-rw-r--r--tests/accept/compile/tradix.nim (renamed from tests/tradix.nim)0
-rw-r--r--tests/accept/compile/treadln.nim (renamed from tests/treadln.nim)0
-rw-r--r--tests/accept/compile/treadx.nim (renamed from tests/treadx.nim)0
-rw-r--r--tests/accept/compile/trecmod.nim (renamed from tests/trecmod.nim)0
-rw-r--r--tests/accept/compile/trecmod2.nim (renamed from tests/trecmod2.nim)0
-rw-r--r--tests/accept/compile/trepr.nim (renamed from tests/trepr.nim)0
-rw-r--r--tests/accept/compile/tseq2.nim (renamed from tests/tseq2.nim)0
-rw-r--r--tests/accept/compile/tseqcon2.nim (renamed from tests/tseqcon2.nim)0
-rw-r--r--tests/accept/compile/tsizeof.nim (renamed from tests/tsizeof.nim)0
-rw-r--r--tests/accept/compile/tsockets.nim (renamed from tests/tsockets.nim)0
-rw-r--r--tests/accept/compile/tstrace.nim (renamed from tests/tstrace.nim)0
-rw-r--r--tests/accept/compile/tstrdesc.nim (renamed from tests/tstrdesc.nim)0
-rw-r--r--tests/accept/compile/tstrdist.nim (renamed from tests/tstrdist.nim)0
-rw-r--r--tests/accept/compile/tstreams.nim (renamed from tests/tstreams.nim)0
-rw-r--r--tests/accept/compile/tstrset.nim (renamed from tests/tstrset.nim)0
-rw-r--r--tests/accept/compile/tstrtabs.nim (renamed from tests/tstrtabs.nim)0
-rw-r--r--tests/accept/compile/ttempl.nim (renamed from tests/ttempl.nim)0
-rw-r--r--tests/accept/compile/ttempl3.nim (renamed from tests/ttempl3.nim)0
-rw-r--r--tests/accept/compile/ttime.nim (renamed from tests/ttime.nim)0
-rw-r--r--tests/accept/compile/ttuple1.nim (renamed from tests/ttuple1.nim)0
-rw-r--r--tests/accept/compile/tvarious.nim (renamed from tests/tvarious.nim)0
-rw-r--r--tests/accept/compile/twalker.nim (renamed from tests/twalker.nim)0
-rw-r--r--tests/accept/compile/typalias.nim (renamed from tests/typalias.nim)0
-rw-r--r--tests/accept/run/tack.nim (renamed from tests/tack.nim)0
-rw-r--r--tests/accept/run/tambsym2.nim (renamed from tests/tambsym2.nim)0
-rw-r--r--tests/accept/run/tambsys.nim (renamed from tests/tambsys.nim)0
-rw-r--r--tests/accept/run/tarray.nim (renamed from tests/tarray.nim)0
-rw-r--r--tests/accept/run/tarray2.nim (renamed from tests/tarray2.nim)0
-rw-r--r--tests/accept/run/tassert.nim (renamed from tests/tassert.nim)0
-rw-r--r--tests/accept/run/tbind1.nim (renamed from tests/tbind1.nim)0
-rw-r--r--tests/accept/run/tbind3.nim (renamed from tests/tbind3.nim)0
-rw-r--r--tests/accept/run/tbintre2.nim (renamed from tests/tbintre2.nim)0
-rw-r--r--tests/accept/run/tbintree.nim (renamed from tests/tbintree.nim)0
-rw-r--r--tests/accept/run/tcasestm.nim (renamed from tests/tcasestm.nim)0
-rw-r--r--tests/accept/run/tclosure.nim (renamed from tests/tclosure.nim)0
-rw-r--r--tests/accept/run/tcnstseq.nim (renamed from tests/tcnstseq.nim)0
-rw-r--r--tests/accept/run/tconstr2.nim (renamed from tests/tconstr2.nim)0
-rw-r--r--tests/accept/run/tcopy.nim (renamed from tests/tcopy.nim)0
-rw-r--r--tests/accept/run/tcurrncy.nim (renamed from tests/tcurrncy.nim)0
-rw-r--r--tests/accept/run/tfinally.nim (renamed from tests/tfinally.nim)0
-rw-r--r--tests/accept/run/tfloat1.nim (renamed from tests/tfloat1.nim)0
-rw-r--r--tests/accept/run/tfloat2.nim (renamed from tests/tfloat2.nim)0
-rw-r--r--tests/accept/run/tformat.nim (renamed from tests/tformat.nim)0
-rw-r--r--tests/accept/run/thintoff.nim (renamed from tests/thintoff.nim)0
-rw-r--r--tests/accept/run/tinit.nim (renamed from tests/tinit.nim)0
-rw-r--r--tests/accept/run/tints.nim (renamed from tests/tints.nim)0
-rw-r--r--tests/accept/run/tisopr.nim (renamed from tests/tisopr.nim)0
-rw-r--r--tests/accept/run/titer2.nim (renamed from tests/titer2.nim)0
-rw-r--r--tests/accept/run/titer3.nim (renamed from tests/titer3.nim)0
-rw-r--r--tests/accept/run/titer5.nim (renamed from tests/titer5.nim)0
-rw-r--r--tests/accept/run/tlowhigh.nim (renamed from tests/tlowhigh.nim)0
-rw-r--r--tests/accept/run/tmatrix.nim (renamed from tests/tmatrix.nim)0
-rw-r--r--tests/accept/run/tmultim1.nim (renamed from tests/tmultim1.nim)0
-rw-r--r--tests/accept/run/tmultim2.nim (renamed from tests/tmultim2.nim)0
-rw-r--r--tests/accept/run/tnestif.nim (renamed from tests/tnestif.nim)0
-rw-r--r--tests/accept/run/tnestprc.nim (renamed from tests/tnestprc.nim)0
-rw-r--r--tests/accept/run/toop1.nim (renamed from tests/toop1.nim)0
-rw-r--r--tests/accept/run/topenarrayrepr.nim (renamed from tests/topenarrayrepr.nim)0
-rw-r--r--tests/accept/run/topenlen.nim (renamed from tests/topenlen.nim)0
-rw-r--r--tests/accept/run/toverflw.nim (renamed from tests/toverflw.nim)0
-rw-r--r--tests/accept/run/toverl2.nim (renamed from tests/toverl2.nim)0
-rw-r--r--tests/accept/run/toverlop.nim (renamed from tests/toverlop.nim)0
-rw-r--r--tests/accept/run/toverwr.nim (renamed from tests/toverwr.nim)0
-rw-r--r--tests/accept/run/tovfint.nim (renamed from tests/tovfint.nim)0
-rw-r--r--tests/accept/run/tpos.nim (renamed from tests/tpos.nim)0
-rw-r--r--tests/accept/run/tprintf.nim (renamed from tests/tprintf.nim)0
-rw-r--r--tests/accept/run/tprocvar.nim (renamed from tests/tprocvar.nim)0
-rw-r--r--tests/accept/run/tquotewords.nim (renamed from tests/tquotewords.nim)0
-rw-r--r--tests/accept/run/tregex.nim (renamed from tests/tregex.nim)0
-rw-r--r--tests/accept/run/treguse.nim (renamed from tests/treguse.nim)0
-rw-r--r--tests/accept/run/tromans.nim (renamed from tests/tromans.nim)0
-rw-r--r--tests/accept/run/tseqcon.nim (renamed from tests/tseqcon.nim)0
-rw-r--r--tests/accept/run/tsets.nim (renamed from tests/tsets.nim)0
-rw-r--r--tests/accept/run/tsidee2.nim (renamed from tests/tsidee2.nim)0
-rw-r--r--tests/accept/run/tsidee3.nim (renamed from tests/tsidee3.nim)0
-rw-r--r--tests/accept/run/tsimmeth.nim (renamed from tests/tsimmeth.nim)0
-rw-r--r--tests/accept/run/tsplit.nim (renamed from tests/tsplit.nim)0
-rw-r--r--tests/accept/run/tstrange.nim (renamed from tests/tstrange.nim)0
-rw-r--r--tests/accept/run/tstrlits.nim (renamed from tests/tstrlits.nim)0
-rw-r--r--tests/accept/run/tstrutil.nim (renamed from tests/tstrutil.nim)0
-rw-r--r--tests/accept/run/tvardecl.nim (renamed from tests/tvardecl.nim)0
-rw-r--r--tests/accept/run/tvarnums.nim (renamed from tests/tvarnums.nim)0
-rw-r--r--tests/accept/run/tvartup.nim (renamed from tests/tvartup.nim)0
-rw-r--r--tests/gc/gcbench.nim163
-rw-r--r--tests/gc/gctest.nim (renamed from tests/gctest.nim)0
-rw-r--r--tests/gcbench.nim171
-rw-r--r--tests/mbind3.nim9
-rw-r--r--tests/mbind4.nim9
-rw-r--r--tests/mvarious.nim6
-rw-r--r--tests/reject/99bottles.nim (renamed from tests/99bottles.nim)0
-rw-r--r--tests/reject/t99bott.nim (renamed from tests/t99bott.nim)0
-rw-r--r--tests/reject/tadrdisc.nim (renamed from tests/tadrdisc.nim)0
-rw-r--r--tests/reject/tambsym.nim (renamed from tests/tambsym.nim)0
-rw-r--r--tests/reject/tambsym3.nim (renamed from tests/tambsym3.nim)0
-rw-r--r--tests/reject/tbind2.nim (renamed from tests/tbind2.nim)0
-rw-r--r--tests/reject/tbind4.nim (renamed from tests/tbind4.nim)0
-rw-r--r--tests/reject/tblock1.nim (renamed from tests/tblock1.nim)0
-rw-r--r--tests/reject/tconstr1.nim (renamed from tests/tconstr1.nim)0
-rw-r--r--tests/reject/tillrec.nim (renamed from tests/tillrec.nim)0
-rw-r--r--tests/reject/tinout.nim (renamed from tests/tinout.nim)0
-rw-r--r--tests/reject/tinvalidnewseq.nim (renamed from tests/tinvalidnewseq.nim)0
-rw-r--r--tests/reject/tinvwhen.nim (renamed from tests/tinvwhen.nim)0
-rw-r--r--tests/reject/titer4.nim (renamed from tests/titer4.nim)0
-rw-r--r--tests/reject/tnamspc.nim (renamed from tests/tnamspc.nim)0
-rw-r--r--tests/reject/tnoop.nim (renamed from tests/tnoop.nim)0
-rw-r--r--tests/reject/tnot.nim (renamed from tests/tnot.nim)0
-rw-r--r--tests/reject/topaque.nim (renamed from tests/topaque.nim)0
-rw-r--r--tests/reject/topena1.nim (renamed from tests/topena1.nim)0
-rw-r--r--tests/reject/toverl.nim (renamed from tests/toverl.nim)0
-rw-r--r--tests/reject/trawstr.nim (renamed from tests/trawstr.nim)0
-rw-r--r--tests/reject/trecinca.nim (renamed from tests/trecinca.nim)0
-rw-r--r--tests/reject/trecincb.nim (renamed from tests/trecincb.nim)0
-rw-r--r--tests/reject/treciter.nim (renamed from tests/treciter.nim)0
-rw-r--r--tests/reject/trectype.nim (renamed from tests/trectype.nim)0
-rw-r--r--tests/reject/trefs.nim (renamed from tests/trefs.nim)0
-rw-r--r--tests/reject/tsidee1.nim (renamed from tests/tsidee1.nim)0
-rw-r--r--tests/reject/tsidee4.nim (renamed from tests/tsidee4.nim)0
-rw-r--r--tests/reject/tsimtych.nim (renamed from tests/tsimtych.nim)0
-rw-r--r--tests/reject/tstatret.nim (renamed from tests/tstatret.nim)0
-rw-r--r--tests/reject/tstmtexp.nim (renamed from tests/tstmtexp.nim)0
-rw-r--r--tests/reject/ttempl2.nim (renamed from tests/ttempl2.nim)0
-rw-r--r--tests/reject/tunderscores.nim (renamed from tests/tunderscores.nim)0
-rw-r--r--tests/reject/typredef.nim (renamed from tests/typredef.nim)0
-rw-r--r--tests/tester.nim4
-rw-r--r--tests/x11test.nim6
170 files changed, 168 insertions, 205 deletions
diff --git a/tests/tarrindx.nim b/tests/accept/compile/tarrindx.nim
index 13919cc2c..13919cc2c 100644
--- a/tests/tarrindx.nim
+++ b/tests/accept/compile/tarrindx.nim
diff --git a/tests/tassign.nim b/tests/accept/compile/tassign.nim
index f51c20783..f51c20783 100644
--- a/tests/tassign.nim
+++ b/tests/accept/compile/tassign.nim
diff --git a/tests/tcmdline.nim b/tests/accept/compile/tcmdline.nim
index f43aecafa..f43aecafa 100644
--- a/tests/tcmdline.nim
+++ b/tests/accept/compile/tcmdline.nim
diff --git a/tests/tcolors.nim b/tests/accept/compile/tcolors.nim
index 9d1034405..9d1034405 100644
--- a/tests/tcolors.nim
+++ b/tests/accept/compile/tcolors.nim
diff --git a/tests/tconsteval.nim b/tests/accept/compile/tconsteval.nim
index ce90d7c27..ce90d7c27 100644
--- a/tests/tconsteval.nim
+++ b/tests/accept/compile/tconsteval.nim
diff --git a/tests/tconvert.nim b/tests/accept/compile/tconvert.nim
index b23afde74..b23afde74 100644
--- a/tests/tconvert.nim
+++ b/tests/accept/compile/tconvert.nim
diff --git a/tests/tdeprecated.nim b/tests/accept/compile/tdeprecated.nim
index e287da3f9..e287da3f9 100644
--- a/tests/tdeprecated.nim
+++ b/tests/accept/compile/tdeprecated.nim
diff --git a/tests/tdialogs.nim b/tests/accept/compile/tdialogs.nim
index 90f241cdf..90f241cdf 100644
--- a/tests/tdialogs.nim
+++ b/tests/accept/compile/tdialogs.nim
diff --git a/tests/tdllvar.nim b/tests/accept/compile/tdllvar.nim
index ab767770c..ab767770c 100644
--- a/tests/tdllvar.nim
+++ b/tests/accept/compile/tdllvar.nim
diff --git a/tests/tdumpast.nim b/tests/accept/compile/tdumpast.nim
index fb31af0ec..fb31af0ec 100644
--- a/tests/tdumpast.nim
+++ b/tests/accept/compile/tdumpast.nim
diff --git a/tests/techo.nim b/tests/accept/compile/techo.nim
index beb21fa16..beb21fa16 100644
--- a/tests/techo.nim
+++ b/tests/accept/compile/techo.nim
diff --git a/tests/tendian.nim b/tests/accept/compile/tendian.nim
index 256e2653c..256e2653c 100644
--- a/tests/tendian.nim
+++ b/tests/accept/compile/tendian.nim
diff --git a/tests/tenum.nim b/tests/accept/compile/tenum.nim
index 6e53b9c08..6e53b9c08 100644
--- a/tests/tenum.nim
+++ b/tests/accept/compile/tenum.nim
diff --git a/tests/tforwty.nim b/tests/accept/compile/tforwty.nim
index 0f1d3697f..0f1d3697f 100644
--- a/tests/tforwty.nim
+++ b/tests/accept/compile/tforwty.nim
diff --git a/tests/tforwty2.nim b/tests/accept/compile/tforwty2.nim
index 5d15e112a..5d15e112a 100644
--- a/tests/tforwty2.nim
+++ b/tests/accept/compile/tforwty2.nim
diff --git a/tests/tgtk.nim b/tests/accept/compile/tgtk.nim
index cd9254e4f..cd9254e4f 100644
--- a/tests/tgtk.nim
+++ b/tests/accept/compile/tgtk.nim
diff --git a/tests/thallo.nim b/tests/accept/compile/thallo.nim
index f1cae5897..f1cae5897 100644
--- a/tests/thallo.nim
+++ b/tests/accept/compile/thallo.nim
diff --git a/tests/tident.nim b/tests/accept/compile/tident.nim
index 1ed9894c6..1ed9894c6 100644
--- a/tests/tident.nim
+++ b/tests/accept/compile/tident.nim
diff --git a/tests/tindent1.nim b/tests/accept/compile/tindent1.nim
index 0527b6e57..0527b6e57 100644
--- a/tests/tindent1.nim
+++ b/tests/accept/compile/tindent1.nim
diff --git a/tests/tio.nim b/tests/accept/compile/tio.nim
index 014c32d9f..014c32d9f 100644
--- a/tests/tio.nim
+++ b/tests/accept/compile/tio.nim
diff --git a/tests/titer.nim b/tests/accept/compile/titer.nim
index 19a11dc4e..19a11dc4e 100644
--- a/tests/titer.nim
+++ b/tests/accept/compile/titer.nim
diff --git a/tests/tlastmod.nim b/tests/accept/compile/tlastmod.nim
index 75b047fc8..75b047fc8 100644
--- a/tests/tlastmod.nim
+++ b/tests/accept/compile/tlastmod.nim
diff --git a/tests/scantest.nim b/tests/accept/compile/tlexer.nim
index c9779c762..fe784280c 100644
--- a/tests/scantest.nim
+++ b/tests/accept/compile/tlexer.nim
@@ -3,11 +3,6 @@
 

 # This is a new one!

 

-# This should not be allowed!

-

-export

-main

-

 import

   lexbase, os, strutils

 

diff --git a/tests/tlibs.nim b/tests/accept/compile/tlibs.nim
index e3b6bd4c3..e3b6bd4c3 100644
--- a/tests/tlibs.nim
+++ b/tests/accept/compile/tlibs.nim
diff --git a/tests/tloops.nim b/tests/accept/compile/tloops.nim
index 3d03256ad..3d03256ad 100644
--- a/tests/tloops.nim
+++ b/tests/accept/compile/tloops.nim
diff --git a/tests/tmath.nim b/tests/accept/compile/tmath.nim
index 6a1dae54d..6a1dae54d 100644
--- a/tests/tmath.nim
+++ b/tests/accept/compile/tmath.nim
diff --git a/tests/tnew.nim b/tests/accept/compile/tnew.nim
index 6527541a2..6527541a2 100644
--- a/tests/tnew.nim
+++ b/tests/accept/compile/tnew.nim
diff --git a/tests/tnewlibs.nim b/tests/accept/compile/tnewlibs.nim
index aca2e3c30..aca2e3c30 100644
--- a/tests/tnewlibs.nim
+++ b/tests/accept/compile/tnewlibs.nim
diff --git a/tests/tnewsets.nim b/tests/accept/compile/tnewsets.nim
index 415fe8f7e..415fe8f7e 100644
--- a/tests/tnewsets.nim
+++ b/tests/accept/compile/tnewsets.nim
diff --git a/tests/tnewuns.nim b/tests/accept/compile/tnewuns.nim
index 5181e467c..5181e467c 100644
--- a/tests/tnewuns.nim
+++ b/tests/accept/compile/tnewuns.nim
diff --git a/tests/tobjcov.nim b/tests/accept/compile/tobjcov.nim
index da34fcb60..da34fcb60 100644
--- a/tests/tobjcov.nim
+++ b/tests/accept/compile/tobjcov.nim
diff --git a/tests/tobject2.nim b/tests/accept/compile/tobject2.nim
index 8f69a6bac..8f69a6bac 100644
--- a/tests/tobject2.nim
+++ b/tests/accept/compile/tobject2.nim
diff --git a/tests/tobjects.nim b/tests/accept/compile/tobjects.nim
index 8305e2838..8305e2838 100644
--- a/tests/tobjects.nim
+++ b/tests/accept/compile/tobjects.nim
diff --git a/tests/toptions.nim b/tests/accept/compile/toptions.nim
index 95bb5cfbc..95bb5cfbc 100644
--- a/tests/toptions.nim
+++ b/tests/accept/compile/toptions.nim
diff --git a/tests/tos.nim b/tests/accept/compile/tos.nim
index 9ab4295f8..9ab4295f8 100644
--- a/tests/tos.nim
+++ b/tests/accept/compile/tos.nim
diff --git a/tests/toverprc.nim b/tests/accept/compile/toverprc.nim
index f35528ace..f35528ace 100644
--- a/tests/toverprc.nim
+++ b/tests/accept/compile/toverprc.nim
diff --git a/tests/tparedef.nim b/tests/accept/compile/tparedef.nim
index dedebf6b7..dedebf6b7 100644
--- a/tests/tparedef.nim
+++ b/tests/accept/compile/tparedef.nim
diff --git a/tests/tparscfg.nim b/tests/accept/compile/tparscfg.nim
index 618ecadd6..618ecadd6 100644
--- a/tests/tparscfg.nim
+++ b/tests/accept/compile/tparscfg.nim
diff --git a/tests/tparsefloat.nim b/tests/accept/compile/tparsefloat.nim
index 38ed2db6d..38ed2db6d 100644
--- a/tests/tparsefloat.nim
+++ b/tests/accept/compile/tparsefloat.nim
diff --git a/tests/tparsopt.nim b/tests/accept/compile/tparsopt.nim
index 2b2da7e51..2b2da7e51 100644
--- a/tests/tparsopt.nim
+++ b/tests/accept/compile/tparsopt.nim
diff --git a/tests/tposix.nim b/tests/accept/compile/tposix.nim
index bf0b49586..bf0b49586 100644
--- a/tests/tposix.nim
+++ b/tests/accept/compile/tposix.nim
diff --git a/tests/tprep.nim b/tests/accept/compile/tprep.nim
index 999b2f57f..999b2f57f 100644
--- a/tests/tprep.nim
+++ b/tests/accept/compile/tprep.nim
diff --git a/tests/tpush.nim b/tests/accept/compile/tpush.nim
index 5fb411a79..5fb411a79 100644
--- a/tests/tpush.nim
+++ b/tests/accept/compile/tpush.nim
diff --git a/tests/tquicksort.nim b/tests/accept/compile/tquicksort.nim
index 421564ecd..421564ecd 100644
--- a/tests/tquicksort.nim
+++ b/tests/accept/compile/tquicksort.nim
diff --git a/tests/tquit.nim b/tests/accept/compile/tquit.nim
index d4dc1522d..d4dc1522d 100644
--- a/tests/tquit.nim
+++ b/tests/accept/compile/tquit.nim
diff --git a/tests/tradix.nim b/tests/accept/compile/tradix.nim
index e7ca210e4..e7ca210e4 100644
--- a/tests/tradix.nim
+++ b/tests/accept/compile/tradix.nim
diff --git a/tests/treadln.nim b/tests/accept/compile/treadln.nim
index 7703d5a56..7703d5a56 100644
--- a/tests/treadln.nim
+++ b/tests/accept/compile/treadln.nim
diff --git a/tests/treadx.nim b/tests/accept/compile/treadx.nim
index 13acb0514..13acb0514 100644
--- a/tests/treadx.nim
+++ b/tests/accept/compile/treadx.nim
diff --git a/tests/trecmod.nim b/tests/accept/compile/trecmod.nim
index 9d39d3ff7..9d39d3ff7 100644
--- a/tests/trecmod.nim
+++ b/tests/accept/compile/trecmod.nim
diff --git a/tests/trecmod2.nim b/tests/accept/compile/trecmod2.nim
index 85fe2215f..85fe2215f 100644
--- a/tests/trecmod2.nim
+++ b/tests/accept/compile/trecmod2.nim
diff --git a/tests/trepr.nim b/tests/accept/compile/trepr.nim
index 4a56842f6..4a56842f6 100644
--- a/tests/trepr.nim
+++ b/tests/accept/compile/trepr.nim
diff --git a/tests/tseq2.nim b/tests/accept/compile/tseq2.nim
index 03bdb3fab..03bdb3fab 100644
--- a/tests/tseq2.nim
+++ b/tests/accept/compile/tseq2.nim
diff --git a/tests/tseqcon2.nim b/tests/accept/compile/tseqcon2.nim
index 6225c3bb1..6225c3bb1 100644
--- a/tests/tseqcon2.nim
+++ b/tests/accept/compile/tseqcon2.nim
diff --git a/tests/tsizeof.nim b/tests/accept/compile/tsizeof.nim
index f7b70dd4d..f7b70dd4d 100644
--- a/tests/tsizeof.nim
+++ b/tests/accept/compile/tsizeof.nim
diff --git a/tests/tsockets.nim b/tests/accept/compile/tsockets.nim
index cc7d18b87..cc7d18b87 100644
--- a/tests/tsockets.nim
+++ b/tests/accept/compile/tsockets.nim
diff --git a/tests/tstrace.nim b/tests/accept/compile/tstrace.nim
index 56f20a0dd..56f20a0dd 100644
--- a/tests/tstrace.nim
+++ b/tests/accept/compile/tstrace.nim
diff --git a/tests/tstrdesc.nim b/tests/accept/compile/tstrdesc.nim
index 1c2e85b4b..1c2e85b4b 100644
--- a/tests/tstrdesc.nim
+++ b/tests/accept/compile/tstrdesc.nim
diff --git a/tests/tstrdist.nim b/tests/accept/compile/tstrdist.nim
index 3e1939e73..3e1939e73 100644
--- a/tests/tstrdist.nim
+++ b/tests/accept/compile/tstrdist.nim
diff --git a/tests/tstreams.nim b/tests/accept/compile/tstreams.nim
index 68ca8eeeb..68ca8eeeb 100644
--- a/tests/tstreams.nim
+++ b/tests/accept/compile/tstreams.nim
diff --git a/tests/tstrset.nim b/tests/accept/compile/tstrset.nim
index e19ccee4d..e19ccee4d 100644
--- a/tests/tstrset.nim
+++ b/tests/accept/compile/tstrset.nim
diff --git a/tests/tstrtabs.nim b/tests/accept/compile/tstrtabs.nim
index 299db609d..299db609d 100644
--- a/tests/tstrtabs.nim
+++ b/tests/accept/compile/tstrtabs.nim
diff --git a/tests/ttempl.nim b/tests/accept/compile/ttempl.nim
index dcf096671..dcf096671 100644
--- a/tests/ttempl.nim
+++ b/tests/accept/compile/ttempl.nim
diff --git a/tests/ttempl3.nim b/tests/accept/compile/ttempl3.nim
index 0c8fa9a94..0c8fa9a94 100644
--- a/tests/ttempl3.nim
+++ b/tests/accept/compile/ttempl3.nim
diff --git a/tests/ttime.nim b/tests/accept/compile/ttime.nim
index bad818816..bad818816 100644
--- a/tests/ttime.nim
+++ b/tests/accept/compile/ttime.nim
diff --git a/tests/ttuple1.nim b/tests/accept/compile/ttuple1.nim
index 5787cc309..5787cc309 100644
--- a/tests/ttuple1.nim
+++ b/tests/accept/compile/ttuple1.nim
diff --git a/tests/tvarious.nim b/tests/accept/compile/tvarious.nim
index 52dd46184..52dd46184 100644
--- a/tests/tvarious.nim
+++ b/tests/accept/compile/tvarious.nim
diff --git a/tests/twalker.nim b/tests/accept/compile/twalker.nim
index ba89ee7c6..ba89ee7c6 100644
--- a/tests/twalker.nim
+++ b/tests/accept/compile/twalker.nim
diff --git a/tests/typalias.nim b/tests/accept/compile/typalias.nim
index ba9f38ed9..ba9f38ed9 100644
--- a/tests/typalias.nim
+++ b/tests/accept/compile/typalias.nim
diff --git a/tests/tack.nim b/tests/accept/run/tack.nim
index 59535e547..59535e547 100644
--- a/tests/tack.nim
+++ b/tests/accept/run/tack.nim
diff --git a/tests/tambsym2.nim b/tests/accept/run/tambsym2.nim
index 9178182aa..9178182aa 100644
--- a/tests/tambsym2.nim
+++ b/tests/accept/run/tambsym2.nim
diff --git a/tests/tambsys.nim b/tests/accept/run/tambsys.nim
index bb2622824..bb2622824 100644
--- a/tests/tambsys.nim
+++ b/tests/accept/run/tambsys.nim
diff --git a/tests/tarray.nim b/tests/accept/run/tarray.nim
index 252cbd991..252cbd991 100644
--- a/tests/tarray.nim
+++ b/tests/accept/run/tarray.nim
diff --git a/tests/tarray2.nim b/tests/accept/run/tarray2.nim
index eb0b75692..eb0b75692 100644
--- a/tests/tarray2.nim
+++ b/tests/accept/run/tarray2.nim
diff --git a/tests/tassert.nim b/tests/accept/run/tassert.nim
index 9fd18e9bd..9fd18e9bd 100644
--- a/tests/tassert.nim
+++ b/tests/accept/run/tassert.nim
diff --git a/tests/tbind1.nim b/tests/accept/run/tbind1.nim
index e7eed3e4f..e7eed3e4f 100644
--- a/tests/tbind1.nim
+++ b/tests/accept/run/tbind1.nim
diff --git a/tests/tbind3.nim b/tests/accept/run/tbind3.nim
index f7fb4865b..f7fb4865b 100644
--- a/tests/tbind3.nim
+++ b/tests/accept/run/tbind3.nim
diff --git a/tests/tbintre2.nim b/tests/accept/run/tbintre2.nim
index dedc87705..dedc87705 100644
--- a/tests/tbintre2.nim
+++ b/tests/accept/run/tbintre2.nim
diff --git a/tests/tbintree.nim b/tests/accept/run/tbintree.nim
index 89126eaa5..89126eaa5 100644
--- a/tests/tbintree.nim
+++ b/tests/accept/run/tbintree.nim
diff --git a/tests/tcasestm.nim b/tests/accept/run/tcasestm.nim
index 277b0bab1..277b0bab1 100644
--- a/tests/tcasestm.nim
+++ b/tests/accept/run/tcasestm.nim
diff --git a/tests/tclosure.nim b/tests/accept/run/tclosure.nim
index 761e9a8f3..761e9a8f3 100644
--- a/tests/tclosure.nim
+++ b/tests/accept/run/tclosure.nim
diff --git a/tests/tcnstseq.nim b/tests/accept/run/tcnstseq.nim
index 4f389bb3b..4f389bb3b 100644
--- a/tests/tcnstseq.nim
+++ b/tests/accept/run/tcnstseq.nim
diff --git a/tests/tconstr2.nim b/tests/accept/run/tconstr2.nim
index 7687a416c..7687a416c 100644
--- a/tests/tconstr2.nim
+++ b/tests/accept/run/tconstr2.nim
diff --git a/tests/tcopy.nim b/tests/accept/run/tcopy.nim
index 6cb2ec14c..6cb2ec14c 100644
--- a/tests/tcopy.nim
+++ b/tests/accept/run/tcopy.nim
diff --git a/tests/tcurrncy.nim b/tests/accept/run/tcurrncy.nim
index fa08d620b..fa08d620b 100644
--- a/tests/tcurrncy.nim
+++ b/tests/accept/run/tcurrncy.nim
diff --git a/tests/tfinally.nim b/tests/accept/run/tfinally.nim
index df6397125..df6397125 100644
--- a/tests/tfinally.nim
+++ b/tests/accept/run/tfinally.nim
diff --git a/tests/tfloat1.nim b/tests/accept/run/tfloat1.nim
index 89911dd61..89911dd61 100644
--- a/tests/tfloat1.nim
+++ b/tests/accept/run/tfloat1.nim
diff --git a/tests/tfloat2.nim b/tests/accept/run/tfloat2.nim
index 92421d446..92421d446 100644
--- a/tests/tfloat2.nim
+++ b/tests/accept/run/tfloat2.nim
diff --git a/tests/tformat.nim b/tests/accept/run/tformat.nim
index aba35504b..aba35504b 100644
--- a/tests/tformat.nim
+++ b/tests/accept/run/tformat.nim
diff --git a/tests/thintoff.nim b/tests/accept/run/thintoff.nim
index 7aff283d6..7aff283d6 100644
--- a/tests/thintoff.nim
+++ b/tests/accept/run/thintoff.nim
diff --git a/tests/tinit.nim b/tests/accept/run/tinit.nim
index 85475ce94..85475ce94 100644
--- a/tests/tinit.nim
+++ b/tests/accept/run/tinit.nim
diff --git a/tests/tints.nim b/tests/accept/run/tints.nim
index f2b52c134..f2b52c134 100644
--- a/tests/tints.nim
+++ b/tests/accept/run/tints.nim
diff --git a/tests/tisopr.nim b/tests/accept/run/tisopr.nim
index d52859b09..d52859b09 100644
--- a/tests/tisopr.nim
+++ b/tests/accept/run/tisopr.nim
diff --git a/tests/titer2.nim b/tests/accept/run/titer2.nim
index b9cdb53fe..b9cdb53fe 100644
--- a/tests/titer2.nim
+++ b/tests/accept/run/titer2.nim
diff --git a/tests/titer3.nim b/tests/accept/run/titer3.nim
index d0e121445..d0e121445 100644
--- a/tests/titer3.nim
+++ b/tests/accept/run/titer3.nim
diff --git a/tests/titer5.nim b/tests/accept/run/titer5.nim
index 1ac37ba66..1ac37ba66 100644
--- a/tests/titer5.nim
+++ b/tests/accept/run/titer5.nim
diff --git a/tests/tlowhigh.nim b/tests/accept/run/tlowhigh.nim
index 79f5c5b95..79f5c5b95 100644
--- a/tests/tlowhigh.nim
+++ b/tests/accept/run/tlowhigh.nim
diff --git a/tests/tmatrix.nim b/tests/accept/run/tmatrix.nim
index a162d0f10..a162d0f10 100644
--- a/tests/tmatrix.nim
+++ b/tests/accept/run/tmatrix.nim
diff --git a/tests/tmultim1.nim b/tests/accept/run/tmultim1.nim
index 5d807e4c9..5d807e4c9 100644
--- a/tests/tmultim1.nim
+++ b/tests/accept/run/tmultim1.nim
diff --git a/tests/tmultim2.nim b/tests/accept/run/tmultim2.nim
index bf3b5fd6e..bf3b5fd6e 100644
--- a/tests/tmultim2.nim
+++ b/tests/accept/run/tmultim2.nim
diff --git a/tests/tnestif.nim b/tests/accept/run/tnestif.nim
index 558fe8d07..558fe8d07 100644
--- a/tests/tnestif.nim
+++ b/tests/accept/run/tnestif.nim
diff --git a/tests/tnestprc.nim b/tests/accept/run/tnestprc.nim
index b7326e032..b7326e032 100644
--- a/tests/tnestprc.nim
+++ b/tests/accept/run/tnestprc.nim
diff --git a/tests/toop1.nim b/tests/accept/run/toop1.nim
index 8bae002e7..8bae002e7 100644
--- a/tests/toop1.nim
+++ b/tests/accept/run/toop1.nim
diff --git a/tests/topenarrayrepr.nim b/tests/accept/run/topenarrayrepr.nim
index 7e976540f..7e976540f 100644
--- a/tests/topenarrayrepr.nim
+++ b/tests/accept/run/topenarrayrepr.nim
diff --git a/tests/topenlen.nim b/tests/accept/run/topenlen.nim
index b9d7fbc2d..b9d7fbc2d 100644
--- a/tests/topenlen.nim
+++ b/tests/accept/run/topenlen.nim
diff --git a/tests/toverflw.nim b/tests/accept/run/toverflw.nim
index c8f194e68..c8f194e68 100644
--- a/tests/toverflw.nim
+++ b/tests/accept/run/toverflw.nim
diff --git a/tests/toverl2.nim b/tests/accept/run/toverl2.nim
index 2d1225c6f..2d1225c6f 100644
--- a/tests/toverl2.nim
+++ b/tests/accept/run/toverl2.nim
diff --git a/tests/toverlop.nim b/tests/accept/run/toverlop.nim
index f11275644..f11275644 100644
--- a/tests/toverlop.nim
+++ b/tests/accept/run/toverlop.nim
diff --git a/tests/toverwr.nim b/tests/accept/run/toverwr.nim
index f2b42df15..f2b42df15 100644
--- a/tests/toverwr.nim
+++ b/tests/accept/run/toverwr.nim
diff --git a/tests/tovfint.nim b/tests/accept/run/tovfint.nim
index 91eda8d0b..91eda8d0b 100644
--- a/tests/tovfint.nim
+++ b/tests/accept/run/tovfint.nim
diff --git a/tests/tpos.nim b/tests/accept/run/tpos.nim
index 114d39c05..114d39c05 100644
--- a/tests/tpos.nim
+++ b/tests/accept/run/tpos.nim
diff --git a/tests/tprintf.nim b/tests/accept/run/tprintf.nim
index 14687a937..14687a937 100644
--- a/tests/tprintf.nim
+++ b/tests/accept/run/tprintf.nim
diff --git a/tests/tprocvar.nim b/tests/accept/run/tprocvar.nim
index f51543dfa..f51543dfa 100644
--- a/tests/tprocvar.nim
+++ b/tests/accept/run/tprocvar.nim
diff --git a/tests/tquotewords.nim b/tests/accept/run/tquotewords.nim
index 462293b40..462293b40 100644
--- a/tests/tquotewords.nim
+++ b/tests/accept/run/tquotewords.nim
diff --git a/tests/tregex.nim b/tests/accept/run/tregex.nim
index d9d22d603..d9d22d603 100644
--- a/tests/tregex.nim
+++ b/tests/accept/run/tregex.nim
diff --git a/tests/treguse.nim b/tests/accept/run/treguse.nim
index dc805fc70..dc805fc70 100644
--- a/tests/treguse.nim
+++ b/tests/accept/run/treguse.nim
diff --git a/tests/tromans.nim b/tests/accept/run/tromans.nim
index 12deca1ea..12deca1ea 100644
--- a/tests/tromans.nim
+++ b/tests/accept/run/tromans.nim
diff --git a/tests/tseqcon.nim b/tests/accept/run/tseqcon.nim
index 935da86b5..935da86b5 100644
--- a/tests/tseqcon.nim
+++ b/tests/accept/run/tseqcon.nim
diff --git a/tests/tsets.nim b/tests/accept/run/tsets.nim
index 08ab3e54b..08ab3e54b 100644
--- a/tests/tsets.nim
+++ b/tests/accept/run/tsets.nim
diff --git a/tests/tsidee2.nim b/tests/accept/run/tsidee2.nim
index 2eaec01d7..2eaec01d7 100644
--- a/tests/tsidee2.nim
+++ b/tests/accept/run/tsidee2.nim
diff --git a/tests/tsidee3.nim b/tests/accept/run/tsidee3.nim
index be94192e7..be94192e7 100644
--- a/tests/tsidee3.nim
+++ b/tests/accept/run/tsidee3.nim
diff --git a/tests/tsimmeth.nim b/tests/accept/run/tsimmeth.nim
index 3f5f810e6..3f5f810e6 100644
--- a/tests/tsimmeth.nim
+++ b/tests/accept/run/tsimmeth.nim
diff --git a/tests/tsplit.nim b/tests/accept/run/tsplit.nim
index 711696b9e..711696b9e 100644
--- a/tests/tsplit.nim
+++ b/tests/accept/run/tsplit.nim
diff --git a/tests/tstrange.nim b/tests/accept/run/tstrange.nim
index 13aab2302..13aab2302 100644
--- a/tests/tstrange.nim
+++ b/tests/accept/run/tstrange.nim
diff --git a/tests/tstrlits.nim b/tests/accept/run/tstrlits.nim
index 48ae08212..48ae08212 100644
--- a/tests/tstrlits.nim
+++ b/tests/accept/run/tstrlits.nim
diff --git a/tests/tstrutil.nim b/tests/accept/run/tstrutil.nim
index 0468dfa0c..0468dfa0c 100644
--- a/tests/tstrutil.nim
+++ b/tests/accept/run/tstrutil.nim
diff --git a/tests/tvardecl.nim b/tests/accept/run/tvardecl.nim
index 496601e3a..496601e3a 100644
--- a/tests/tvardecl.nim
+++ b/tests/accept/run/tvardecl.nim
diff --git a/tests/tvarnums.nim b/tests/accept/run/tvarnums.nim
index 1b683ad94..1b683ad94 100644
--- a/tests/tvarnums.nim
+++ b/tests/accept/run/tvarnums.nim
diff --git a/tests/tvartup.nim b/tests/accept/run/tvartup.nim
index 05b00b207..05b00b207 100644
--- a/tests/tvartup.nim
+++ b/tests/accept/run/tvartup.nim
diff --git a/tests/gc/gcbench.nim b/tests/gc/gcbench.nim
new file mode 100644
index 000000000..d9e152326
--- /dev/null
+++ b/tests/gc/gcbench.nim
@@ -0,0 +1,163 @@
+# This is adapted from a benchmark written by John Ellis and Pete Kovac

+# of Post Communications.

+# It was modified by Hans Boehm of Silicon Graphics.

+#

+# This is no substitute for real applications. No actual application

+# is likely to behave in exactly this way. However, this benchmark was

+# designed to be more representative of real applications than other

+# Java GC benchmarks of which we are aware.

+# It attempts to model those properties of allocation requests that

+# are important to current GC techniques.

+# It is designed to be used either to obtain a single overall performance

+# number, or to give a more detailed estimate of how collector

+# performance varies with object lifetimes. It prints the time

+# required to allocate and collect balanced binary trees of various

+# sizes. Smaller trees result in shorter object lifetimes. Each cycle

+# allocates roughly the same amount of memory.

+# Two data structures are kept around during the entire process, so

+# that the measured performance is representative of applications

+# that maintain some live in-memory data. One of these is a tree

+# containing many pointers. The other is a large array containing

+# double precision floating point numbers. Both should be of comparable

+# size.

+#

+# The results are only really meaningful together with a specification

+# of how much memory was used. It is possible to trade memory for

+# better time performance. This benchmark should be run in a 32 MB

+# heap, though we don't currently know how to enforce that uniformly.

+#

+# Unlike the original Ellis and Kovac benchmark, we do not attempt

+# measure pause times. This facility should eventually be added back

+# in. There are several reasons for omitting it for now.  The original

+# implementation depended on assumptions about the thread scheduler

+# that don't hold uniformly. The results really measure both the

+# scheduler and GC. Pause time measurements tend to not fit well with

+# current benchmark suites. As far as we know, none of the current

+# commercial Java implementations seriously attempt to minimize GC pause

+# times.

+#

+# Known deficiencies:

+# - No way to check on memory use

+# - No cyclic data structures

+# - No attempt to measure variation with object size

+# - Results are sensitive to locking cost, but we dont

+#   check for proper locking

+#

+

+import

+  strutils, times

+

+type

+  PNode = ref TNode

+  TNode {.final.} = object

+    left, right: PNode

+    i, j: int

+

+proc newNode(L, r: PNode): PNode =

+  new(result)

+  result.left = L

+  result.right = r

+

+const

+  kStretchTreeDepth = 18 # about 16Mb

+  kLongLivedTreeDepth = 16  # about 4Mb

+  kArraySize  = 500000  # about 4Mb

+  kMinTreeDepth = 4

+  kMaxTreeDepth = 16

+

+# Nodes used by a tree of a given size

+proc TreeSize(i: int): int = return ((1 shl (i + 1)) - 1)

+

+# Number of iterations to use for a given tree depth

+proc NumIters(i: int): int =

+  return 2 * TreeSize(kStretchTreeDepth) div TreeSize(i)

+

+# Build tree top down, assigning to older objects.

+proc Populate(iDepth: int, thisNode: PNode) =

+  if iDepth <= 0:

+    return

+  else:

+    new(thisNode.left)

+    new(thisNode.right)

+    Populate(iDepth-1, thisNode.left)

+    Populate(iDepth-1, thisNode.right)

+

+# Build tree bottom-up

+proc MakeTree(iDepth: int): PNode =

+  if iDepth <= 0:

+    new(result)

+  else:

+    return newNode(MakeTree(iDepth-1), MakeTree(iDepth-1))

+

+proc PrintDiagnostics() =

+  echo("Total memory available: " & $getTotalMem() & " bytes")

+  echo("Free memory: " & $getFreeMem() & " bytes")

+

+proc TimeConstruction(depth: int) =

+  var

+    root, tempTree: PNode

+    t: int

+    iNumIters: int

+

+  iNumIters = NumIters(depth)

+

+  echo("Creating " & $iNumIters & " trees of depth " & $depth)

+  t = getStartMilsecs()

+  for i in 0..iNumIters-1:

+    new(tempTree)

+    Populate(depth, tempTree)

+    tempTree = nil

+  echo("\tTop down construction took " & $(getStartMilsecs() - t) & "msecs")

+  t = getStartMilsecs()

+  for i in 0..iNumIters-1:

+    tempTree = MakeTree(depth)

+    tempTree = nil

+  echo("\tBottom up construction took " & $(getStartMilsecs() - t) & "msecs")

+

+type

+  tMyArray = seq[float]

+

+proc main() =

+  var

+    root, longLivedTree, tempTree: PNode

+    t: int

+    myarray: tMyArray

+

+  echo("Garbage Collector Test")

+  echo(" Stretching memory with a binary tree of depth " & $kStretchTreeDepth)

+  PrintDiagnostics()

+  t = getStartMilsecs()

+

+  # Stretch the memory space quickly

+  tempTree = MakeTree(kStretchTreeDepth)

+  tempTree = nil

+

+  # Create a long lived object

+  echo(" Creating a long-lived binary tree of depth " &

+        $kLongLivedTreeDepth)

+  new(longLivedTree)

+  Populate(kLongLivedTreeDepth, longLivedTree)

+

+  # Create long-lived array, filling half of it

+  echo(" Creating a long-lived array of " & $kArraySize & " doubles")

+  newSeq(myarray, kArraySize)

+  for i in 0..kArraySize div 2 -1:

+    myarray[i] = 1.0 / toFloat(i)

+

+  PrintDiagnostics()

+

+  var d = kMinTreeDepth

+  while d <= kMaxTreeDepth:

+    TimeConstruction(d)

+    inc(d, 2)

+

+  if longLivedTree == nil or myarray[1000] != 1.0/1000.0:

+    echo("Failed")

+    # fake reference to LongLivedTree

+    # and array to keep them from being optimized away

+

+  var elapsed = getStartMilsecs() - t

+  PrintDiagnostics()

+  echo("Completed in " & $elapsed & "ms.")

+

+main()

diff --git a/tests/gctest.nim b/tests/gc/gctest.nim
index f58dc3217..f58dc3217 100644
--- a/tests/gctest.nim
+++ b/tests/gc/gctest.nim
diff --git a/tests/gcbench.nim b/tests/gcbench.nim
deleted file mode 100644
index 72daad210..000000000
--- a/tests/gcbench.nim
+++ /dev/null
@@ -1,171 +0,0 @@
-# This is adapted from a benchmark written by John Ellis and Pete Kovac

-#   of Post Communications.

-#   It was modified by Hans Boehm of Silicon Graphics.

-#

-# 	This is no substitute for real applications. No actual application

-#	is likely to behave in exactly this way. However, this benchmark was

-#	designed to be more representative of real applications than other

-#	Java GC benchmarks of which we are aware.

-#	It attempts to model those properties of allocation requests that

-#	are important to current GC techniques.

-#	It is designed to be used either to obtain a single overall performance

-#	number, or to give a more detailed estimate of how collector

-#	performance varies with object lifetimes. It prints the time

-#	required to allocate and collect balanced binary trees of various

-#	sizes. Smaller trees result in shorter object lifetimes. Each cycle

-#	allocates roughly the same amount of memory.

-#	Two data structures are kept around during the entire process, so

-#	that the measured performance is representative of applications

-#	that maintain some live in-memory data. One of these is a tree

-#	containing many pointers. The other is a large array containing

-#	double precision floating point numbers. Both should be of comparable

-#	size.

-#

-#	The results are only really meaningful together with a specification

-#	of how much memory was used. It is possible to trade memory for

-#	better time performance. This benchmark should be run in a 32 MB

-#	heap, though we don't currently know how to enforce that uniformly.

-#

-#	Unlike the original Ellis and Kovac benchmark, we do not attempt

-# measure pause times. This facility should eventually be added back

-#	in. There are several reasons for omitting it for now.  The original

-#	implementation depended on assumptions about the thread scheduler

-#	that don't hold uniformly. The results really measure both the

-#	scheduler and GC. Pause time measurements tend to not fit well with

-#	current benchmark suites. As far as we know, none of the current

-#	commercial Java implementations seriously attempt to minimize GC pause

-#	times.

-#

-#	Known deficiencies:

-#		- No way to check on memory use

-#		- No cyclic data structures

-#		- No attempt to measure variation with object size

-#		- Results are sensitive to locking cost, but we dont

-#		  check for proper locking

-#

-

-import

-  strutils, times

-

-type

-  PNode = ref TNode

-  TNode {.final.} = object

-    left, right: PNode

-    i, j: int

-

-proc newNode(l, r: PNode): PNode =

-  new(result)

-  result.left = l

-  result.right = r

-

-const

-  kStretchTreeDepth = 18 # about 16Mb

-  kLongLivedTreeDepth = 16  # about 4Mb

-  kArraySize  = 500000  # about 4Mb

-  kMinTreeDepth = 4

-  kMaxTreeDepth = 16

-

-# Nodes used by a tree of a given size

-proc TreeSize(i: int): int = return ((1 shl (i + 1)) - 1)

-

-# Number of iterations to use for a given tree depth

-proc NumIters(i: int): int =

-  return 2 * TreeSize(kStretchTreeDepth) div TreeSize(i)

-

-# Build tree top down, assigning to older objects.

-proc Populate(iDepth: int, thisNode: PNode) =

-  if iDepth <= 0:

-    return

-  else:

-    new(thisNode.left)

-    new(thisNode.right)

-    Populate(iDepth-1, thisNode.left)

-    Populate(iDepth-1, thisNode.right)

-

-# Build tree bottom-up

-proc MakeTree(iDepth: int): PNode =

-  if iDepth <= 0:

-    new(result)

-  else:

-    return newNode(MakeTree(iDepth-1),

-                   MakeTree(iDepth-1))

-

-proc PrintDiagnostics() =

-  var

-    FreeMemory = getFreeMem()

-    TotalMemory = getTotalMem()

-

-  echo("Total memory available: " & $TotalMemory & " bytes")

-  echo("Free memory: " & $FreeMemory & " bytes")

-

-proc TimeConstruction(depth: int) =

-  var

-    root, tempTree: PNode

-    t: int

-    iNumIters: int

-

-  iNumIters = NumIters(depth)

-

-  echo("Creating " & $iNumIters & " trees of depth " & $depth)

-  t = getStartMilsecs()

-  for i in 0..iNumIters-1:

-    new(tempTree)

-    Populate(depth, tempTree)

-    tempTree = nil

-  echo("\tTop down construction took " &

-                     $(getStartMilsecs() - t) & "msecs")

-  t = getStartMilsecs()

-  for i in 0..iNumIters-1:

-    tempTree = MakeTree(depth)

-    tempTree = nil

-  echo("\tBottom up construction took " &

-                     $(getStartMilsecs() - t) & "msecs")

-

-type

-  tMyArray = seq[float]

-

-proc main() =

-  var

-    root, longLivedTree, tempTree: PNode

-    t: int

-    myarray: tMyArray

-

-  echo("Garbage Collector Test")

-  echo(" Stretching memory with a binary tree of depth " &

-       $kStretchTreeDepth)

-  PrintDiagnostics()

-  t = getStartMilsecs()

-

-  # Stretch the memory space quickly

-  tempTree = MakeTree(kStretchTreeDepth)

-  tempTree = nil

-

-  # Create a long lived object

-  echo(" Creating a long-lived binary tree of depth " &

-        $kLongLivedTreeDepth)

-  new(longLivedTree)

-  Populate(kLongLivedTreeDepth, longLivedTree)

-

-  # Create long-lived array, filling half of it

-  echo(" Creating a long-lived array of " & $kArraySize & " doubles")

-  newSeq(myarray, kArraySize)

-  for i in 0..kArraySize div 2 -1:

-    myarray[i] = 1.0 / toFloat(i)

-

-  PrintDiagnostics()

-

-  var d = kMinTreeDepth

-  while d <= kMaxTreeDepth:

-    TimeConstruction(d)

-    inc(d, 2)

-

-  if longLivedTree == nil or myarray[1000] != 1.0/1000.0:

-    echo("Failed")

-    # fake reference to LongLivedTree

-    # and array to keep them from being optimized away

-

-  var elapsed = getStartMilsecs() - t

-  PrintDiagnostics()

-  echo("Completed in " & $elapsed & "ms.")

-

-main()

diff --git a/tests/mbind3.nim b/tests/mbind3.nim
deleted file mode 100644
index 586222eb8..000000000
--- a/tests/mbind3.nim
+++ /dev/null
@@ -1,9 +0,0 @@
-# Module A
-var 
-  lastId = 0
-
-template genId*: expr =
-  inc(bind lastId)
-  lastId
-
-
diff --git a/tests/mbind4.nim b/tests/mbind4.nim
deleted file mode 100644
index 53b8331cd..000000000
--- a/tests/mbind4.nim
+++ /dev/null
@@ -1,9 +0,0 @@
-# Module A
-var 
-  lastId = 0
-
-template genId*: expr =
-  inc(lastId)
-  lastId
-
-
diff --git a/tests/mvarious.nim b/tests/mvarious.nim
deleted file mode 100644
index 333b34d33..000000000
--- a/tests/mvarious.nim
+++ /dev/null
@@ -1,6 +0,0 @@
-# Test a submodule

-

-#type

-#  TStringArr = array [0.. *] of string

-

-proc exportme* = nil

diff --git a/tests/99bottles.nim b/tests/reject/99bottles.nim
index 14904ac0f..14904ac0f 100644
--- a/tests/99bottles.nim
+++ b/tests/reject/99bottles.nim
diff --git a/tests/t99bott.nim b/tests/reject/t99bott.nim
index 4dfb11701..4dfb11701 100644
--- a/tests/t99bott.nim
+++ b/tests/reject/t99bott.nim
diff --git a/tests/tadrdisc.nim b/tests/reject/tadrdisc.nim
index a7118455f..a7118455f 100644
--- a/tests/tadrdisc.nim
+++ b/tests/reject/tadrdisc.nim
diff --git a/tests/tambsym.nim b/tests/reject/tambsym.nim
index b8eae3ba3..b8eae3ba3 100644
--- a/tests/tambsym.nim
+++ b/tests/reject/tambsym.nim
diff --git a/tests/tambsym3.nim b/tests/reject/tambsym3.nim
index 96a5098c9..96a5098c9 100644
--- a/tests/tambsym3.nim
+++ b/tests/reject/tambsym3.nim
diff --git a/tests/tbind2.nim b/tests/reject/tbind2.nim
index 41711083f..41711083f 100644
--- a/tests/tbind2.nim
+++ b/tests/reject/tbind2.nim
diff --git a/tests/tbind4.nim b/tests/reject/tbind4.nim
index d0b5fc062..d0b5fc062 100644
--- a/tests/tbind4.nim
+++ b/tests/reject/tbind4.nim
diff --git a/tests/tblock1.nim b/tests/reject/tblock1.nim
index 0bea7ae7f..0bea7ae7f 100644
--- a/tests/tblock1.nim
+++ b/tests/reject/tblock1.nim
diff --git a/tests/tconstr1.nim b/tests/reject/tconstr1.nim
index 488170350..488170350 100644
--- a/tests/tconstr1.nim
+++ b/tests/reject/tconstr1.nim
diff --git a/tests/tillrec.nim b/tests/reject/tillrec.nim
index 21ce19889..21ce19889 100644
--- a/tests/tillrec.nim
+++ b/tests/reject/tillrec.nim
diff --git a/tests/tinout.nim b/tests/reject/tinout.nim
index b4fe2fb10..b4fe2fb10 100644
--- a/tests/tinout.nim
+++ b/tests/reject/tinout.nim
diff --git a/tests/tinvalidnewseq.nim b/tests/reject/tinvalidnewseq.nim
index e2a3736c3..e2a3736c3 100644
--- a/tests/tinvalidnewseq.nim
+++ b/tests/reject/tinvalidnewseq.nim
diff --git a/tests/tinvwhen.nim b/tests/reject/tinvwhen.nim
index 8dc8cbf50..8dc8cbf50 100644
--- a/tests/tinvwhen.nim
+++ b/tests/reject/tinvwhen.nim
diff --git a/tests/titer4.nim b/tests/reject/titer4.nim
index 376522482..376522482 100644
--- a/tests/titer4.nim
+++ b/tests/reject/titer4.nim
diff --git a/tests/tnamspc.nim b/tests/reject/tnamspc.nim
index eddaacfd8..eddaacfd8 100644
--- a/tests/tnamspc.nim
+++ b/tests/reject/tnamspc.nim
diff --git a/tests/tnoop.nim b/tests/reject/tnoop.nim
index d097553e8..d097553e8 100644
--- a/tests/tnoop.nim
+++ b/tests/reject/tnoop.nim
diff --git a/tests/tnot.nim b/tests/reject/tnot.nim
index cda551654..cda551654 100644
--- a/tests/tnot.nim
+++ b/tests/reject/tnot.nim
diff --git a/tests/topaque.nim b/tests/reject/topaque.nim
index 7553a749e..7553a749e 100644
--- a/tests/topaque.nim
+++ b/tests/reject/topaque.nim
diff --git a/tests/topena1.nim b/tests/reject/topena1.nim
index 7351edf55..7351edf55 100644
--- a/tests/topena1.nim
+++ b/tests/reject/topena1.nim
diff --git a/tests/toverl.nim b/tests/reject/toverl.nim
index 94f251cac..94f251cac 100644
--- a/tests/toverl.nim
+++ b/tests/reject/toverl.nim
diff --git a/tests/trawstr.nim b/tests/reject/trawstr.nim
index 7b2db0335..7b2db0335 100644
--- a/tests/trawstr.nim
+++ b/tests/reject/trawstr.nim
diff --git a/tests/trecinca.nim b/tests/reject/trecinca.nim
index d78fee233..d78fee233 100644
--- a/tests/trecinca.nim
+++ b/tests/reject/trecinca.nim
diff --git a/tests/trecincb.nim b/tests/reject/trecincb.nim
index 6191671a1..6191671a1 100644
--- a/tests/trecincb.nim
+++ b/tests/reject/trecincb.nim
diff --git a/tests/treciter.nim b/tests/reject/treciter.nim
index 662239285..662239285 100644
--- a/tests/treciter.nim
+++ b/tests/reject/treciter.nim
diff --git a/tests/trectype.nim b/tests/reject/trectype.nim
index a7a6f56e0..a7a6f56e0 100644
--- a/tests/trectype.nim
+++ b/tests/reject/trectype.nim
diff --git a/tests/trefs.nim b/tests/reject/trefs.nim
index ab3934088..ab3934088 100644
--- a/tests/trefs.nim
+++ b/tests/reject/trefs.nim
diff --git a/tests/tsidee1.nim b/tests/reject/tsidee1.nim
index 3bd520680..3bd520680 100644
--- a/tests/tsidee1.nim
+++ b/tests/reject/tsidee1.nim
diff --git a/tests/tsidee4.nim b/tests/reject/tsidee4.nim
index 55c474d10..55c474d10 100644
--- a/tests/tsidee4.nim
+++ b/tests/reject/tsidee4.nim
diff --git a/tests/tsimtych.nim b/tests/reject/tsimtych.nim
index b100c62e3..b100c62e3 100644
--- a/tests/tsimtych.nim
+++ b/tests/reject/tsimtych.nim
diff --git a/tests/tstatret.nim b/tests/reject/tstatret.nim
index ac93ac532..ac93ac532 100644
--- a/tests/tstatret.nim
+++ b/tests/reject/tstatret.nim
diff --git a/tests/tstmtexp.nim b/tests/reject/tstmtexp.nim
index f4d83e83f..f4d83e83f 100644
--- a/tests/tstmtexp.nim
+++ b/tests/reject/tstmtexp.nim
diff --git a/tests/ttempl2.nim b/tests/reject/ttempl2.nim
index fba6bd0cb..fba6bd0cb 100644
--- a/tests/ttempl2.nim
+++ b/tests/reject/ttempl2.nim
diff --git a/tests/tunderscores.nim b/tests/reject/tunderscores.nim
index 459cfda30..459cfda30 100644
--- a/tests/tunderscores.nim
+++ b/tests/reject/tunderscores.nim
diff --git a/tests/typredef.nim b/tests/reject/typredef.nim
index a77d91f40..a77d91f40 100644
--- a/tests/typredef.nim
+++ b/tests/reject/typredef.nim
diff --git a/tests/tester.nim b/tests/tester.nim
index 25a6dd428..bd1b56188 100644
--- a/tests/tester.nim
+++ b/tests/tester.nim
@@ -1,7 +1,7 @@
 #
 #
 #            Nimrod Tester
-#        (c) Copyright 2009 Andreas Rumpf
+#        (c) Copyright 2010 Andreas Rumpf
 #
 #    See the file "copying.txt", included in this
 #    distribution, for details about the copyright.
@@ -14,7 +14,7 @@
 ## directive.)
 ## The format for '#ERROR_IN' is:
 ##      #ERROR_IN filename linenumber
-## One can omit the extension of the filename ('.nim' is then assumed).
+## One can omit the extension of the filename ('.nim' is then used).
 ## Tests which contain none of the two directives should compile. Thus they
 ## are executed after successful compilation and their output is verified
 ## against the results specified with the '#OUT' directive.
diff --git a/tests/x11test.nim b/tests/x11test.nim
index 2769b6c74..db51df2e0 100644
--- a/tests/x11test.nim
+++ b/tests/x11test.nim
@@ -61,9 +61,9 @@ proc eventloop =
   discard XFlush(display)
   var num_events = int(XPending(display))
   while num_events != 0:
-     dec(num_events)
-     discard XNextEvent(display, addr(xev))
-     process_event()
+    dec(num_events)
+    discard XNextEvent(display, addr(xev))
+    process_event()
 
 create_window()
 while true: