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
Araq
604a15c0aa
some progress on the nimpretty tool; still not ready
2017-10-16 00:59:51 +02:00
Andreas Rumpf
078e78d208
do not produce the annoying small 'l' warning
2017-10-10 21:59:23 +02:00
Andreas Rumpf
eddf9abd13
beginnings of the new nimpretty tool; still unusable
2017-10-05 08:43:22 +02:00
Araq
3ccc9c467d
'with' and 'without' are not keywords anymore
2017-09-30 18:32:44 +02:00
Andreas Rumpf
ee43fc82d5
bugfix: keep the information of a raw float literal in the AST
2017-07-06 13:52:21 +02:00
Andreas Rumpf
b652b3cd52
remove en-dash from the language
2017-04-02 15:21:10 +02:00
Andreas Rumpf
f162ff7773
nimsuggest: make tdot1 test case green again
2017-03-14 10:28:50 +01:00
Andreas Rumpf
4912300ca7
Merge branch 'devel' into faster-nimsuggest
2017-03-14 10:18:20 +01:00
Andreas Rumpf
c5566f7c37
nimsuggest: make 'con' work again
2017-03-10 13:20:32 +01:00
Andreas Rumpf
db888475dc
nimsuggest: make tests green again
2017-03-10 09:57:36 +01:00
Araq
57ea01309e
nimsuggest: more things work
2017-03-09 17:09:39 +01:00
Araq
4755795416
nimsuggest: more precise cursor tracking
2017-03-09 14:58:14 +01:00
Araq
0f63c101e4
fixes nimsuggest bug #45
2017-03-08 13:21:40 +01:00
Araq
1887390b0f
nimsuggest: fixes nimsuggest bug #45 ; do not show suggestions in string literals or comments
2017-03-08 12:53:21 +01:00
Araq
773d17cd14
big refactoring: step 1
2016-10-31 15:34:44 +01:00
Araq
6ade7c0e0d
adapting the lexer for curlysyn
2016-10-12 17:52:29 +02:00
Jacek Sieka
3cd4cf4320
remove unused stuff
2016-08-09 22:54:27 +08:00
Andreas Rumpf
39ebe2175b
compiler almost free of deprecated expr/stmt names
2016-07-30 16:34:42 +02:00
Andreas Rumpf
84c3830c6b
fixes #4301
2016-07-12 02:14:26 +02:00
Andreas Rumpf
56f99f56ac
fixes edge cases in the lexer
2016-07-12 01:05:52 +02:00
Parashurama
8ce9739f11
adds support for unicode hexcode in string literals.
2016-06-01 23:36:46 +02:00
Araq
724cd631d8
allow tabs in multi-line comments
2016-05-10 22:03:07 +02:00
Jacek Sieka
298620c267
avoid overwriting token.indent in lexer.getNumber
...
if it wasn't for bug #3978 , assignment from getNumber would overwrite
tok.indent (which is set at top of rawGetTok, but not in getNumber)
2016-03-18 23:02:10 +08:00