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
cooldome
a877a58f32
Fix error message
2018-06-12 09:31:45 +01:00
cooldome
a65e9c0e25
fix comments
2018-06-10 23:27:45 +01:00
cooldome
17ab7aff44
manual merge continues
2018-06-10 23:05:50 +01:00
cooldome
73b7ec9009
merge devel
2018-06-10 22:58:39 +01:00
Araq
8e9551b1c7
fixex merge conflicts
2018-06-08 19:50:36 +02:00
andri lim
069a53ad4b
fixes #7906 , array and openarray arg vs. ptr/ref generic ( #7909 )
...
* fixes #7906 , array and openarray arg vs. ptr/ref generic
* add comment
2018-06-04 17:43:15 +02:00
Andreas Rumpf
12996c08a1
fixed merge conflict
2018-06-04 16:16:50 +02:00
andri lim
25a41d5d90
fixes #7818 , correct internal representation of generic objects array construction ( #7824 )
...
* defer skiptypes
* defer skiptypes for tyRef & tyPtr
* remove unneeded skipTypes
2018-05-29 09:38:52 +02:00
Andreas Rumpf
669a564492
remove more global variables in the Nim compiler
2018-05-27 11:10:56 +02:00
Andreas Rumpf
feef109e60
make tests green again
2018-05-18 20:53:41 +02:00
Andreas Rumpf
a4e2b0c153
platform.nim doesn't use globals anymore; prepare msgs.nim for not using globals
2018-05-18 15:18:00 +02:00
Araq
02b78d3f94
make tests green again
2018-05-14 21:38:18 +02:00