Zahary Karadjov
7fdf29937d
fix tgenericshardcases
2017-03-24 17:07:30 +02:00
Zahary Karadjov
cbf66e99a8
Working test cases for the sophisticated matrix library example from the manual
...
Fixed the dot operator when used within return types (see tgenericdotrettype)
Fixed the matching of generic concepts aliases used with the implicit generics style
2017-03-24 16:59:47 +02:00
Zahary Karadjov
52b241fd57
new type traits: GenericHead and StripGenericParams
2017-03-24 16:59:47 +02:00
Zahary Karadjov
74a80988d9
proper error reporting for concepts and the introduction of the {.explain.} pragma
2017-03-24 16:59:47 +02:00
Zahary Karadjov
644d645ea7
implement the special treatment of explicit type params in concepts
2017-03-24 16:58:15 +02:00
Zahary Karadjov
0f2c4be129
infer static parameters even when more complicated arithmetic is involved
2017-03-24 16:58:15 +02:00
Zahary Karadjov
815724db71
support the full range of type modifiers when declaring concept vars and testing proc signatures
2017-03-24 16:58:15 +02:00
Zahary Karadjov
66e0f0e19c
concept type params inference working in basic examples
2017-03-24 16:58:15 +02:00
andri lim
e99721a593
fixes #5360 , fixes #5238 ( #5539 ); fixes type alias inequality for types coming from templates/macros
2017-03-16 08:04:36 +01:00
andri lim
ebb15505dd
fixes #5231 inheriting from partial specialized generic object ( #5538 )
2017-03-15 07:59:34 +01:00
andri lim
0ff1190fe7
fixes #5264 ( #5520 ); inheriting from generic object
2017-03-14 21:40:09 +01:00
zah
1be0022e7c
Fixes #5167 and related problems ( #5475 )
...
This commit returns to a bit less strict checking of the number
of macro arguments, because some old immediate macros rely on a
behavior where even the arity of the macro is not being checked.
It may be better if such macros are just declared to use varargs[expr],
but this remains for another day.
2017-03-12 09:33:49 +01:00
Araq
ee13c8014b
nimsuggest: track type contexts
2017-03-01 09:57:51 +01:00
Araq
2589d69ed2
fixes #5430
2017-02-26 00:32:07 +01:00
Andreas Rumpf
46efaf294b
big compiler refactoring; avoid globals for multi method dispatcher generation
2017-02-22 16:27:52 +01:00
Araq
97e26967f1
fixes #5383
2017-02-16 00:43:14 +01:00
Andreas Rumpf
3c773c189f
fixes #4973
2017-02-01 12:09:24 +01:00
Araq
0e1304a3e2
the compiler uses tyAlias internally; tester compiles again
2016-11-16 00:13:45 +01:00
Araq
e6c5622aa7
removed tyArrayConstr completely from the compiler; introduced tyAlias instead in preparation for further bugfixes
2016-11-14 23:18:30 +01:00
Andreas Rumpf
479373ad79
fixes #4088
2016-09-11 23:48:59 +02:00
Andreas Rumpf
3a13706d7d
fixes #4673
2016-09-01 13:02:53 +02:00
Andreas Rumpf
afb0d2e145
partial fix for #4623
2016-08-26 15:39:21 +02:00
Andreas Rumpf
e92ccff57a
fixes #4550
2016-08-04 01:37:41 +02:00
Andreas Rumpf
39ebe2175b
compiler almost free of deprecated expr/stmt names
2016-07-30 16:34:42 +02:00
Andreas Rumpf
9605435f2e
get rid of deprecated toLower/toUpper
2016-07-19 19:28:01 +02:00
Andreas Rumpf
b47d9b7b91
fixes #4371
2016-07-08 10:34:12 +02:00
Andreas Rumpf
5f4e98bbc7
fixes #4395 , getType still not entirely correct
2016-06-23 12:41:45 +02:00
Anatoly Galiulin
88c99ad37c
Improve error message for exported generated types
2016-06-01 15:33:00 +06:00
Andreas Rumpf
f7f3d70a68
bugfix: make visibility more robust for macros
2016-06-01 11:01:03 +02:00
Andreas Rumpf
2ac3e12372
fixes #4066
2016-05-18 12:40:01 +02:00
Andreas Rumpf
e97d640ce8
fixes #3998
2016-03-28 02:26:38 +02:00
Andreas Rumpf
0baa1d9955
first version of .partial objects
2016-02-28 23:22:47 +01:00
Andreas Rumpf
38dee2095c
added 'sig' feature; removed tfShared support in the compiler
2016-02-28 19:56:41 +01:00
Andreas Rumpf
307a6095fa
made closure iterators tests green, updated docs
2015-12-31 00:16:38 +01:00
Andreas Rumpf
c1627354d1
first implementation of the new lambda-lifting pass; barely anything works
2015-12-26 00:42:30 +01:00
Araq
760242b870
removes 'x is iterator' special casing in the language
2015-12-03 01:08:03 +01:00
Araq
217e0ab6e9
lambda lifting support for iterToProc plugin
2015-12-01 00:53:30 +01:00
Araq
a2480efd68
allow 'nil ref T' as a first step which does nothing
2015-11-26 17:46:05 +01:00
Araq
fd80a51547
fixes #2594
2015-09-18 12:07:39 +02:00
Araq
0aa908c86c
clarify the meaning of the 'auto' metatype; 'auto' is now bind-multiple; fixes #3224
2015-09-14 20:25:52 +02:00
Araq
612cd25d5d
usage of NimNode triggers .compileTime context; fixes #1679
2015-09-14 12:41:49 +02:00
Araq
8ef66b973d
first attempt to fix 'a[i]' handling in generics
2015-09-12 10:55:28 +02:00
Araq
63cdcb2be1
implicit return types for iterators are now deprecated
2015-09-10 15:57:57 +02:00
Araq
f934c92132
fixes #3096
2015-08-09 23:37:13 +02:00
Araq
1b4116702b
fixes #3052
2015-08-02 02:56:02 +02:00
Araq
b0b716fca7
fixes #3079 , fixes #1146 , fixes #2879
2015-07-22 16:32:56 +02:00
Araq
7011275f13
fixes #3062
2015-07-05 15:00:46 +02:00
Araq
2d196442fa
fixes #3048 , fixes #3047
2015-07-03 10:31:49 +02:00
Araq
cdc6529ccf
fixes #3038
2015-07-03 00:20:34 +02:00
Araq
c314f8e65e
fixes #3040
2015-07-02 23:04:46 +02:00