Arne Döring
b80dbdb77d
Fix vm signed xor ( #10519 )
...
* fix #10482
* undo changes
* fix for bitwise not
* remove dead opcode
2019-02-01 12:12:10 +01:00
cooldome
1d5437e9d2
vm fix for bitwise signed ints ( #10507 )
...
* fixes #10482
* add missing file
* bug fix
2019-01-31 19:48:39 +01:00
Timothee Cour
ec6e5681da
fix #8063 by adding a testcase for: Deprecation warnings for enum values print twice ( #10508 )
2019-01-31 11:44:11 +01:00
Miran
fa058773db
fixes #10042 (allow spaces in import) ( #10504 )
...
This allows spaces in imports, by using the following syntax:
* `import "directory with spaces" / subdir / file`, or
* `import "directory with spaces/subdir/file"`
2019-01-31 08:20:00 +01:00
Andreas Rumpf
dee8e6e98a
gc: destructors is beginning to work ( #10483 )
...
* kochdocs.nim: code cleanup
* docgen: nicer indentation
* parser.nim: code cleanup
* fixes #10458
* make tests green again
* make =destroy mixins
* gc:destructors: produced C code is almost working
* --gc:destructors simple program compiles (but leaks memory)
* gc:destructors make examples compile in C++ mode
* destructors: string implementation bugfixes
* strs.nim: minor code cleanup
* destructors: builtin seqs are beginning to work
* remove debugging helpers
2019-01-29 15:12:16 +01:00
Araq
07a0a61875
fixes #9149 [backport]
2019-01-29 14:31:43 +01:00
cooldome
690f21043d
isLastRead regression fix ( #10463 )
...
* fixes #10462
* add a test
2019-01-28 08:32:14 +01:00
LemonBoy
3ce6b2acb9
Fix exception tracking in try blocks ( #10455 )
...
Exceptions raised inside a nkFinally/nkExcept block are not caught by
the block itself.
Fixes #3886
2019-01-27 10:32:44 +01:00
Timothee Cour
4d230db5ab
closes #8610 ; adds test case ( #10454 )
2019-01-25 19:28:03 +01:00
Miran
268197add8
properly deprecate parseopt2 ( #10452 )
2019-01-25 13:13:55 +01:00
narimiran
f0be575ed1
move tests from tospaths to tos, fixes #9671
...
Also, change some of `echo`s to `doAssert`.
2019-01-23 22:04:00 +01:00
Vindaar
d9ee377517
fix #10339 by returning type attached to nkEmpty ( #10370 )
...
* fix #10339 by checking for nkObjConstr
* revert check for nkObjConstr, return type from nkEmpty node
The correct type needed in `semObjConstr` to fix #10339 is indeed
available, but attached to an `nkEmpty` node. These were previously
discarded in `semTypeNode`, which is used to extract the type for the
object.
* simplify return of PType from `nkEmpty`
* also fixes #9866 , add test case
2019-01-23 11:17:32 +01:00
LemonBoy
9c0e5c4c07
Harmonize the var/let and const handling ( #10410 )
...
Fixes #10333
2019-01-23 11:10:51 +01:00
narimiran
f1a841c605
remove tdont_be_stupid, fixes #10386
2019-01-23 09:19:42 +01:00
Ico Doornekamp
0d480bfe22
Added basic bit manipulation procs to bitops ( #10338 )
2019-01-23 09:16:14 +01:00
Vindaar
36e34d9aed
close #3899 by adding test case ( #10424 )
2019-01-23 08:44:19 +01:00
LemonBoy
eee9729f53
Fix semantic analysis with noReturn proc in tail pos ( #10422 )
...
Fixes #10417
2019-01-23 07:30:49 +01:00
Ray Imber
94f6a6b294
Fix for issue #10342 . better message for generic subclass instantiation ( #10354 )
...
* Fix for issue #10342 . better message for generic subclass instantiation errors.
2019-01-22 17:05:26 -08:00
Miran
0ebfcd4c0f
Remove deprecated modules (asyncio, sockets, ftpclient) ( #10401 )
2019-01-22 16:06:44 +01:00
LemonBoy
6825430831
Restrict ptr/ref to ptr/ref implicit conversion ( #10411 )
...
* Restrict ptr/ref to ptr/ref implicit conversion
Fixes #10409
* Make the ptr conversions explicit in db_odbc
2019-01-22 11:17:20 +01:00
Neelesh Chandola
226c15499f
Fix compileTime pragma applying to whole var/let section ( #10389 )
2019-01-22 07:55:11 +01:00
LemonBoy
44c04b3571
Object downconversion in VM should not copy ( #10378 )
...
Hopefully the type-check phase already rejected all the invalid
conversions by the time we execute the VM bytecode.
Problem reported by chrisheller on the Nim Forum
2019-01-22 07:36:40 +01:00
LemonBoy
3ea099bc7f
Finalizer proc must be global ( #10388 )
...
Fixes #10376
2019-01-22 07:35:52 +01:00
LemonBoy
ee89ba6bdb
Fix subtype conversion w/ varargs arguments ( #10402 )
...
The type matching is done on the `T` of the `varargs[T]` so the
conversion must be performed to `T` and not to the whole type.
This problem is only noticeable with the cpp backend since C doesn't
give a damn shit about your fucking (wrong) types.
Fixes #9845
2019-01-21 19:12:17 +01:00
LemonBoy
ae5d8fbd9d
Proper check for tyStatic[T] -> U conversions ( #10382 )
...
Drop the outer tyStatic shell then perform the check.
Fixes #7609
2019-01-21 17:27:36 +01:00
Oscar Nihlgård
a4cdd25b19
Support system.reset in vm ( #10400 )
2019-01-21 17:00:33 +01:00
Oscar Nihlgård
9a003bae06
Fix error lexer error messages for to large numbers ( #10394 )
2019-01-21 15:14:38 +01:00
Federico Ceratto
095eaacf21
Fix spelling errors ( #10379 )
2019-01-19 16:01:27 +01:00
Andreas Rumpf
2371b4be96
ported havlak and gcbench benchmarks to work with --gc:regions
2019-01-19 12:48:39 +01:00
Andreas Rumpf
9985706fb8
GC tests: make them take less time to save CI cycles
2019-01-19 12:48:39 +01:00
Ico Doornekamp
f11f36e7d5
Fixed getCustomPragmaVal to allow multiple fields in custom annotations ( #10289 )
2019-01-18 09:04:12 +01:00
Timothee Cour
27e2ed4375
fix #9629 every binary cmd line option allows on/off/empty=on ( #10353 )
...
* fix #9629 every binary cmd line option allows on/off/empty=on
* workaround refs #10359
2019-01-18 09:03:26 +01:00
cooldome
1e63f1edb3
destructors: first step towards fixing #9617 ( #10341 )
2019-01-18 08:51:22 +01:00
Miran
214f48eae9
Remove long deprecated stuff ( #10332 )
2019-01-18 07:18:32 +01:00
Timothee Cour
42bac52426
[CI] now enables NIM_COMPILE_TO_CPP=true to run without allow_failures ( #10315 )
...
* better fix for `nim cpp` bootstrap error: error: no member named raise_id
* [CI] now enables runs NIM_COMPILE_TO_CPP=true without allow_failures
* workaround refs #10343
2019-01-17 08:00:44 +01:00
LemonBoy
15584879b9
Properly wrap discarded statements ( #10322 )
...
Failing to do so lead the codegen to emit invalid code sometimes,
especially when C++ references were involved.
Fixes #10241
2019-01-17 07:55:29 +01:00
Araq
8947779dd0
disable one more test for C++
2019-01-16 21:19:51 +01:00
Miran
b48364694d
Merge pull request #10318 (Better docs for four modules)
2019-01-16 11:48:37 +01:00
Timothee Cour
b8454327c5
json: support tuple ( #10010 )
2019-01-16 10:16:14 +01:00
narimiran
be6456f0f4
better docs: strutils
2019-01-16 09:45:51 +01:00
narimiran
b097081f10
better docs: sequtils
2019-01-16 09:45:27 +01:00
Timothee Cour
fbd6743ea1
fix sdl_test test that failed in CI cpp mode ( #10314 )
...
* fix sdl_test test that failed in CI cpp mode
* preserve old code for NimInAction in `nim c` mode
2019-01-15 15:17:52 -08:00
Timothee Cour
795e5e11ef
parseopt2.cmdLineRest is now correct too ( #10304 )
2019-01-15 21:51:02 +01:00
Timothee Cour
4355f23ee5
fix #10305 nim cpp is now nan-correct at CT ( #10310 )
...
* fix #10305 nim cpp is now nan-correct at CT
* add example where simply `nim cpp -d:release` would exhibit nan bug
2019-01-15 14:50:28 +01:00
Timothee Cour
c05e9c7c73
fix twrong_refcounts in nim cpp mode ( #10313 )
2019-01-15 14:46:01 +01:00
Andreas Rumpf
05c52ff34f
fixes #10203 ( #10290 )
...
* fixes #10203
* make typredef test green again
* fixes the regressions differently
2019-01-15 10:15:27 +01:00
Andreas Rumpf
06a8b48811
disable one more test for C++
2019-01-15 10:02:09 +01:00
Neelesh Chandola
8922063bd8
typed/untyped return type is invalid for everything except templates and macros ( #10275 )
2019-01-15 08:08:12 +01:00
Timothee Cour
9e68b2ce5d
fix test
2019-01-14 17:00:54 -08:00
Timothee Cour
0a8762eb7b
fix #9842 #9951 : nim -r and parseopt.cmdLineRest are now correct
2019-01-14 17:00:54 -08:00