summary refs log tree commit diff stats
path: root/doc
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2011-09-20 00:56:48 +0200
committerAraq <rumpf_a@web.de>2011-09-20 00:56:48 +0200
commitfd62116f6eb80d1dd3d6cc745d80629ad32dca1a (patch)
treeac5cbd102ffa580e322eda22deeef9298babae4a /doc
parentdc3ace4f379931f2af4dd4a3cd2a0984a94865af (diff)
downloadNim-fd62116f6eb80d1dd3d6cc745d80629ad32dca1a.tar.gz
bugfixes for generics; new threads implementation still broken
Diffstat (limited to 'doc')
-rwxr-xr-xdoc/manual.txt27
1 files changed, 18 insertions, 9 deletions
diff --git a/doc/manual.txt b/doc/manual.txt
index f9a0b5dfc..2002a2461 100755
--- a/doc/manual.txt
+++ b/doc/manual.txt
@@ -433,6 +433,15 @@ have no side-effect can be used in constant expressions too:
     constEval = contains("abc", 'b') # computed at compile time!

 

 

+The rules for compile-time computability are: 

+

+1. Literals are compile-time computable.

+2. Procedure calls of the form ``p(X)`` are compile-time computable if

+   ``p`` is a proc without side-effects (see the `noSideEffect pragma`_ 

+   for details) and if ``X`` is a (possibly empty) list of compile-time 

+   computable arguments.

+

+

 Types

 -----

 

@@ -2900,17 +2909,17 @@ structure:
 

 Pure pragma

 -----------

-An object type can be marked with the `pure`:idx: pragma so that its type 
+An object type can be marked with the `pure`:idx: pragma so that its type 

 field which is used for runtime type identification is omitted. This is

 necessary for binary compatibility with other compiled languages.

-
-
-NoStackFrame pragma
--------------------
-A proc can be marked with the `noStackFrame`:idx: pragma to tell the compiler
-it should not generate a stack frame for the proc. There are also no exit
-statements like ``return result;`` generated. This is useful for procs that 
-only consist of an assembler statement.
+

+

+NoStackFrame pragma

+-------------------

+A proc can be marked with the `noStackFrame`:idx: pragma to tell the compiler

+it should not generate a stack frame for the proc. There are also no exit

+statements like ``return result;`` generated. This is useful for procs that 

+only consist of an assembler statement.

 

 

 error pragma