Commit Graph

5489 Commits

Author SHA1 Message Date
Araq
b056d32a79 [refactoring] liftdestructors.nim is callable from lambdalifting; refs #11217 2019-06-12 10:44:45 +02:00
Arne Döring
e4d0f4fee0 fix regression in semfold for old right shift (#11477) 2019-06-12 09:26:30 +02:00
Araq
c07973e313 [refactoring] liftdestructors is now a module of its own 2019-06-12 08:45:47 +02:00
Araq
549d8cc0c6 [other] make typeAllowed easier to debug by using structured programming 2019-06-12 08:45:47 +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
94177f7357 VM can now cast integer type arbitrarily. (#11459) [feature] 2019-06-10 19:58:11 +02:00
Andreas Rumpf
caf93f4355 nimpretty: smart tabs support, fixes #9399 [bugfix] 2019-06-10 10:50:15 +02:00
Andreas Rumpf
cb47e49d3b nimpretty: keep a seq of tokens instead of a single string to enable better transformations [refactoring] 2019-06-09 22:22:50 +02:00
Andreas Rumpf
9f82e07b2d nimpretty: fixes #10156 [bugfix] 2019-06-08 00:00:00 +02:00
Arne Döring
99a4fed96b fix for passing tuples as static params to macros (#11423); fixes #10751 [bugfix]
* add vm value preparation proc

* small optimization
2019-06-07 14:34:59 +02:00
Araq
667af87e66 nimpretty: fixes #9505 [bugfix] 2019-06-07 12:59:31 +02:00
Araq
790bc5b07b nimpretty: fixes #10177 [bugfix] 2019-06-07 11:50:56 +02:00
Araq
447cc1ff09 nimpretty: fixes #10295 2019-06-07 10:37:00 +02:00
Araq
4296bddccb fixes #11412 2019-06-06 07:56:19 +02:00
Araq
8cc9753285 fixes #11405 2019-06-05 16:26:23 +02:00
andri lim
c16a753822 fix macrocache implementation (#11404)
* macrocache improvements

* fix macrocache implementation
2019-06-05 14:56:45 +02:00
Arne Döring
efbf43d4a9 intVal works now on enum field symbols (#11403)
* intVal works now on enum field symbols

* disable flakey titerators test
2019-06-05 14:55:47 +02:00
Arne Döring
cb45527e37 pass typedesc as NimNode to macros (#11400)
* change typedesc's design in macros

* Manual and changelog entry.

* add link to RFC
2019-06-05 09:17:04 +02:00
Andreas Rumpf
7215341190 make fullpaths the default in error messages and stack traces for mor… (#11385)
* make fullpaths the default in error messages and stack traces for more convenient development
* split up -d:release into -d:release and -d:danger flags
* workaround a Nim config parser bug
* fixes an old nim config parser bug
* make megatest green again
* make nimpretty tests work again
* make nimsuggest green
2019-06-05 08:02:54 +02:00
Jasper Jenkins
fc4f0808c4 parameter runtime discriminators (#11397)
* allow param for runtime discriminator construction
2019-06-04 22:10:39 +02:00
Araq
7c5e7a4f6a disable the new CaseTransition warning for the Nim compiler itself 2019-06-03 12:00:28 +02:00
LemonBoy
7d217a71d3 Render deprecated pragmas (#8886)
* Render deprecated pragmas
* fix the expected html
* clean up the documentation regarding deprecations
* fix typo
* fix system.nim
* fix random
2019-06-03 10:15:20 +02:00
John Paul Adrian Glaubitz
4a485cb7ef Add build support for Linux/alpha (#11386)
* compiler: Add alpha as target architecture on Linux

* build.sh: Enable CPU detection for alpha
2019-06-03 08:18:15 +02:00
Andreas Rumpf
c02320e230 sigmatch: use boolean algebra 2019-06-02 08:35:09 +02:00
genotrance
1255b3c864 Warn about object case transitions at compile time (#11378) 2019-06-02 06:40:07 +02:00
Andreas Rumpf
4a35d2b571 fixes #11375 (#11376) 2019-06-02 06:33:35 +02:00
John Paul Adrian Glaubitz
ec038998f0 Add build support for Linux/m68k (#11366)
* compiler: Add m68k as target architecture on Linux

* build.sh: Enable CPU detection for m68k
2019-06-02 00:20:28 +02:00
John Paul Adrian Glaubitz
af0ae5830f Add build support for Linux/sparc64 (#11365)
* compiler: Add sparc64 as target architecture on Linux

* build.sh: Use getconf for bitness detection on Linux/sparc

The isainfo utility is specific to Solaris and not available
on Linux/sparc. While getconf exists on Solaris as well, it
does not always seem to match the bitness reported by isainfo
on Solaris and isainfo should therefore be preferred on Solaris.
2019-06-01 10:45:44 +02:00
Arne Döring
5b27b263fd Remove immediate pragma (#11308)
* remove immediate from tests
* remove immediate from the compiler
2019-05-29 22:21:51 +02:00
Araq
9ecb1aae80 new compiler feature: --expandMacro 2019-05-29 20:47:28 +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
Araq
0f4446b861 docgen: do not render the ugly <//> operator; temporary hack until 0.20 has been released 2019-05-29 10:23:39 +02:00
Andreas Rumpf
8951680c05 fixes #10889 2019-05-29 08:00:52 +02:00
Araq
950f2d7c2f fixes #6755; error message could be better but oh well 2019-05-28 22:20:49 +02:00
Andreas Rumpf
e68adca0c9 fixes #6777 (#11347) 2019-05-28 22:00:01 +02:00
Araq
8bb1a6b041 fixes #11205 2019-05-28 21:30:41 +02:00
Araq
bcccc7dec8 docgen.nim: avoid compiler warning 2019-05-28 16:31:57 +02:00
Andreas Rumpf
9d8b4d6020 fixes #11057 (#11345) 2019-05-28 15:55:11 +02:00
Araq
84ca1f3bf3 hotfix for 32bit unsigned 'range' checking; incomplete, unknown why some operations produce range checks 2019-05-27 22:38:06 +02:00
Andreas Rumpf
49e686ab4e fixes #1286; object case transitions are now sound 2019-05-27 21:29:02 +02:00
Jasper Jenkins
1286ba3452 fix bool and range (#11336) 2019-05-27 07:59:22 +02:00
Jasper Jenkins
f774426095 Smarter variant object construction (#11273) 2019-05-26 21:22:02 +02:00
Andreas Rumpf
16aa10dfe1 fixes #10038; deprecate generic methods, they are unreliable 2019-05-25 23:56:16 +02:00
Andreas Rumpf
36a398d96f C codegen: preparations for better code generation 2019-05-25 20:53:11 +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
Ico Doornekamp
70fb3a93e9 list available options for --cpu, --os and --cc if the passed option is not found (#11328) 2019-05-25 20:22:57 +02:00
Kaushal Modi
2f610d621f Use the correct HTML file reference in "nim doc" generated idx files (#11326)
* Use the correct HTML file reference in "nim doc" generated idx files

Now "nim doc --out:foo.html --index:on bar.nim" generates "foo.html"
and the generated "bar.idx" contains references to "foo.html".

Fixes https://github.com/nim-lang/Nim/issues/11325.

* Refactor the nim doc tester to extend it for more tests

* Reference the HTML files relative to the outDir, not project dir

* Add test for issues #11312 and #11325

- https://github.com/nim-lang/Nim/issues/11312
- https://github.com/nim-lang/Nim/issues/11325
2019-05-25 20:20:25 +02:00
Andreas Rumpf
7e9cda7dba fixes #10299 (#11324) 2019-05-25 07:33:33 +02:00
Andreas Rumpf
7e53c1c5c5 fixes #11188 (#11319) 2019-05-24 22:50:43 +02:00
Andreas Rumpf
ef8ddef47b fixes #10912 (#11317)
* fixes #10912

* update the tutorial examples
2019-05-24 18:33:53 +02:00