Araq
ed0d9e271d
disallow negative indexing
2015-03-27 01:30:06 +01:00
Simon Hafner
5ecc461a94
Fixes #2030
2015-01-29 04:40:27 -06:00
Guillaume Gelin
3119fe087d
Happy new year!
2015-01-06 15:26:33 +01:00
Araq
73dda8a81d
fixes #1638
2014-12-17 21:52:01 +01:00
Araq
105a0616a9
implemented procCall builtin
2014-11-28 02:43:41 +01:00
Araq
5ab3542c18
fixes #939
2014-11-20 22:06:35 +01:00
Araq
57689037c5
fixes #916
2014-11-20 21:39:08 +01:00
Araq
279e897eab
bugfix: 'T = ref T' is an illegal recursive type
2014-10-02 16:15:16 +02:00
Araq
c95e47216f
Nimrod renamed to Nim
2014-08-28 10:01:20 +02:00
Araq
2f43fdb837
renamefest
2014-08-23 01:43:49 +02:00
Araq
678f3d7f5b
fixes constant array indexing bug
2014-06-30 16:45:55 +02:00
Araq
1df344dee3
attempt to fix the bootstrapping
2014-05-06 07:01:15 +02:00
Araq
fab8cee13d
minor tweaks; updated todo.txt
2014-04-25 19:54:42 +02:00
EXetoC
171f4a21e8
Fix spawn ICE on invalid argument.
2014-04-20 23:03:31 +02:00
Araq
62a10df765
fixes yet another option type
2014-04-03 07:54:58 +02:00
Araq
6e584c42c2
vm2: new representation of registers
2014-02-21 17:23:37 +01:00
Zahary Karadjov
3f71b7f1f6
implements #766 ;
...
expressions such as Type.field are now recognised by the compiler.
This also fixes a bug, preventing the user-defined to check for the presence of
regular fields in addition to procs
2014-01-24 23:52:52 +02:00
Araq
73c6efdf66
'nil' as a statement is deprecated, use an empty 'discard' instead
2014-01-19 16:54:59 +01:00
Zahary Karadjov
afddae5aaf
Merge branch 'upstream' into devel
...
Conflicts:
compiler/ccgutils.nim
compiler/msgs.nim
compiler/sem.nim
compiler/semexprs.nim
compiler/seminst.nim
compiler/semmagic.nim
compiler/semstmts.nim
compiler/semtypes.nim
compiler/semtypinst.nim
compiler/sigmatch.nim
compiler/types.nim
compiler/vmgen.nim
lib/core/macros.nim
lib/system.nim
tests/reject/tenummix.nim
web/news.txt
2013-12-29 17:21:00 +02:00
Zahary Karadjov
66a2556525
make more tests green
2013-12-29 00:00:37 +02:00
Araq
92b8fac94a
case consistency part 4
2013-12-27 23:10:36 +01:00
Zahary Karadjov
027f30610e
static params: expr[T] is now static[T]
...
This introduces tyStatic and successfully bootstraps and handles
few simple test cases. Static params within macros are no longer
treated as PNimrodNodes - they are now equivalent to constants
of the designated type.
2013-12-19 01:06:38 +02:00
Araq
29357ab556
more tests are green
2013-12-08 01:47:07 +01:00
Araq
8710118b2c
Merge branch 'master' of github.com:Araq/Nimrod
2013-08-30 12:44:27 +02:00
Araq
7056ceda67
float64 is now an alias to 'float'; fixes #545
2013-08-30 12:24:54 +02:00
Zahary Karadjov
fee2a7ecfa
Experimental support for delayed instantiation of generics
...
This postpones the semantic pass over the generic's body until
the generic is instantiated. There are several pros and cons for
this method and the capabilities that it enables may still be possible
in the old framework if we teach it a few new trick. Such an attempt
will follow in the next commits.
pros:
1) It allows macros to be expanded during generic instantiation that
will provide the body of the generic. See ``tmacrogenerics``.
2) The instantiation code is dramatically simplified. Dealing with unknown
types in the generic's body pre-pass requires a lot of hacky code and error
silencing in semTypeNode. See ``tgenericshardcases``.
cons:
1) There is a performance penalty of roughly 5% when bootstrapping.
2) Certain errors that used to be detected in the previous pre-pass won't
be detected with the new scheme until instantiation.
2013-08-23 01:10:20 +03:00
Araq
aefa0da8a6
new VM: implemented constructors and jump optimizer
2013-08-07 01:40:08 +02:00
Araq
2c3d1fa954
bugfix: gensym
2013-07-25 21:25:40 +02:00
Araq
b1d4dfa6b1
fixes #544
2013-07-24 22:32:09 +02:00
Araq
38ed2373ab
fixes #432 , fixes #427
2013-05-19 02:49:10 +02:00
Araq
2afadc5c9c
first steps to the expr/stmt unification
2013-04-30 02:38:49 +02:00
Araq
3cb3813eed
fixes #287 ; bugfix: subrange checking is performed again
2013-04-12 16:24:58 +02:00
Grzegorz Adam Hankiewicz
72a3e21f28
Removes executable bit for text files.
2013-03-16 23:53:07 +01:00
Araq
78b27ed7fa
bugfix: 'indexOf' for tuple fields works
2013-03-11 08:42:35 +01:00
Araq
225d657019
first steps to implement object construction expressions
2013-03-07 01:52:17 +01:00
Araq
5b0d8246f7
make some tests green
2013-03-03 12:05:03 +01:00
Zahary Karadjov
9c8bc3a244
the is operator now works with type classes and type variables
...
bugfixes:
the DLL tests were failing on Mac OS X, due to an incorrect DynlibFormat
2012-10-03 01:59:49 +03:00
Araq
af7c92c003
term rewriting macros fully implemented; still buggy
2012-09-03 00:55:44 +02:00
Araq
51de278bd4
next steps for tyVarargs/tyOpenArray split
2012-08-14 08:44:26 +02:00
Araq
43f057c5aa
got rid of some mAddU64 etc. magics
2012-07-20 07:52:04 +02:00
Araq
832da8a303
equality and hashing for closures
2012-07-17 17:26:02 +02:00
Araq
b4084df434
improved unsigned support
2012-07-14 14:03:13 +02:00
Araq
4966212141
more fixes for new integer promotion rules; fixes #152 ; fixes #157 ; fixes #156 ; fixes #155
2012-07-09 21:11:11 +02:00
Araq
121d4e0fc2
'addSon' for types deprecated for 'int literal type' analysis
2012-07-09 08:09:00 +02:00
Araq
4fbba0a65a
changed integer promotion rules; breaks bootstrapping and lots of code
2012-07-08 21:03:47 +02:00
Araq
36247e0947
added devel/logging; weakrefs test; next steps for proper unsigned support
2012-07-05 00:03:33 +02:00
Araq
2900ceae35
changed integer promotion rules; added math.fmod
2012-06-28 08:33:25 +02:00
Zahary Karadjov
e2d38a57ec
better support for unsigned integers.
2012-06-11 21:38:01 +03:00
Zahary Karadjov
a1da1f987b
Added system.staticExec proc for executing external command at compile-time
2012-06-02 19:51:49 +03:00
Zahary Karadjov
efb53233cb
the foundations of a type traits module; better error messages for expr, typedesc and typeclasses params
2012-04-06 13:46:31 +03:00