Zahary Karadjov
5e368f3639
support for external types with covariant generic params
2017-05-08 21:45:37 +03:00
Andreas Rumpf
c22e0d414d
fixes an internal compiler error when json.to is used wrongly
2017-05-06 11:53:15 +02:00
Andreas Rumpf
764cc02177
Merge branch 'devel' into araq
2017-05-04 16:02:50 +02:00
Andreas Rumpf
c1aa973758
Merge branch 'devel' of github.com:nim-lang/Nim into devel
2017-05-04 10:58:21 +02:00
Araq
6377b52d8e
Merge branch 'devel' of github.com:nim-lang/Nim into devel
2017-05-02 01:24:19 +02:00
Araq
bea07a2c5c
fixes #5752
2017-05-02 01:24:10 +02:00
Andreas Rumpf
962d03d671
isDeepConstExpr helper can handle nkRange
2017-05-01 09:31:29 +02:00
Andreas Rumpf
56a5c249c9
JS codegen: produce better code for constant sets
2017-05-01 09:30:56 +02:00
Zahary Karadjov
2a34552596
fix 5756
2017-04-30 22:28:20 +03:00
Zahary Karadjov
c981284ddc
a simple way to simulate covariance in generic types
2017-04-28 17:40:57 +03:00
Zahary Karadjov
bc01835091
Allow tyOr,tyAnd and tyNot to be constructed in more contexts
2017-04-28 17:07:54 +03:00
Andreas Rumpf
3d34a9f6d3
js codegen: emit more line information
2017-04-26 12:50:36 +02:00
Andreas Rumpf
920888f382
fixes tuple unpacking regression
2017-04-26 11:10:50 +02:00
Andreas Rumpf
2da66fef77
Merge branch 'devel' of github.com:nim-lang/Nim into devel
2017-04-26 10:28:03 +02:00
Andreas Rumpf
7b1568d19c
make -d:nimdiff feature more robust
2017-04-26 10:27:42 +02:00
Araq
05c20bc4ff
fixes a parser bug
2017-04-25 19:36:05 +02:00
cooldome
c6a8bd264e
Fix for #5695 make subscript operator overloadable for tuples ( #5749 )
2017-04-24 20:17:06 +02:00
Andreas Rumpf
1aede6d311
Merge branch 'devel' of github.com:nim-lang/Nim into devel
2017-04-24 10:00:53 +02:00
Andreas Rumpf
7cba41db23
make nimble compile again
2017-04-22 14:58:53 +02:00
Andreas Rumpf
3f5ababfe8
make sighashes work in more cases
2017-04-21 17:01:57 +02:00
Andreas Rumpf
afa80092d3
wip
2017-04-21 09:40:27 +02:00
Araq
4b76d9846b
Merge branch 'devel' of github.com:nim-lang/Nim into devel
2017-04-19 15:20:54 +02:00
Araq
5018f6fa15
fixes #5729
2017-04-19 15:20:46 +02:00
Andreas Rumpf
b7bffa35c7
attempt to make sighashes produce smaller diffs
2017-04-19 08:40:05 +02:00
Andreas Rumpf
02bbfa1164
precise stack scanning for Nim's GCs; work in progress
2017-04-19 08:33:19 +02:00
Zahary Karadjov
3e52bb6535
fix a regrsesion in signature matching of derived ptr types
2017-04-18 23:55:59 +03:00
Zahary Karadjov
13701c0957
Restore the compilation of linalg by tweaking the complex disambiguation rules
...
This commit is a potentially breaking change, but the problem was that
linalg was relying on a previous bug in the compiler, which was fixed
in the concepts branch.
With the old disambiguation rules, generic procs like:
proc \`==\`[T](lhs, rhs: T)
and
proc \`==\`(lhs, rhs: Matrix32|Matrix64)
.. were considered equal, even though it's obvious that the second one
should be preferred. We never noticed this, because there was a bug in
sigmatch incorrectly counting one of the params of the second proc as
a non-generic match, thus giving it an edge.
This commit gives some preference to tyOr and tyAnd during the complex
disambiguation, which may affect overload resolution in other cases.
I see this only as a temporary solution. With my upcoming work on
concept refinement, I plan to provide an experimental implementation
of alaternative C++-like rules for determining which proc is more specific.
We can then discuss our strategy for dealing with such a breaking change.
2017-04-16 16:11:45 +03:00
Zahary Karadjov
2da4a4fbe3
fix regression in tmatrixconcept
2017-04-16 14:39:00 +03:00
Zahary Karadjov
4da8536701
fix compilation regression in alea
2017-04-16 13:42:33 +03:00
Zahary Karadjov
dfbafff2e7
fix a compilation error in linalg
2017-04-16 02:44:58 +03:00
Zahary Karadjov
bf4ce87e5b
fix #5689
2017-04-15 02:53:28 +03:00
Zahary Karadjov
d578815963
fix #5683
2017-04-14 23:54:09 +03:00
Zahary Karadjov
8de19a7f4c
fix a parsing regression (do is still mandatory in some situations)
2017-04-14 23:48:43 +03:00
Andreas Rumpf
55b5401dc6
fixes yet another regression caused by the .procvar removal
2017-04-14 19:18:26 +02:00
Jacek Sieka
e512358bc9
Linux abi take 3 ( #5692 )
...
* avoid generating object fields for imported types
* fix some abi/type issues for linux_amd64
2017-04-12 22:57:10 +02:00
Zahary Karadjov
54a1d9c16a
wip
2017-04-11 00:48:52 +03:00
Zahary Karadjov
a3f19c87fb
lift parameter-less do block to lambdas
2017-04-10 23:58:05 +03:00
Zahary Karadjov
f7b10e213b
support post expression blocks in return and yield
2017-04-10 17:26:50 +03:00
Zahary Karadjov
8b63b84924
fix a regression in tlexerex
2017-04-10 13:06:06 +03:00
Zahary Karadjov
8cb11aac4f
adapt quote to the new parsing rules
2017-04-10 12:23:04 +03:00
Zahary Karadjov
e7eb01ed48
fix a parsing regression (calls with do inside param lists)
...
This treatment is applied only when "do" is used, because
the code foo(x: bar) is recognized as object construction.
2017-04-10 12:08:40 +03:00
Zahary Karadjov
9ffaee3f88
fully consisent parsing between the new and the old 'do blocks'
2017-04-10 11:44:02 +03:00
Zahary Karadjov
34b2527441
the new blocks without 'do' produce compatible AST with 'do blocks'
2017-04-09 23:45:52 +03:00
Zahary Karadjov
987b522071
fix the do notation when used with procs
2017-04-09 22:59:24 +03:00
Zahary Karadjov
03172bef6f
fix #5643 ; fix #5644
2017-04-08 23:42:42 +03:00
Fredrik Høisæther Rasch
392f025148
Error Message if CC invocation fails ( #5663 )
2017-04-08 19:06:19 +02: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
Zahary Karadjov
e11b3520ff
fix #5654
2017-04-07 19:35:05 +03:00
Zahary Karadjov
fb3ff64450
fix #5642
2017-04-07 19:28:52 +03:00