Andreas Rumpf
7d437a3a74
Merge pull request #7964 from LemonBoy/fix-7936
...
Fixes #7936
2018-06-25 15:06:07 +02:00
Andreas Rumpf
890086baec
Merge pull request #8072 from LemonBoy/fix-6899-6280
...
Fix minor codegen issue with static data types
2018-06-24 21:31:19 +02:00
LemonBoy
9543689306
Make static blocks introduce their own scope
...
Treat the static block as a normal block, don't leak any identifier in
the outer scope.
Fixes #5958
2018-06-24 18:27:40 +02:00
LemonBoy
bfa3d62cc1
More concept fixes
...
Fixes #7705 , #7703 , #7702
2018-06-24 15:13:34 +02:00
Andreas Rumpf
105a472dc5
Merge pull request #8084 from LemonBoy/fix-7905
...
Discriminate gensym'd type names in sigHash
2018-06-24 09:54:00 +02:00
LemonBoy
7f0d7871ed
Use the resolved typedesc in semVarOrLet
...
By leaving the unsemanticized node in the AST we'd trip some passes like
the Transf one as seen in #7936 .
2018-06-23 13:40:11 +02:00
LemonBoy
e39baf46fc
Don't blow up with recursive objects
2018-06-22 19:47:44 +02:00
LemonBoy
af66258dca
Discriminate gensym'd type names in sigHash
...
The root cause of #7905 lies in the codegen phase. The two template
instantiations generate two different MyType types with different
members but same t.sym.name leading the caching mechanism to confuse
the two.
Fixes #7905
2018-06-22 13:09:33 +02:00
Andreas Rumpf
6015749720
Merge pull request #8062 from LemonBoy/fix-7825
...
Fix constant folding for shl/not
2018-06-21 00:35:17 +02:00
Araq
1be82d96a6
nimpretty: bugfixes; refs #8078
2018-06-20 11:35:36 +02:00
Araq
9adfaa7f07
fixes #8076
2018-06-20 10:20:42 +02:00
Andreas Rumpf
0725003a8c
nimpretty: fixes more reported issues
2018-06-20 00:56:29 +02:00
Andreas Rumpf
c3090fcb48
nimpretty: don't produce trailing whitespace; fixes the rendering of unary operators
2018-06-19 23:45:11 +02:00
LemonBoy
fb62dd1fae
Fix constant folding for shl/not
...
Since the source and destination types are the same the result should be
trimmed to fit.
2018-06-19 22:32:15 +02:00
Andreas Rumpf
837d0c7270
nimpretty: proper command line handling; added tests; travis ensures these stay green
2018-06-19 20:06:04 +02:00
LemonBoy
8508dc46c8
Fix minor codegen issue with static data types
2018-06-19 17:12:51 +02:00
Andreas Rumpf
dd81d9d5b7
nimpretty improvements
2018-06-19 09:42:33 +02:00
Andreas Rumpf
98f3daea65
nimpretty: don't touch dense binary operators
2018-06-17 14:25:23 +02:00
Andreas Rumpf
c70706f4bd
nimpretty: fixes pragma rendering
2018-06-17 14:15:42 +02:00
Andreas Rumpf
798a8bd45c
Merge branch 'devel' of github.com:nim-lang/Nim into devel
2018-06-16 19:02:54 +02:00
Andreas Rumpf
dba26656f6
nimpretty: stuff that doesn't work
2018-06-16 19:02:47 +02:00
Zahary Karadjov
e129466910
requested pull-request changes
2018-06-16 16:46:32 +03:00
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
e719f211c6
fix #6928 ; fix #7208
2018-06-16 16:46:32 +03:00
Zahary Karadjov
59d19946c0
fix some breakage after rebasing
2018-06-16 16:46:32 +03:00
Zahary Karadjov
16b594b532
Support default type parameters
...
progress on #7516
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
Zahary Karadjov
a49b06a52a
Implement the is operator for the new static and typedesc type classes
...
This also makes the first baby steps towards a sound treatment of
higher-order kinds (type type int).
Adds test cases showcasing the new features.
* Also fixes breakage after the rebase
2018-06-16 16:46:32 +03:00
Zahary Karadjov
ab9969ed3b
Bugfix: the size of an array may be a static tuple element
2018-06-16 16:46:32 +03:00
Zahary Karadjov
509d6e9232
Bugfix: aliases to generic types were not considered implicit generic parameters
2018-06-16 16:46:32 +03:00
Zahary Karadjov
fb27357b62
A minimal patch enabling the new typedesc and static types syntax
2018-06-16 16:46:32 +03:00
Andreas Rumpf
7819e63f77
nimpretty: more features
2018-06-16 09:53:36 +02:00
Andreas Rumpf
ee16e62061
Merge pull request #8039 from yglukhov/proc-pragmas
...
Fixed stacktrace/linetrace proc pragmas when appended by macro pragma
2018-06-16 01:59:06 +02:00
Andreas Rumpf
97398edc05
nimpretty: render and/or/notin/in properly
2018-06-16 01:58:52 +02:00
Andreas Rumpf
a1bd4a6cbd
nimpretty: first version that seems useful for others to test it
2018-06-16 01:46:39 +02:00
Yuriy Glukhov
951157a4e9
Fixed proto options
2018-06-15 12:54:59 +03:00
Andreas Rumpf
f1d5e9090e
Merge pull request #8021 from yglukhov/seq-lit
...
Added NIM_STRLIT_FLAG to seq literals
2018-06-14 17:38:12 +02:00
Araq
1578d222e2
implements pkg/ prefix to enforce searching for the module ignore the stdlib paths; refs #7250
2018-06-14 16:12:02 +02:00
Yuriy Glukhov
466af35d4d
Fixed stacktrace/linetrace proc pragmas when appended by macro pragma
2018-06-14 15:48:51 +03:00
Yuriy Glukhov
dd06c46865
Fixed uncaught exception in vm gen
2018-06-13 15:39:45 +03:00
Andreas Rumpf
5348fef003
implements a --nep1:on switch to make the compiler enforce the naming conventions outlined in NEP-1
2018-06-13 01:44:19 +02:00
cooldome
101f23f3a6
manual merge 2
2018-06-12 23:23:21 +01:00
cooldome
3dd61d6fff
Manual merge
2018-06-12 23:20:34 +01:00
cooldome
0b709fb916
FIx test tembarrassing_generic_failure
2018-06-12 21:41:35 +01:00
cooldome
37aa488f99
merge devel
2018-06-12 21:19:30 +01:00
Andreas Rumpf
f555338ce8
bugfix: allow 'export' in the VM
2018-06-12 21:08:41 +02:00
Andreas Rumpf
b379547fc0
Merge pull request #8019 from yglukhov/proc-stacktrace
...
Allow stacktrace and linetrace pragmas on procs
2018-06-12 17:12:13 +02:00
Andreas Rumpf
aaceec0744
Merge pull request #7981 from cooldome/Fix_-7980
...
Fixes 7980
2018-06-12 11:50:40 +02:00
Yuriy Glukhov
7a4b343d8d
Added NIM_STRLIT_FLAG to seq literals
2018-06-12 12:39:54 +03:00
Yuriy Glukhov
7e7b85afc7
Allow stacktrace and linetrace pragmas on procs
2018-06-12 12:31:14 +03:00