Arne Döring
b92fd30282
rename tyExpr/tyStmt to tyUntyped/tyTyped ( #11227 )
2019-05-11 10:11:08 +02:00
Oscar Nihlgård
de5c0d3aa9
Make range checks in semConv ( #7164 )
...
* Remove NaN/Inf/NegInf magic
* Make range checks in semConv
* fix the failing line
* fix `firstOrd` and `lastOrd`
* fix `localError`
* remove debug comment
* Cleanup, fix failing test
* make tests green
2019-05-10 11:10:11 +02:00
Andreas Rumpf
61380d0a07
Small cleanup ( #11185 )
...
* Remove mStaticTy and mTypeTy
* Replace countup(x, y-1) with x ..< y
* Replace countup(x, y) with x .. y
2019-05-08 17:18:46 +02:00
Arne Döring
34405db80f
forbid casting to bare unchecked array ( #11186 )
...
* fixes #11180 , forbid casting to unchecked array.
* allow UncheckedArray as param
2019-05-08 09:36:27 +02:00
Clyybber
cc28eef38e
Replace countup(x, y) with x .. y
2019-05-07 12:37:28 +02:00
Clyybber
f18b3af9d4
Replace countup(x, y-1) with x ..< y
2019-05-07 12:32:05 +02:00
Arne Döring
6f7f043c9b
Fix type recursion check ( #11144 )
...
* fixes #3456
* add test #3456
2019-05-07 08:29:17 +02:00
genotrance
45759b5e90
Fix 105, few fixes for 101 ( #11148 )
2019-05-04 22:38:52 +02:00
Araq
a2ad069769
preparations for --newruntime owned refs/callbacks
2019-04-11 12:42:51 +02:00
Araq
1a202b9754
render lent types properly
2019-04-06 17:32:53 +02:00
Andreas Rumpf
663b1f2c96
newruntime: bugfixes
2019-03-25 16:45:51 +01:00
Arne Döring
97c3b113a5
Size ptr tuple ( #10846 )
...
* fixes #10117
* Add support for recursive tuples
* detect in generics
2019-03-18 11:37:09 +01:00
Andreas Rumpf
1f61498238
added types.isFinal helper proc
2019-03-14 07:59:44 +01:00
Andreas Rumpf
4be36d77f6
introduce tfHasOwned for fast must-move checkings; removed tfAcyclic as the GC has ignored this hint for quite some time now
2019-03-05 19:58:54 +01:00
Andreas Rumpf
84f0a33bf0
make typeToString sane for sequence again
2019-02-25 19:01:01 +01:00
Andreas Rumpf
ea409fb15a
first steps in implementing 'owned' pointers; undocumented, do not use
2019-02-23 08:44:08 +01:00
Andreas Rumpf
721bf7188b
code cleanup: there is no tyOptRef
2019-02-22 19:42:11 +01:00
alaviss
9e754c3b06
compiler/types: correctly generates signature for non-proc types ( #10658 )
...
This makes signatures generated for nimsuggest correctly distinguish
template/macro/converter from proc.
2019-02-13 23:30:14 +01:00
Araq
4ed7507cb2
error messages can have spaces, don't be dyslexic
2019-02-08 12:18:42 +01:00
Ray Imber
94f6a6b294
Fix for issue #10342 . better message for generic subclass instantiation ( #10354 )
...
* Fix for issue #10342 . better message for generic subclass instantiation errors.
2019-01-22 17:05:26 -08:00
Andreas Rumpf
05c52ff34f
fixes #10203 ( #10290 )
...
* fixes #10203
* make typredef test green again
* fixes the regressions differently
2019-01-15 10:15:27 +01:00
Timothee Cour
bf3a308e86
[error messages, stacktraces] fix #8794 #9270 #9767 #9768 ( #9766 )
...
* fixes #8794 : `Error: undeclared field: 'foo'` should show type (+ where type is defined) (hard to guess in generic code)
* fixes #9270 : `--listFullPaths` not honored by `declared in foo.nim` messages
* fixes #9767 : VM stacktrace doesn't honor --excessiveStackTrace:on
* fixes #9768 : VM stacktrace misses column info, can lead to ambiguous or harder to read stacktraces
* refactors some col+1 code to col + ColOffset (self documents code)
* make getProcHeader show declared info location also for types and all routine kinds (including macros,templates) instead of just (rather arbitrarily) for iterator,proc,func,method
* --listFullPaths now is honored in more places
* fix typo system/except.nim => lib/system/excpt.nim
* remove substr(foo, 0) hack in compiler/vm.nim which seems old and not applicable anymore
2019-01-08 15:58:47 -08:00
Clyybber
427435a814
Don't use deprecated pragma syntax ( #10187 )
...
* Don't use deprecated pragma syntax
* Remove pure pragma, since it's a noop now
2019-01-08 10:13:39 +01:00
cooldome
8c1083d3b7
Of operator in vm fixes [backport] ( #9717 )
...
* fixes #9701
* fixes #9702
* optimize of statement to bool
2018-11-15 13:03:42 +01:00
Araq
f9eec2aa1e
fixes #9532
2018-10-28 13:23:27 +01:00
LemonBoy
16a70c84aa
Fixes 6544 ( #9427 )
...
* Fix call to converters with var/lent args
Fixes #6544
* Fix printing of lent types
* lent is only valid for result types
2018-10-19 21:04:32 +02:00
Miran
675c629fee
replace deprecated safeAdd with add ( #9416 )
2018-10-18 12:29:32 +02:00
Timothee Cour
745f1642d6
implement sizeof and alignof operator (manually squashed #5664 ) ( #9356 )
2018-10-14 00:52:28 +02:00
LemonBoy
0ead36dae6
Unchecked arrays now have their own type ( #9267 )
2018-10-10 21:03:18 +02:00
Araq
30597e643f
fixes merge conflict
2018-08-23 11:30:55 +02:00
Araq
64517445ea
even more strict isNil handling for strings/seqs in order to detect bugs
2018-08-22 12:35:46 +02:00
Andreas Rumpf
696c0c48c7
fixes merge conflict
2018-08-19 15:14:03 +02:00
LemonBoy
b5171f57ef
Expand tyAlias in typeToString ( #8634 )
...
Fixes #8339
2018-08-18 15:27:47 +02:00
Andreas Rumpf
0da91aa744
changes how the now illegal 'string == nil' comparison is detected
2018-08-15 16:31:56 +02:00
Andreas Rumpf
dae5450947
WIP: disallow 'nil' for strings and seqs
2018-08-13 11:41:33 +02:00
Araq
7ac6462cbd
make at least bootstrapping work
2018-08-05 14:17:24 +02:00
skilchen
becb6743f8
fixes #8434 (incomplete info in errmsg about 'required type') ( #8441 )
2018-07-30 10:41:59 +02:00
Andreas Rumpf
4389409e26
fix merge conflict
2018-07-18 09:46:30 +02:00
Andreas Rumpf
32afdc09c6
WIP: strings/seqs based on destructors
2018-07-17 13:19:42 +02:00
LemonBoy
3163a0f466
Do not consider enums with holes as ordinals ( #8264 )
...
Make the compiler behave consistently with respect to what's written in
the manual.
Fixes #1239
2018-07-12 18:08:45 +02:00
Andreas Rumpf
5b59852406
system.substr is not implemented with compilerProcs anymore
2018-07-11 16:39:16 +02:00
LemonBoy
eec239e851
Fix constant folding of len() with concept type ( #8143 )
...
Fixes #7952
2018-06-30 13:43:55 +02:00
Araq
19ea3a70d2
compiler/types.nim: make low/high know about 'sink' parameters; cleans up #7736
2018-06-27 00:21:31 +02:00
Andreas Rumpf
d8f7174dda
Merge pull request #7736 from cooldome/range_float_type
...
Language feature: range float types
2018-06-27 00:08:21 +02:00
Andreas Rumpf
2a3a128e36
Merge branch 'devel' into typedesc-reforms
2018-06-26 18:33:51 +02:00
LemonBoy
bfa3d62cc1
More concept fixes
...
Fixes #7705 , #7703 , #7702
2018-06-24 15:13:34 +02: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
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
37aa488f99
merge devel
2018-06-12 21:19:30 +01:00