summary refs log tree commit diff stats
path: root/compiler/ccgexprs.nim
Commit message (Collapse)AuthorAgeFilesLines
* language cleanup: the .unchecked pragma is deadAraq2018-11-061-6/+5
|
* make tmissingbracket compile for C++; refs #7870Araq2018-10-301-1/+1
|
* Don't crash if GC_{un,}ref is called on nil (#9445)LemonBoy2018-10-221-2/+2
| | | Fixes #9442
* gogc: GCC-8.2.0 compatibility and other improvements (#9211)Ștefan Talpalaru2018-10-111-8/+19
| | | | | | | | - Go's write barriers are now plugged-in in all the relevant points - "gcGo" is correctly classified by usesWriteBarrier() - some gogc structures and functions now use golib wrappers to keep GCC version-specific conditions out of the compiler/stdlib code - we no longer allow mixing the C malloc with Go's - fix a problem with string copying
* fixes #9281Araq2018-10-111-2/+16
|
* Unchecked arrays now have their own type (#9267)LemonBoy2018-10-101-0/+10
|
* fixes #5015Araq2018-10-031-2/+4
|
* fixes #7092Araq2018-10-021-1/+1
|
* C++ codegen: emit correctly typed code for closures in 'const'; refs #7870Araq2018-10-021-3/+9
|
* Fix codegen for some set operationsLemonBoy2018-09-281-1/+1
| | | | | | | Taking the LHS type when a temporary result value was needed lead to bad code being generated if we get a tyRef. Fixes #9098
* C codegen: support system.move and system.wasMovedAndreas Rumpf2018-09-241-0/+19
|
* Merge pull request #8746 from LemonBoy/nil-optsAndreas Rumpf2018-09-231-3/+7
|\ | | | | nil strings are movable
| * nil strings are movableLemonBoy2018-09-221-3/+7
| |
* | Fix codegen for set[T] parametersLemonBoy2018-09-151-1/+2
|/ | | | | | | | Sometimes sets are materialized as arrays and we must treat them as such: the CPP backend is pickier than the C one and would sometimes produce invalid code. Fixes #8967
* even more strict isNil handling for strings/seqs in order to detect bugsAraq2018-08-221-3/+2
|
* some progress on destructors for builtin seqsAndreas Rumpf2018-08-201-1/+2
|
* fixes merge conflictAndreas Rumpf2018-08-191-14/+23
|\
| * exploit the fact that empty seqs don't have to allocate in the code generatorAndreas Rumpf2018-08-181-7/+14
| |
| * Genode fixes (#8501)Emery Hemingway2018-08-161-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | * 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
| * WIP: disallow 'nil' for strings and seqsAndreas Rumpf2018-08-131-1/+2
| |
| * codegen improvement: map the empty string to 'nil' since it's now allowed to ↵Araq2018-08-081-3/+3
| | | | | | | | do that
| * fixes #6255, add `system.ashr` arithmetic right shift (#8547)andri lim2018-08-071-1/+1
| |
| * fixes 7833 (#8533)Andreas Rumpf2018-08-051-16/+36
| | | | | | | | | | | | | | | | | | | | | | * 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
* | make at least bootstrapping workAraq2018-08-051-16/+35
|\ \
| * | emit the write barrier also for addCharAraq2018-08-041-1/+7
| | |
| * | also fixes setLen and string concats; refs #7833Araq2018-07-311-8/+19
| | |
| * | fixes #7833; still to-do: fix setLenAraq2018-07-301-7/+10
| |/
* | --gc:destructors: next steps; WIPAndreas Rumpf2018-07-211-21/+23
| |
* | fix merge conflictAndreas Rumpf2018-07-181-24/+15
|\|
| * Don't depend on string.h in codegen (#8299)Yuriy Glukhov2018-07-131-21/+13
| |
* | WIP: strings/seqs based on destructorsAndreas Rumpf2018-07-171-4/+16
| |
* | more progress on destructor based stringsAndreas Rumpf2018-07-131-21/+53
| |
* | system.substr is not implemented with compilerProcs anymoreAndreas Rumpf2018-07-111-2/+3
| |
* | refactorings in preparations for the new runtimeAndreas Rumpf2018-07-101-5/+5
|/
* make tmemfile2 work againAraq2018-07-061-0/+1
|
* turn destructors into finalizersAndreas Rumpf2018-07-051-3/+15
|
* Merge branch 'devel' into araq-develAndreas Rumpf2018-07-011-13/+17
|\
| * Fix codegen for mInSet magic and empty sets (#8140)LemonBoy2018-06-291-13/+17
| | | | | | Fixes #8041
* | codgen refactoring: prepare for alternative string/seq implementationsAndreas Rumpf2018-06-291-8/+9
|/
* Fix minor codegen issue with static data typesLemonBoy2018-06-191-2/+2
|
* Added NIM_STRLIT_FLAG to seq literalsYuriy Glukhov2018-06-121-1/+1
|
* Correct field lookup in concept typesLemonBoy2018-06-121-1/+1
| | | | Fixes #6770
* fixex merge conflictsAraq2018-06-081-9/+16
|\
| * Merge pull request #7550 from jangko/fix4799Andreas Rumpf2018-06-061-1/+3
| |\ | | | | | | fixes #4799, varargs now can accept polymorphic types
| | * add more test to 4799andri lim2018-06-051-1/+3
| | |
| * | Merge pull request #7967 from nitely/empty_openarray_7904Andreas Rumpf2018-06-061-7/+12
| |\ \ | | | | | | | | support empty toOpenArray
| | * | check bounds instead of indexnitely2018-06-051-7/+12
| | |/
| * | Merge branch 'devel' into yield-in-tryYuriy Glukhov2018-05-151-97/+97
| |\|
| * | Closure iter transformationYuriy Glukhov2018-05-091-1/+1
| | |
* | | AST change: keep nkStaticStmt in the AST for incremental compilation supportAndreas Rumpf2018-06-031-1/+1
| | |