Kaushal Modi
a4c613c110
[other] Improve the "tabs are not allowed" error message ( #11554 )
2019-06-20 22:16:06 +02:00
Araq
af39f26a3a
[bugfix] nimpretty: fixes #11468
2019-06-13 10:42:37 +02:00
Arne Döring
c7e1c665a1
[refactoring] refactor the compiler and stdlib to deprecation warnings ( #11419 )
2019-06-11 16:49:56 +02:00
Arne Döring
88b5dd3362
right shift is now by default sign preserving ( #11322 )
...
* right shift is now by default sign preserving
* fix hashString and semfold
* enable arithmetic shift right globally for CI
* fix typo
* remove xxx
* use oldShiftRight as flag
* apply feedback
* add changelog entry
2019-05-29 16:48:00 +02:00
Oscar Nihlgård
3a06022071
Enable range checking for unsigned integers ( #11313 )
...
* Enable range checking for unsigned integers
* Make the tests green
2019-05-25 20:48:13 +02:00
Arne Döring
1102b8ac6e
StringStream and parseJson, parseCfg, parseSql et al for the vm ( #10746 )
2019-02-28 22:57:57 +01:00
Araq
2e880c726b
fixes a lexer regression for 'nimble check'
2019-02-05 15:40:03 +01:00
Araq
23c11987b4
make the lexer more forgiving so that nim-regex compiles again
2019-02-04 15:59:18 +01:00
Oscar Nihlgård
9a003bae06
Fix error lexer error messages for to large numbers ( #10394 )
2019-01-21 15:14:38 +01:00
Timothee Cour
4233046e3f
make hex digit error msg more helpful ( #9727 )
2018-11-16 13:09:19 +01:00
Andreas Rumpf
8a357c270b
parser change: 'not' is always a unary operator; fixes #9574
2018-11-07 21:17:52 +01:00
Araq
87d60b2a4b
nimpretty: fixes #9500
2018-10-25 11:48:06 +02:00
Araq
06a6433db7
nimpretty: test for idempotence; fixes #9483
2018-10-24 15:19:29 +02:00
Araq
3ee53a7c8e
nimpretty: fixes #8078
2018-10-24 00:59:57 +02:00
Araq
e3a0415650
nimpretty: fixes #9398
2018-10-24 00:53:41 +02:00
Araq
695074214b
nimpretty: minor bug fix
2018-10-23 17:52:18 +02:00
Oscar Nihlgård
16c3d4332f
Fix infinite loop with nim check ( #9448 )
2018-10-22 17:24:14 +02:00
Oscar Nihlgård
163e9de3c2
Unicode escape in string literals ( #9390 )
2018-10-17 00:14:22 +02:00
Andreas Rumpf
f3c0703b7d
nimpretty: add #!nimpretty on/off directives
2018-10-16 16:55:04 +02:00
Andreas Rumpf
89ba0f8592
nimpretty: render r-strings properly, fixes #9236
2018-10-16 13:33:14 +02:00
Andreas Rumpf
86556ebfdb
compiler refactoring; use typesafe path handing; docgen: render symbols between modules
2018-09-07 19:21:16 +02:00
cooldome
c033ff990a
Renderer bug fixes ( #8804 )
...
Fixes #8763 : render bug: pure enums not handled correctly
Fixes #8762 : render bug: binary operators called with quotes rendered incorrectly
FIxes #8761 : render bug: inversion of operator priorities
2018-09-07 01:52:42 +02:00
Iván Montes
e66d9c9381
Cosmetic: fix typo on TRIPLESTR_LIT ( #8663 )
2018-08-21 22:17:19 +02:00
Vindaar
681d8e0749
Deprecate 'c', 'C' prefix for octal literals, fixes #8082 ( #8178 )
...
* deprecate `0c`, `0C` prefix for octal literals
Deprecates the previously allowed syntax of `0c` and `0C` as a prefix for
octal literals to bring the literals in line with the behavior of
`parseOct` from parseutils.
* add `msgKind` arg to `lexMessageLitNum` for deprecation messages
* change literal tests to check all valid integer literals
Also adds the `tinvaligintegerlit3` test to test for the (still)
invalid `0O` prefix.
2018-07-03 01:56:36 +02:00
Vindaar
cc7479b70f
improve error message if literal ends with an underscore ( #8114 )
2018-06-28 00:33:15 +02:00
Hiroki Noda
a85493610c
Lexer: do not accept some invalid integer literals ( #8089 )
...
* Lexer: do not accept some invalid integer literals
* Use Natural instead of uint, and result variable
2018-06-27 17:07:26 +02:00
Andreas Rumpf
dd81d9d5b7
nimpretty improvements
2018-06-19 09:42:33 +02:00
Andreas Rumpf
a1bd4a6cbd
nimpretty: first version that seems useful for others to test it
2018-06-16 01:46:39 +02:00
Araq
8e9551b1c7
fixex merge conflicts
2018-06-08 19:50:36 +02:00
Oscar Nihlgård
fd28236368
Multi byte characters should not be treated as part of an operator
2018-06-03 09:05:50 +02:00
Andreas Rumpf
c640bd2d1b
cleanup compiler/prettybase to not use redudant global variables
2018-05-27 22:52:10 +02:00
Andreas Rumpf
669a564492
remove more global variables in the Nim compiler
2018-05-27 11:10:56 +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
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
e4c088721a
make nimsuggest compile again
2018-05-13 09:53:00 +02:00
Andreas Rumpf
a8a544a8f7
avoid more global variables
2018-05-11 15:01:28 +02:00
Andreas Rumpf
61e57cfa13
big refactoring: parser compiles again
2018-05-10 10:49:51 +02:00
Andreas Rumpf
dfc17e5f8e
make Nimble not crash after the refactoring
2018-05-05 21:08:45 +02:00
Andreas Rumpf
b7116a28ee
compiler refactoring, pass config around explicitly
2018-05-05 18:47:29 +02:00
Andreas Rumpf
7e0540ed80
the compiler does not rely on the zero terminator anymore
2018-04-29 01:09:05 +02:00
Andreas Rumpf
33b69f0ed0
refactoring: make FileIndex a distinct type; make line information an uint16; fixes #7654
2018-04-21 08:13:37 +02:00
Araq
9bc963508f
nimpretty: next steps
2018-04-18 21:30:38 +02:00
Araq
a230307b48
little progress on nimpretty
2018-04-18 21:30:38 +02:00
Araq
212fdc5946
added the 'x.p[:T]' notation for explicit generic instantiations in combination with the ddot calling syntax
2018-04-06 22:05:57 +02:00
Araq
7206c692a3
in triple line string literals the newline should be '\n' too
2018-01-28 11:38:25 +01:00
Andreas Rumpf
80caca15bd
fixes #7089
2018-01-24 20:08:17 +01:00
Andreas Rumpf
416a322efb
added lexer.newlineFollows for parser experiments
2017-11-29 11:00:25 +01:00
Andreas Rumpf
cae5e33a4a
language change: 'generic' and 'atomic' are not keywords anymore
2017-11-21 11:27:35 +01:00
Andreas Rumpf
70ea45cdba
deprecated unary '<'
2017-10-29 08:37:13 +01:00