Commit graph

144 commits

Author SHA1 Message Date
Zahary Karadjov
31651ecd61 allow referencing other parameters in default parameter values
fix #7756
fix #1201
fix #7000
fix #3002
fix #1046
2018-06-16 16:46:32 +03:00
Zahary Karadjov
5bcf8bcb59 fixes #7222; fixes #5595; fixes #3747
* late instantiation for the generic procs' default param values
* automatic mixin behaviour in concepts

Other fixes:

* don't render the automatically inserted default params in calls
* better rendering of tyFromExpr
2018-06-16 16:46:32 +03:00
Andreas Rumpf
40ec7be45c refactoring: remove idents.legacy global variable and pass the IdentCache around explicitly 2018-05-27 22:09:15 +02:00
Andreas Rumpf
9849808720 Merge branch 'devel' into araq-big-refactoring 2018-05-27 13:38:09 +02:00
Andreas Rumpf
669a564492 remove more global variables in the Nim compiler 2018-05-27 11:10:56 +02:00
Zahary Karadjov
1c478db375 fix #7883; fix #7829 2018-05-26 20:46:22 +03:00
Andreas Rumpf
feef109e60 make tests green again 2018-05-18 20:53:41 +02:00
Araq
02b78d3f94 make tests green again 2018-05-14 21:38:18 +02:00
Andreas Rumpf
ce859d8c16 more modules compile again 2018-05-12 16:35:59 +02:00
Andreas Rumpf
9d77f61038 sigmatch: speed it up 2018-04-28 18:48:18 +02:00
Andreas Rumpf
6408646b02 minor speedup: concept tests still green 2018-04-28 18:37:45 +02:00
Andreas Rumpf
4adc31ee3d stuff that is green 2018-04-28 18:23:54 +02:00
Andreas Rumpf
ee366f1746 .experimental can now be used to enable specific features 2018-04-24 09:34:29 +02:00
Araq
7e1f0e28ae revert the error message 2018-04-06 14:11:11 +02:00
Araq
f9449ef954 improve compiler error message 2018-04-06 14:00:09 +02:00
Araq
863c626078 fixes #7335 2018-03-18 12:13:55 +01:00
Andreas Rumpf
d81568fcd5 make concept tests green again 2018-02-27 02:18:18 +01:00
Andreas Rumpf
27e32e0a7d improve the error message for #4659; closes #4659 2018-02-25 17:43:28 +01:00
Araq
037ce16f44 improve the error message for mutability problems 2018-02-17 00:40:48 +01:00
Andreas Rumpf
a4deceb134 fixes #6186 2018-02-11 14:52:26 +01:00
Araq
ef6eda4cb4 better error messages: use <T1, T2> instead of (T1, T2) in order to prevent confusions with tuple types 2018-02-10 20:55:21 +01:00
Andreas Rumpf
2199f83280 improve error message for twrongcolon 2018-02-06 09:15:54 +01:00
Andreas Rumpf
326b7dc556 improve the error messages regarding type mismatches in overloading resolution 2018-02-04 07:04:50 +01:00
Andreas Rumpf
e4081a7201 preparations for language extensions: 'sink' and 'lent' types 2018-01-07 23:09:26 +01:00
Araq
96b7c2481c make tests green again 2017-12-01 10:18:49 +01:00
Araq
34ac04f705 improve the error messages when overloaded '.' operators are involved 2017-11-30 12:55:28 +01:00
Andreas Rumpf
33814cf63e language change: change how the experimental dot operators work 2017-11-29 13:31:31 +01:00
Andreas Rumpf
29c075299d made nimresolve part of the compiler 2017-10-29 15:40:50 +01:00
Andreas Rumpf
70ea45cdba deprecated unary '<' 2017-10-29 08:37:13 +01:00
Andreas Rumpf
0a3efccb55 preparations for another bugfix 2017-10-19 13:29:11 +02:00
Andreas Rumpf
1a61c4d46d first implementation of the 'func' keyword 2017-09-23 23:22:53 +02:00
Zahary Karadjov
367d232351 fix #1017; fix #3309 2017-06-20 11:29:42 +02:00
Araq
68d606d773 improve confusing error messages for failed overloading resolution when deref of first arg failed 2017-05-31 14:34:46 +02:00
Zahary Karadjov
a802d72452 doh, forgot to add all files in the previous commit 2017-05-12 12:46:09 +03:00
Araq
87732f797c fixes #5638 2017-04-04 12:08:34 +02:00
Araq
e105c04e49 revert PR #5638 because it breaks code 2017-04-04 10:43:54 +02:00
Anatoly Galiulin
5fdd03ad4d Fixed issue #5638 (#5639) 2017-04-01 14:14:34 +02:00
Zahary Karadjov
c11d7c35dd make all tests green again
properly disabling the extra diagnostics in semCompiles proved to
be too much work. I have some plans for further improving the error
messages in the future and I'll revisit this later.
2017-03-31 01:53:11 +03:00
Zahary Karadjov
a74ad869e9 requested code review changes 2017-03-29 16:15:30 +03:00
Zahary Karadjov
d6d548c32f carefully reviewed and merged the changes from the devel branch 2017-03-24 17:03:55 +02:00
Zahary Karadjov
fe48dd1cbe further improvements to the error messages produced by concepts 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
a90c4c4d7e kill the reportConceptFailures options as it will be replaced by the .explain. pragma 2017-03-24 16:58:15 +02:00
Andreas Rumpf
01b2728ec8 fixes a potential endless loop 2017-03-20 10:56:15 +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
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
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
2d2b1a9d48 fixes a simple .borrow bug 2016-10-14 12:17:12 +02:00
Andreas Rumpf
3a5edd2c6c fixes #4671 2016-09-13 16:33:43 +02:00