Andreas Rumpf
ddaf2e3805
some progress on destructors for builtin seqs
2018-08-20 17:59:47 +02:00
LemonBoy
b28c7d434b
Update all the default parameters after an instantiation ( #8689 )
...
The old implementation relied on the (now?) wrong assumption that
default-valued parameters can only be placed after the required ones.
Fixes #8683
2018-08-20 16:54:13 +02:00
Andreas Rumpf
2def616069
exploit nil seqs for performance ( #8688 )
...
* changes $ for seqs to never produce 'nil'
* exploit the fact that empty seqs don't have to allocate in the code generator
2018-08-20 11:54:18 +02:00
Andreas Rumpf
696c0c48c7
fixes merge conflict
2018-08-19 15:14:03 +02:00
Andreas Rumpf
792829ad25
exploit the fact that empty seqs don't have to allocate in the code generator
2018-08-18 16:59:59 +02:00
LemonBoy
b5171f57ef
Expand tyAlias in typeToString ( #8634 )
...
Fixes #8339
2018-08-18 15:27:47 +02:00
Araq
887987bb1a
every .experimental feature has a corrsponding 'nimHasX' define; fixes #8644 ; refs #8672
2018-08-18 01:21:47 +02:00
alaviss
7898f2a785
scriptconfig: register passes once ( #8590 )
...
fixes #8235
2018-08-17 11:09:33 +02:00
Kaushal Modi
d73b19e379
Look for user nim.cfg in "nim/" subdir in usual config dir locations ( #8662 )
...
Fixes https://github.com/nim-lang/Nim/issues/8661 .
2018-08-17 10:52:10 +02:00
LemonBoy
ac0f5c83ca
Fixes 8535 ( #8591 )
...
* Goodbye postInitProc
* Give preInitProc its own scope
Avoid any conflict between the variables introduced by preInitProc and
initProc since both are codegen'd in the same function body.
* Fix codegen for global var init in emulated TLS
Fixes #8535
* Add test for #8535
* Keep a bogus stack frame around
* Remove more dead code
2018-08-17 00:34:27 +02:00
Andreas Rumpf
3ca8ebe778
fixes #8653
2018-08-16 18:49:22 +02:00
Emery Hemingway
2da0341b4d
Genode fixes ( #8501 )
...
* Genode fixes
- wrap strings in "Genode::Cstring" when logging
- define SIGABRT for Genode
- disable GCC -fstack-protector
- use log RPC for fatal messages
- add --os:genode build to appveyor
- define paramStr and paramCount
* Select fixups for Genode POSIX
2018-08-16 18:12:37 +02:00
Andreas Rumpf
e4c759fbff
Merge branch 'devel' into araq-misc
2018-08-16 01:22:21 +02:00
Andreas Rumpf
1061e26bc9
implements 'case statement macros' in order to encourage the development of pattern matching mechanisms that are not terrible to look at
2018-08-16 00:16:49 +02:00
Andreas Rumpf
da41fc1801
put the new for loop macros under an experimental switch named 'forLoopMacros'
2018-08-15 17:45:57 +02:00
Andreas Rumpf
27e1fbe7db
implement the --nilseqs switch properly
2018-08-15 16:56:32 +02:00
Andreas Rumpf
0da91aa744
changes how the now illegal 'string == nil' comparison is detected
2018-08-15 16:31:56 +02:00
LemonBoy
531c66d1ec
Allow taking address of skForVar variables ( #8632 )
...
Fixes #8630
2018-08-14 21:28:14 +02:00
LemonBoy
c04404635b
Fix unsound transform pass ( #8633 )
...
When a `var openArray[T]` function parameter goes trough the
`transformAddrDeref` pass we may lose the `var` specifier, leading to
nasty crashes at runtime.
2018-08-14 20:38:04 +02:00
Araq
f91a181f58
make tests green again
2018-08-13 23:16:03 +02:00
Araq
a0cde8cee6
Merge branch 'devel' into araq-misc
2018-08-13 20:16:18 +02:00
Araq
420ed0596b
fixes more nil handling regressions
2018-08-13 17:27:44 +02:00
cooldome
aa1cdebdc2
Converters to take into account constraints. Fixes #7520 ( #8593 )
2018-08-13 15:02:20 +02:00
Andreas Rumpf
dae5450947
WIP: disallow 'nil' for strings and seqs
2018-08-13 11:41:33 +02:00
LemonBoy
3cb963f114
Fixes 8616 ( #8617 )
...
* Don't leave dangling forward references to types
Fixes #8616
* Add a test case for #8616
2018-08-12 20:43:30 +02:00
LemonBoy
ba7c874a7d
Mysterious fix for #8550 ( #8561 )
...
Replacing the `for` body with a nkEmpty node is not the right thing to
do.
2018-08-12 20:41:48 +02:00
Andreas Rumpf
ba6601b149
fixes #8599
2018-08-10 12:09:51 +02:00
Andreas Rumpf
404de2f23e
Merge branch 'devel' into araq-misc
2018-08-10 12:06:16 +02:00
Andreas Rumpf
7e2418bd22
make nimsuggest go up in the directory tree in order to determine the main .nim file
2018-08-10 09:37:17 +02:00
Andreas Rumpf
864d24d70e
change the VM's max instruction count to 3_000_000
2018-08-10 08:42:13 +02:00
Araq
265003df1a
deprecated regionized pointers
2018-08-10 01:20:14 +02:00
Araq
b4e5c9d075
deprecate the .this pragma
2018-08-09 20:31:40 +02:00
alaviss
a2c5ffba0c
Uses XDG_CACHE_HOME if available ( #8585 )
...
* compiler/options: use XDG_CACHE_HOME if set
* doc/nimc: update documentation
2018-08-09 10:50:36 +02:00
Araq
640b30a47f
codegen improvement: map the empty string to 'nil' since it's now allowed to do that
2018-08-08 12:06:00 +02:00
Araq
a45faf2dd6
fixes the new nimcache handling
2018-08-08 09:35:38 +02:00
Andreas Rumpf
ef9dd46466
'nimcache' defaults to ~/.cache on Posix; cleaned up documentation
2018-08-08 09:35:38 +02:00
Andreas Rumpf
5b6b73f2a2
use slashes instead of dots for paths
2018-08-08 09:33:39 +02:00
Andreas Rumpf
a377c5cce4
introduce the --define 'osx' as an alias for 'macosx'
2018-08-08 09:33:37 +02:00
Araq
dd75346292
fixes the new nimcache handling
2018-08-07 22:54:45 +02:00
Araq
d8e66d6acc
fixes merge conflict
2018-08-07 22:25:01 +02:00
Timothee Cour
c352329714
runnableExamples: keep (gitignored) generated foo_examples.nim for inspection even on success ( #8544 )
2018-08-07 18:52:55 +02:00
andri lim
4d5cce9882
fixes #6255 , add system.ashr arithmetic right shift ( #8547 )
2018-08-07 18:41:30 +02:00
andri lim
c3d5ec8ead
fixes #8421 , fixes #7968 , Nim compiler compiles with MSVC C89 version ( #8556 )
2018-08-07 09:07:18 +02:00
Andreas Rumpf
e067a7681f
'nimcache' defaults to ~/.cache on Posix; cleaned up documentation
2018-08-06 23:38:29 +02:00
Andreas Rumpf
e555e97b4b
use slashes instead of dots for paths
2018-08-06 20:00:26 +02:00
Andreas Rumpf
e9d67266ef
introduce the --define 'osx' as an alias for 'macosx'
2018-08-06 19:58:48 +02:00
andri lim
6e3d1dced5
fixes #5617 , 'copyLineInfo' addition ( #8523 )
2018-08-05 23:38:21 +02:00
Araq
7ac6462cbd
make at least bootstrapping work
2018-08-05 14:17:24 +02:00
Andreas Rumpf
c57e320c94
fixes 7833 ( #8533 )
...
* fixes #7833 ; still to-do: fix setLen
* make tests green again
* also fixes setLen and string concats; refs #7833
* change formating to avoid a compiler warning
* emit the write barrier also for addChar
* fixes yet another regression
* make setLengthStr compile for the old version
* make growobjcrash complete earlier
2018-08-05 11:42:38 +02:00
Andreas Rumpf
abe0725ab1
WIP: nothing works
2018-08-05 09:38:14 +02:00