Commit Graph

4470 Commits

Author SHA1 Message Date
Araq
39192fa568 also fixes setLen and string concats; refs #7833 2018-07-31 15:46:00 +02:00
Araq
53566f7165 fixes #7833; still to-do: fix setLen 2018-07-30 23:27:01 +02:00
Araq
f2ddd99539 fixes #8425 2018-07-30 12:20:58 +02:00
Araq
d270245a01 disable --app:gui for non Windows targets; fixes #2576 2018-07-30 12:20:58 +02:00
cooldome
404f0d64af Add sizeof for arrays of integral types (#8445) 2018-07-30 11:00:06 +02:00
LemonBoy
c3a9ac4d35 Try conversion to static[T] in generic instantation (#8443)
Fixes #8439
2018-07-30 10:51:14 +02:00
skilchen
becb6743f8 fixes #8434 (incomplete info in errmsg about 'required type') (#8441) 2018-07-30 10:41:59 +02:00
Timothee Cour
06571f5495 fixes #8323 : avoid polluting git status after nim doc foo (#8415) 2018-07-30 10:36:23 +02:00
Oscar Nihlgård
97ea18746b Fix path resolution of submodules in the std namespace (#8453) 2018-07-30 09:07:11 +02:00
LemonBoy
1fc3a68205 Access implicit result trough envP in closures (#8471)
Reuse the existing machinery, most of the changes are only needed to
handle the `result = result` node in nkReturnStmt produced by the
closure iterator transform.

Fixes #338
2018-07-30 08:34:15 +02:00
LemonBoy
d5c9255cab Allow use of typedesc as type converters (#8409)
Fixes #8403
2018-07-24 08:25:08 +02:00
Yuriy Glukhov
2094209837 Fixed #8399 (#8401) 2018-07-22 22:30:59 +02:00
cooldome
ec02940185 Render bug: if expression with statement list expression as condition (#8375)
* Fixes #8348
2018-07-21 13:01:47 +02:00
Joey
2b6f324929 Add -w flag to Switch compilation to prevent deadlock (#8372)
See https://forum.nim-lang.org/t/4062.

The summary is that there are warnings printed when compiling and that causes a deadlock, likely due to output buffers being filled up. With the `-w` flag, the compiler outputs no warnings and the compilation is allowed to finish.
2018-07-20 14:47:19 -05:00
skilchen
143834ba4e keep the imports in runnableExamples visible in generated html doc (#8354) 2018-07-19 01:05:07 +02:00
cooldome
a651809411 Fixes #8343, Fixes #8344 (#8347) 2018-07-18 14:54:44 +02:00
Aaron Levine
6512f8688d Fix #8345 (#8350) 2018-07-18 08:08:49 +02:00
skilchen
2262c255e2 let runnableExamples start in a new paragraph (#8355)
fixes #8121, fixes #8346
2018-07-18 07:51:39 +02:00
Andreas Rumpf
6a9b082b53 Merge branch 'devel' of github.com:nim-lang/Nim into devel 2018-07-17 18:23:03 +02:00
Andreas Rumpf
2e3f477957 VM: accessing the string terminator is not allowed anymore; cleanup tests/system/tostring.nim 2018-07-17 18:22:20 +02:00
LemonBoy
ebf4e9f717 Extend init variable tracking to tuple assignments (#8321)
Fixes #8314
2018-07-17 17:50:05 +02:00
Andreas Rumpf
fc0bcccc15 fixes #8230 2018-07-17 16:43:05 +02:00
Andreas Rumpf
f29225fc63 sigmatch: no trailing whitespace 2018-07-17 16:14:12 +02:00
Quelklef
f2b6efb7dc Make pragmas look clickable in docs (#8176)
* Visual cues for hidden pragmas in docs.
* Add hover cue
2018-07-17 12:14:31 +02:00
Arne Döring
97d37aeb0b Gdb pretty printers (#8263) 2018-07-16 19:30:05 +02:00
LemonBoy
217a2cf098 Resolve converter call to constants in case arms (#8336)
Fixes #8333
2018-07-16 16:19:31 +02:00
Timothee Cour
d07489abf4 fix #7405 and #8195 (#8198)
* fix #7405 and #8195

* control pushInfoContext in semExprNoType,genStmts via a new hintExtendedContext; make NotesVerbosity computation more DRY

* addressed comments
2018-07-16 13:34:44 +02:00
Oscar Nihlgård
332469692d Bugfix for modules with multi byte characters in the name (#8319) 2018-07-14 16:00:51 +02:00
LemonBoy
9b98add6c7 Do not crash while instantiating a generic outside a call (#8279)
Fixes #8270
2018-07-14 01:44:40 +02:00
Yuriy Glukhov
dfe3f16022 Don't depend on string.h in codegen (#8299) 2018-07-13 17:41:59 +02:00
LemonBoy
54a85b4ff5 Give different names to objects coming from cpp files (#8278)
Prevent some nasty linker errors if the user switches between c and cpp
backends.
2018-07-13 15:23:41 +02:00
LemonBoy
3163a0f466 Do not consider enums with holes as ordinals (#8264)
Make the compiler behave consistently with respect to what's written in
the manual.

Fixes #1239
2018-07-12 18:08:45 +02:00
LemonBoy
ba1f036a56 Correctly hash inferred types (#8286)
We don't really want to hash the tyInferred container since that'd make
the "real" type and its inferred counterpart produce different hashes
and types for the very same type.

Fixes #8280
2018-07-12 13:00:11 +02:00
skilchen
6de52d2b74 make runnableExamples use a private nimcache so that they can be tested in parallel (#8281)
* make runnableExamples use a private nimcache so that they can be tested in parallel
2018-07-12 11:06:20 +02:00
cooldome
231a83a6b1 Fixes #8287 (#8288) 2018-07-12 11:03:08 +02:00
LemonBoy
5c5388c0a6 Handle subtype relations for converter parameters (#8248)
Fixes #7098
2018-07-09 20:05:53 +02:00
Dmitry Atamanov
854aa3958f Fixes maxLineLength's bug in the renderer (#8240) 2018-07-09 20:04:57 +02:00
LemonBoy
c6671776a1 Reset typedescMatched before paramTypesMatch (#8250)
The flag should not be carried out across different parameters.

Fixes #7794
2018-07-09 15:02:48 +02:00
cooldome
dec97924a4 Custom pragmas in proc types (#8205) 2018-07-09 12:11:03 +02:00
LemonBoy
d0b60f1fe3 Generate dynlib strings as a single rope (#8247)
In order not to trip the optimization in genInfixCall we have to do so.
The same trick is also used in setExternName.

Fixes #8241
2018-07-08 22:07:45 +02:00
LemonBoy
03c8fdc6cb Pick the and symbol we need explicitly (#8249)
Using getSysSym made the compiler pick a random `and` symbol: if the
symbol table is shuffled we may end up selecting one of the wrong
overloads.

Fixes #8246
2018-07-08 22:00:32 +02:00
LemonBoy
88714e77d8 Fix comparison of tyGenericBody in typerel (#8045)
As shown in #7734 and #7733 the logic in typerel fails to determine that
`type Foo` and `type Foo` are indeed equal.

Fixes #7734
2018-07-07 20:49:06 +02:00
Araq
8bcaee1fdf make tmemfile2 work again 2018-07-06 15:53:32 +02:00
Andreas Rumpf
0926754e68 make tests green again 2018-07-05 15:51:04 +02:00
Andreas Rumpf
9b31f67859 turn destructors into finalizers 2018-07-05 11:31:27 +02:00
Andreas Rumpf
04b3f8f24a enable destructors without the --newruntime switch 2018-07-04 20:36:15 +02:00
Andreas Rumpf
db35ac435b code cleanup: remove newScopeForIf switch 2018-07-04 20:04:08 +02:00
Andreas Rumpf
86a7054c88 Merge branch 'devel' into araq-devel 2018-07-04 19:25:53 +02:00
LemonBoy
ab47a870bc Error out if vararg match isn't an exact one (#8186)
Fixes #8172
2018-07-03 15:10:12 +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