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
Neelesh Chandola
9faad7591e
Deprecate gc v2 ( #10151 )
...
* Deprecate gc v2
* warnDeprecated now has custom messages
2019-01-01 13:50:48 +01:00
Timothee Cour
1b7c8482fe
fixes #10101 ( #10103 )
2018-12-27 22:40:09 +01:00
Andrii Riabushenko
e03fb08c24
change approach
2018-12-09 00:05:57 +00:00
Andrii Riabushenko
94a63eef9a
Fix hintXDeclaredButNotUsed for enum fields marked as used
2018-12-08 11:35:18 +00:00
Araq
610283b9b0
fixes #9764
2018-11-23 09:54:57 +01:00
Andreas Rumpf
539fc5d58b
improve the error message for 'attempt to redefine X'; fixes #447
2018-09-17 19:54:56 +02:00
Araq
2f7b979e38
fixes #8066
2018-08-31 00:30:19 +02:00
Timothee Cour
b02bc66197
better formatting for recursive module dependency ( #8735 )
2018-08-23 08:19:03 +02:00
LemonBoy
bbe5e8326b
sfForward is also sfReorder for skModule symbols ( #8692 )
...
Take this into account while searching for undefined forward references.
Fixes #8665
2018-08-21 14:51:23 +02:00
Andreas Rumpf
dae5450947
WIP: disallow 'nil' for strings and seqs
2018-08-13 11:41:33 +02:00
Andreas Rumpf
e555e97b4b
use slashes instead of dots for paths
2018-08-06 20:00:26 +02:00
Andreas Rumpf
61fb83ecbb
baby steps for incremental compilation
2018-05-30 23:50:34 +02:00
Andreas Rumpf
40ec7be45c
refactoring: remove idents.legacy global variable and pass the IdentCache around explicitly
2018-05-27 22:09:15 +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
bf6c2c5ccf
preparations of making compiler/msgs.nim free of global variables
2018-05-17 15:21:22 +02:00
Andreas Rumpf
328e7a1005
options.nim: no global variables anymore
2018-05-13 17:52:21 +02:00
Andreas Rumpf
e1a921ce4f
lookups compiles again
2018-05-10 15:05:05 +02:00
cooldome
16c1a90857
Cpp codegen: handling of imported exceptions. Fixes #3571 ( #7360 )
2018-04-10 12:14:59 +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
f3a895f043
fixes #6965
2017-12-28 00:50:45 +01:00
Andreas Rumpf
a155130cf2
fixes #1860 ; macro generating a wrong nkSymChoice node
2017-10-30 15:37:34 +01:00
Andreas Rumpf
70ea45cdba
deprecated unary '<'
2017-10-29 08:37:13 +01:00
Andreas Rumpf
7889692523
first implementation of package level types that allow forwarding across module boundaries
2017-10-28 15:28:59 +02:00
Andreas Rumpf
1a61c4d46d
first implementation of the 'func' keyword
2017-09-23 23:22:53 +02:00
Andreas Rumpf
fd4ef6ae8f
.pure enums are much more convenient to use now
2017-09-17 17:36:37 +02:00
Andreas Rumpf
d02486aa48
compiler: better error messages ( #5613 )
2017-03-26 20:24:06 +02:00
Andreas Rumpf
46efaf294b
big compiler refactoring; avoid globals for multi method dispatcher generation
2017-02-22 16:27:52 +01:00
Dominik Picheta
1c233ba27a
More progress towards a working #3691 .
2017-02-03 19:50:22 +01:00
Dominik Picheta
656da1f6a9
WIP: as with generics.
2017-02-02 21:36:49 +01:00
Andreas Rumpf
4e481cc316
implements module grouping for the import statement
2016-12-21 22:13:50 +01:00
Andreas Rumpf
01ae0d28d4
recursive modules are only detected to improve error messages
2016-11-24 12:27:21 +01:00
Andreas Rumpf
de6198c747
fixes #4555
2016-08-02 12:47:02 +02:00
Andreas Rumpf
39ebe2175b
compiler almost free of deprecated expr/stmt names
2016-07-30 16:34:42 +02:00
Kier Davis
2bea2bdbbf
Locate 'attempt to redefine' errors at the import statement rather than at the first line of the imported module. Fixes #4541 .
2016-07-30 14:29:45 +01:00
Andreas Rumpf
5f623ea9ef
fixes an valid 'T' is not used hint
2016-07-20 16:16:56 +02:00
Andreas Rumpf
95ffeb6079
fixes #177
2016-05-11 17:39:37 +02:00
Andreas Rumpf
c1627354d1
first implementation of the new lambda-lifting pass; barely anything works
2015-12-26 00:42:30 +01:00
Araq
c921f30b1d
renamed inCompilesContext to compilesContextId; added test case for #3313
2015-09-18 11:29:43 +02:00
Araq
1fc590b6ea
don't generate memset calls for C++ objects
2015-03-18 11:42:36 +01:00
Araq
566ee874cd
minor cleanups
2015-03-01 13:52:00 +01:00
Araq
fe30ec83e2
nimsuggest improvements
2015-01-30 03:04:45 +01:00
Araq
5f6131cbdc
fixes #1944
2015-01-18 14:44:16 +01:00
Araq
da0fab7046
nimfix now in its own directory; single file mode now the default
2014-10-05 23:36:47 +02:00
Araq
569fbe8c37
'pretty' command does not exist anymore; improvements for nimfix
2014-09-10 02:19:46 +02:00
Araq
490371977e
some improvements for nimfix
2014-09-09 21:31:34 +02:00
Araq
bf557a7cdb
added nimfix tool
2014-09-05 01:16:48 +02:00
Araq
5946747970
updated the compiler to use the new symbol names
2014-08-28 23:48:42 +02:00
Araq
dbf9117c56
the big renamefest: first steps
2014-08-22 23:54:26 +02:00