Commit graph

619 commits

Author SHA1 Message Date
Zahary Karadjov
2ceee884fe fix #6462 2017-12-21 11:08:45 +01:00
Veladus
15f72d0cf1 Now analyzes over magics instead of symbol names; but dosn't compile for me 2017-12-11 21:49:28 +01:00
Veladus
a15ddf4013 Improved error reporting 2017-12-11 21:48:22 +01:00
Veladus
2c886823e7 Fixed for diffrent Typeids of Excpetion for diffrent compilation units 2017-12-02 20:57:18 +01:00
Veladus
6a2b31226e Compiler now catches when an expression is raised which is no Exception 2017-12-02 17:54:35 +01:00
Araq
fa92c519aa more progress on destructors; removed old destructor based code as it proved confusing 2017-12-01 01:52:00 +01:00
Andreas Rumpf
617ba1a209 Merge branch 'devel' into araq 2017-11-07 11:17:20 +01:00
Andreas Rumpf
4e4d466d06 minor breaking change: for loop bodies now get their own scope 2017-11-05 16:53:05 +01:00
Andreas Rumpf
30b098fcaf wip 2017-11-02 15:39:44 +01:00
Andreas Rumpf
d52a1061b3 work in progress: new implementation for 'a[^1]' 2017-10-29 19:46:17 +01:00
Andreas Rumpf
70ea45cdba deprecated unary '<' 2017-10-29 08:37:13 +01:00
Andreas Rumpf
c17f6c7837 new feature: package level objects 2017-10-29 07:54:39 +01:00
Andreas Rumpf
7889692523 first implementation of package level types that allow forwarding across module boundaries 2017-10-28 15:28:59 +02:00
Andreas Rumpf
c6235920cb backend preparations for incomplete/forwarded object types 2017-10-28 13:46:43 +02:00
Araq
9df766491d default '=sink' and '=destroy' cannot be templates 2017-10-25 17:37:03 +02:00
Andreas Rumpf
8be60dc6bd allow 'block' and 'nkState' after return for easier state machine generation 2017-10-19 15:51:36 +02:00
Andreas Rumpf
58d5f96790 destructors: lift type bound ops to objects and arrays etc 2017-10-17 14:48:16 +02:00
Araq
45d74f4081 destructors: preparations for upcoming changes 2017-10-17 12:46:49 +02:00
Andreas Rumpf
8780d25e03 minor refactorings for better destructors 2017-10-14 20:37:49 +02:00
Andreas Rumpf
5dca695bcf new destroyer pass works with procs too 2017-10-13 07:00:52 +02:00
Andreas Rumpf
63530be0b8 introduce --newruntime switch for the upcoming destructors and move semantics 2017-10-13 06:38:59 +02:00
Andreas Rumpf
a2e4ab2e4e simple programs now work with the new destroyer pass 2017-10-12 17:42:15 +02:00
Andreas Rumpf
d6c401acfb code cleanups for the upcoming reworked destructors 2017-10-12 12:47:34 +02:00
Andreas Rumpf
ec253ada72 initial version of the new untested destructor pass 2017-10-12 11:32:29 +02:00
Andreas Rumpf
1063085850 fixes #6474 2017-10-10 13:57:03 +02:00
Araq
b2c358be96 the 'using construct is not .experimental anymore 2017-09-30 18:32:44 +02:00
Andreas Rumpf
e879da5791 some work to make 'opt' a first class type 2017-09-24 11:21:52 +02:00
Andreas Rumpf
be2e7290fb write tracking for funcs implemented 2017-09-23 23:29:23 +02:00
Andreas Rumpf
1c0c9d8959 make tests green again 2017-09-21 21:07:00 +02:00
Andreas Rumpf
2ad9a16e0a fixes anon procs created by macros 2017-07-11 18:07:34 +02:00
Andreas Rumpf
c1d061bb5a fixes #4898 2017-07-09 13:29:44 +02:00
Zahary Karadjov
21ce7b2af4 Fix #5888 2017-06-20 11:29:42 +02:00
Zahary Karadjov
16eb4b1fee Fix #5127 2017-06-20 11:29:42 +02:00
Zahary Karadjov
8f4b374327 Fix #4020; Better handling of templates within concepts 2017-06-20 11:29:42 +02:00
Zahary Karadjov
cd02561368 introduce a pre-processing pass for the concept bodies
fixes #4982
fixes #3805

close #3414
2017-06-20 11:29:42 +02:00
Yuriy Glukhov
58eae1171d Fixes #5995 2017-06-18 00:57:05 +03:00
Andreas Rumpf
55c244400d .partial object field names are left unmangled; mangling should be done by the macro instead 2017-06-05 10:30:24 +02:00
Andreas Rumpf
c59bc0cc18 first steps to allow easy functors via macros 2017-06-04 11:17:41 +02:00
Araq
8f67b90997 Merge branch 'araq2' into devel 2017-05-17 22:13:57 +02:00
Andreas Rumpf
7a95c961a7 cleanup of in/out covariance handling 2017-05-17 20:54:53 +02:00
Araq
943aaecbe7 Merge branch 'devel' of github.com:nim-lang/Nim into devel 2017-05-16 22:09:37 +02:00
Yuriy Glukhov
6599cae281 Async macro fixes (#5739) 2017-05-16 22:09:19 +02:00
Araq
ac3e7edfe4 weaken the rules for proc definition pragmas that have been forwarded 2017-05-16 22:07:44 +02:00
Zahary Karadjov
05bfa47996 fix tinvalidinout 2017-05-13 18:51:28 +03:00
Zahary Karadjov
b428da2cc2 work-around for defining imported types with weak covariance 2017-05-13 15:46:08 +03:00
Zahary Karadjov
0aede22e87 enforce the covariance rules for user-defined generic types 2017-05-13 14:38:07 +03:00
Zahary Karadjov
a3f19c87fb lift parameter-less do block to lambdas 2017-04-10 23:58:05 +03:00
Zahary Karadjov
987b522071 fix the do notation when used with procs 2017-04-09 22:59:24 +03:00
Zahary Karadjov
e9a3ffbc3d Restore the Nim's 0.14 proper handling of generic aliases
A more efficient implementation is possible by restoring the old
lifting ot tyGenericInvocation to tyGenericInst in liftTypeParam,
but this fix will suffice for now.

fixes #5087
fixes #5602
fixes #5641
fixes #5570
2017-04-08 17:28:19 +03:00
Zahary Karadjov
0b7321651e fix #5658 2017-04-07 21:53:27 +03:00