Commit graph

404 commits

Author SHA1 Message Date
Neelesh Chandola
6ed9676af5 Show field not initialized warning only when notnil used (#10155) 2019-01-01 18:49:44 +01:00
Neelesh Chandola
9faad7591e Deprecate gc v2 (#10151)
* Deprecate gc v2

* warnDeprecated now has custom messages
2019-01-01 13:50:48 +01:00
Neelesh Chandola
c5ad4c10cb Deprecated pragma is now supported on enum fields (#10113)
* {.deprecated.} pragma is now supported for enum fields
* Add tests
* Simplify code
2018-12-30 09:43:59 +01:00
Neelesh Chandola
730b1b2b87 proc does not take untyped/typed as argument (#9981)
* proc does not take untyped/typed as argument

* Add TODO
2018-12-19 16:18:57 +01:00
Andreas Rumpf
3f917c8d91
Merge pull request #9959 from nc-x/better-error-message
Better error messages in enums which don't have ordinal types
2018-12-19 10:03:55 +01:00
Andreas Rumpf
72500420d3
Fixes #3060 and adds error checking for invalid else branches in object variants (#9957)
* Fix semRecordCase

* Fix ftpclient.nim

* Check for ordinal type

* Check tyRange for exhaustiveness
2018-12-19 10:03:22 +01:00
Andreas Rumpf
e3a668a33b --gc:destructors: baby steps 2018-12-15 13:54:41 +01:00
Neelesh Chandola
f233b2fe8b Merge remote-tracking branch 'upstream/devel' into better-error-message 2018-12-14 09:34:46 +05:30
Neelesh Chandola
6bdf7fdbce enum types can now be assigned values from enum with holes (#9958)
* Fixes https://github.com/nim-lang/Nim/issues/9952

* Remove workaround from vccexe
2018-12-13 12:14:25 +01:00
Neelesh Chandola
31cff752e0 Better error messages in enums which don't have ordinal types 2018-12-13 15:07:36 +05:30
Neelesh Chandola
e6c510bbbd Check tyRange for exhaustiveness 2018-12-13 14:40:22 +05:30
Neelesh Chandola
fa4644006a Check for ordinal type 2018-12-13 14:12:22 +05:30
Neelesh Chandola
1f1d7b1088 Fix semRecordCase 2018-12-13 12:11:56 +05:30
Andreas Rumpf
03c4231951
Merge pull request #9909 from nc-x/fix-regression
Fix enum regression
2018-12-11 08:36:15 +01:00
Neelesh Chandola
47c38cb98e Better fix 2018-12-11 10:34:10 +05:30
Neelesh Chandola
e44641b6cb Float values are invalid in enum 2018-12-09 14:20:01 +05:30
Neelesh Chandola
b0f860d90f Fix enum regression 2018-12-09 10:28:34 +05:30
Araq
e874705971 fixes nested gensym'ed parameters; fixes #9476 2018-12-08 13:30:06 +01:00
Araq
abbafe606e IC: further progress 2018-12-01 00:36:14 +01:00
Andreas Rumpf
350396e1ca gc:destructors: more progress 2018-11-29 20:10:52 +01:00
Andreas Rumpf
7d82df20be gc:destructors further progress 2018-11-29 01:13:32 +01:00
Andreas Rumpf
6e8ed8c6fa added first version of a nimfind tool for the poor souls that don't have a good nimsuggest integretation 2018-11-14 16:04:54 +01:00
Araq
c735b75f6f compiler cleanup: flag tfOldSchoolExprStmt is gone 2018-11-06 13:55:03 +01:00
Andreas Rumpf
ae27f8ac58 fixes #9611 2018-11-03 19:11:10 +01:00
Araq
e844e536bf Nim style checker: document the switch; fixes #9564 2018-10-30 15:03:28 +01:00
Araq
f9eec2aa1e fixes #9532 2018-10-28 13:23:27 +01:00
Araq
963292f725 added system.typeof operation; fixes #9093 2018-10-24 17:09:51 +02:00
Timothee Cour
745f1642d6 implement sizeof and alignof operator (manually squashed #5664) (#9356) 2018-10-14 00:52:28 +02:00
cooldome
7a5b614edc fixes #9297 (#9298)
* fixes #9297

* improve spacing
2018-10-11 09:54:50 +02:00
LemonBoy
0ead36dae6 Unchecked arrays now have their own type (#9267) 2018-10-10 21:03:18 +02:00
Araq
f673fbd91f fixes #6533 2018-10-02 19:54:02 +02:00
Andreas Rumpf
539fc5d58b improve the error message for 'attempt to redefine X'; fixes #447 2018-09-17 19:54:56 +02:00
Andreas Rumpf
84d122b5c8 extended system.type/typeof to support an upcoming 'collect' macro that works much better than sugar.lc 2018-09-11 19:02:05 +02:00
Araq
30597e643f fixes merge conflict 2018-08-23 11:30:55 +02:00
LemonBoy
d94ee75d1c Pick skParam symbols when resolving type idents (#8720)
Fixes #8357
2018-08-22 15:49:43 +02:00
zah
96de224a63 Fix #8126 (#8712)
This is a temporary fix that will be reworked in a follow up commit
that aims to eliminate the tfExplicit flag from the compiler. The
complete and proper fix was considered too risky for inclusion just
before our 0.19 release.
2018-08-21 22:14:12 +02:00
Andreas Rumpf
696c0c48c7 fixes merge conflict 2018-08-19 15:14:03 +02:00
Araq
265003df1a deprecated regionized pointers 2018-08-10 01:20:14 +02:00
Araq
7ac6462cbd make at least bootstrapping work 2018-08-05 14:17:24 +02:00
Andreas Rumpf
abe0725ab1 WIP: nothing works 2018-08-05 09:38:14 +02:00
andri lim
78c0ac5407 fixes #7827, bindSym enhancement (#8499)
* bindSym power up, working prototype

* update bindSym doc

* add bindSym test

* fix some typo

* fix bindSym doc

* get rid of specialops field from vm

* add experimental: dynamicBindSym
2018-08-02 12:56:44 +02:00
Araq
f2ddd99539 fixes #8425 2018-07-30 12:20:58 +02:00
LemonBoy
d5c9255cab Allow use of typedesc as type converters (#8409)
Fixes #8403
2018-07-24 08:25:08 +02:00
Andreas Rumpf
a28090a8f2 tySequence has a tfHasAsgn flag consistently 2018-07-22 16:45:33 +02:00
Andreas Rumpf
4389409e26 fix merge conflict 2018-07-18 09:46:30 +02:00
Andreas Rumpf
fc0bcccc15 fixes #8230 2018-07-17 16:43:05 +02:00
LemonBoy
217a2cf098 Resolve converter call to constants in case arms (#8336)
Fixes #8333
2018-07-16 16:19:31 +02:00
Andreas Rumpf
5b59852406 system.substr is not implemented with compilerProcs anymore 2018-07-11 16:39:16 +02:00
LemonBoy
2c98b4943e Fix crash with static and anonymous procs (#8171)
Fixes #6077
2018-07-02 00:49:03 +02:00
LemonBoy
7f148838a4 Reject ptr/ref void types (#8127)
Do this during the semantic pass to avoid tripping the following passes.

Fixes #6454
2018-06-27 21:41:40 +02:00