Commit Graph

280 Commits

Author SHA1 Message Date
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
Araq
5526252fa0 fixes testament compilation 2018-05-14 17:45:44 +02:00
Andreas Rumpf
0d56dd4677 big refactoring: magicsys compiles again 2018-05-10 13:12:42 +02:00
Zahary Karadjov
7297613900 Bugfix: The compiler were not inserting proper downcasts for generic types
This resulted in a codegen error in C++ mode, because the generic
types were not defined in modules where calls requiring downcasts
were used (generating a downcast forces the inclusion of the full
definition of the involved types).
2018-05-07 09:37:49 +02:00
Oscar Nihlgård
cc0ca43743 Don't hide overflow/underflow/divbyzero in semfold (#7732)
* firstOrd/lastOrd bugfix
* Don't hide overflow/underflow/divbyzero in semfold
2018-05-02 08:54:09 +02:00
cooldome
b3a80dd2eb update the doc 2018-04-29 23:17:07 +01:00
cooldome
a95316f78b Implement float range types 2018-04-26 23:47:51 +01:00
Andreas Rumpf
34b333b140 make tests green again 2018-04-22 07:10:55 +02:00
Andreas Rumpf
14e496fab0 fixes #6393 2018-04-21 22:49:15 +02:00
Andreas Rumpf
a17d45c2c2 fixes #3948 2018-04-12 20:09:44 +02:00
Araq
8b7c2bd067 fixes #7528 2018-04-06 22:42:25 +02:00
zah
121b9e26fb Static[T] fixes (#7333)
* fix the usage of unresolved static[T] parameters in proc signatures
* fix tsametype and tmacrogenerics
* Allow creating composite type classes with concepts and using them in type signatures
* Allow integers to be used in ident concatenations
* Support using imported C++ generic types in proc signatures
* fixes #7230
* closes #7379
* re-enable some metatype tests
2018-03-24 15:28:09 +01:00
Araq
f3b8d92216 new .rod file implementation; part 1: writing of the file 2018-02-17 00:40:48 +01:00
Araq
2c1f1f21bf fixes #3985 2018-02-10 21:20:48 +01:00
Araq
ef6eda4cb4 better error messages: use <T1, T2> instead of (T1, T2) in order to prevent confusions with tuple types 2018-02-10 20:55:21 +01:00
Andreas Rumpf
fa0f5d0238 fixes #6946 2018-02-05 21:21:22 +01:00
Andreas Rumpf
2015895357 sink type begins to compile 2018-01-08 01:47:54 +01:00
Andreas Rumpf
e4081a7201 preparations for language extensions: 'sink' and 'lent' types 2018-01-07 23:09:26 +01:00