Commit Graph

105 Commits

Author SHA1 Message Date
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
Matthew Baulch
3fef725d92 pickBestCandidate: pre-calculate candidates when symbol table modified 2016-09-03 20:20:48 +10:00
Andreas Rumpf
da8f6e16cc fixes #4491 2016-08-26 15:19:32 +02:00
Andreas Rumpf
d3888577e9 fixes #3928 2016-08-26 15:15:18 +02:00
Matthew Baulch
b0c12a7dc4 Optimise pickBestCandidate: reduce heap allocations. 2016-08-21 12:41:55 +10:00
Andreas Rumpf
0ed8d80521 fixes #4534 2016-08-01 01:32:19 +02:00
Andreas Rumpf
8f457f6ebb make tests green again 2016-07-29 23:51:01 +02:00
Andreas Rumpf
db56174a19 fixes #3548 2016-07-15 00:22:14 +02:00
Andreas Rumpf
995727ffd0 decent error message for 'var T' problems 2016-07-15 00:22:14 +02:00
Andreas Rumpf
4180f59b27 fixes #1713 2016-05-30 16:24:52 +02:00
Andreas Rumpf
e04f319540 fixes #4084 2016-04-29 22:30:00 +02:00
Andreas Rumpf
554a3e9335 better 'self' handling for overload resolution 2016-02-29 00:25:51 +01:00
Andreas Rumpf
7ae45ea420 'using' statement is obsolete 2016-02-28 14:48:15 +01:00
Andreas Rumpf
1afdefcbe9 added experimental .this pragma 2016-02-28 03:17:20 +01:00
Andreas Rumpf
ee6a46f264 some progress on #3832 2016-02-08 01:43:38 +01:00
Andreas Rumpf
a2db3c24d1 fixes #3799 2016-01-30 23:09:55 +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
9cc25f8b77 fixes #3452 2015-10-22 12:14:32 +02:00
Araq
c921f30b1d renamed inCompilesContext to compilesContextId; added test case for #3313 2015-09-18 11:29:43 +02:00
Araq
e01e0a4b40 next steps in binding [] properly 2015-09-13 22:42:21 +02:00
Araq
8ef66b973d first attempt to fix 'a[i]' handling in generics 2015-09-12 10:55:28 +02:00
Adam Strzelecki
d681812465 compiler: Trim .nim files trailing whitespace
via OSX: find . -name '*.nim' -exec sed -i '' -E 's/[[:space:]]+$//' {} +
2015-09-04 23:03:22 +02:00
Zahary Karadjov
02f97489b7 fix #1858 again; restores the support for static macro params 2015-08-02 23:58:22 +03:00
Dominik Picheta
1cf1610bdf Rename errUndeclaredProcedure to errUndeclaredRoutine. 2015-06-05 14:50:14 +01:00
Dominik Picheta
5d6f16cc1a Got rid of errUndeclaredProcedureField. 2015-06-04 16:39:38 +01:00
Dominik Picheta
22f6017ab8 Fixes #2584
Better compiler errors for accessing undeclared fields, calling undeclared
procedures and procedure fields.
2015-06-04 13:55:48 +01:00
Araq
2b80d75aa2 fixes #2420; negative indexing for slicing is obsolete (breaking change!) 2015-03-28 00:15:04 +01:00
Araq
1efb5174f2 fixes #2220; #2219; breaks #2022; for #2022 callsite needs to be used 2015-03-10 12:32:46 +01:00
Araq
cac259cdfb fixes #2229 2015-03-05 20:39:25 +01:00
Araq
83cab19c62 fixes #2252 2015-03-04 21:19:38 +01:00
Araq
566ee874cd minor cleanups 2015-03-01 13:52:00 +01:00
Araq
2ebeb0bd21 fixes #2169 2015-02-28 20:13:21 +01:00
Araq
540f66cb09 fixes #2167 2015-02-20 20:01:23 +01:00
Federico Ceratto
657dca5c3b Fix typos 2015-02-15 16:20:32 +00:00
Araq
a400e8f7f3 better error message for auto-deref 2015-02-04 00:52:44 +01:00
Araq
26b853923c nimsuggest: first version 2015-01-27 01:36:19 +01:00
Araq
603f36bc86 implements auto-deref for the first argument (requires .experimental) 2015-01-27 01:33:47 +01:00
Araq
20774ad43c fixes the integer conversion regressions 2015-01-13 20:56:31 +01:00
Dustin Lacewell
0619383f46 Revert 5e4ae8d 2015-01-07 14:07:06 -08:00
Zahary Karadjov
5e4ae8dbb4 fix #1858; Add support for generic templates and macros
Implementation notes:
Just after overload resolution, the resolved generic params will be added to the
call expression to be later processed in evalTemplate and evalMacroCall. These
procs have been modified to handle the increased number of parameters, but one
remaining issue is that immediate templates and macros don't go through the same
process. The next commit will outlaw the use of generic parameters with such macros.
2015-01-05 03:53:31 +02:00