summary refs log tree commit diff stats
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* bugfix: in some contexts, newSeq[T](n) is incorrectly inferred to have a ↵Zahary Karadjov2013-12-261-2/+4
| | | | seq[typedesc[T]] type
* better integration of tyStatic into typeRelZahary Karadjov2013-12-259-58/+66
|
* wip type class reforms (the compiler bootstraps fine)Zahary Karadjov2013-12-258-99/+94
| | | | | | * replace tfAny and tfAll with tyAnd and tyOr * integrate matchTypeClass into typeRel * introduce tyBuiltInTypeClass to handle types such as tuple, object, proc, etc
* make the current PContext accessible through TCandidateZahary Karadjov2013-12-255-46/+53
| | | | | | the goal here is to remove all the hacks from ParamTypeMatch and to handle all type matching in typeRel (the context there is required to evaluate any static params and to run the compilation tests of user-defined type classes)
* documented static paramsZahary Karadjov2013-12-251-0/+2
|
* static params: expr[T] is now static[T]Zahary Karadjov2013-12-1917-94/+118
| | | | | | | This introduces tyStatic and successfully bootstraps and handles few simple test cases. Static params within macros are no longer treated as PNimrodNodes - they are now equivalent to constants of the designated type.
* in successful compilations with verbosity:0, all output is suppressed ↵Zahary Karadjov2013-12-101-1/+3
| | | | (useful for combing with --run)
* fix computed dynlib names; fixes #718Zahary Karadjov2013-12-091-1/+1
|
* Merge branch 'master' of github.com:Araq/Nimrod into upstreamZahary Karadjov2013-12-0910-51/+93
|\
| * Merge pull request #698 from fowlmouth/smallstdlibAndreas Rumpf2013-12-041-7/+11
| |\ | | | | | | removed x11
| | * fixes compiler.lists.bringToFrontfowlmouth2013-12-021-7/+11
| | |
| * | don't use memset for temps unless necessaryAraq2013-12-031-7/+10
| | |
| * | Merge branch 'master' of github.com:Araq/NimrodAraq2013-12-032-5/+0
| |\ \
| | * | Renamed nimrod.cfg to nimrod.nimrod.cfgonionhammer2013-12-021-0/+0
| | | |
| | * | Updated cfg file processingErik O'Leary2013-12-021-5/+0
| | |/ | | | | | | | | | | | | No longer look at deprecated file.cfg, compiler will only look at file.nimrod.cfg
| * / fixes a regression where memset was used without including <string.h>Araq2013-12-033-0/+15
| |/
| * fixes #696Araq2013-12-011-0/+2
| |
| * fixes #681Araq2013-11-301-1/+19
| |
| * fixes #686Araq2013-11-292-20/+24
| |
| * always call the linker; fixes #660Araq2013-11-191-1/+1
| |
| * fixes #663Araq2013-11-191-9/+9
| |
| * Merge pull request #680 from Varriount/core/fix-generic-crashesAndreas Rumpf2013-11-191-2/+3
| |\ | | | | | | Prevent lambdas from crashing if given implicit generic parameters.
| | * Prevent lambdas from crashing if given implicit generic parameters.Clay Sweetser2013-11-181-2/+3
| | | | | | | | | | | | Fixes issues #599 and #641 (and possibly other generic-related issues)
* | | progress towards adding negative type classesZahary Karadjov2013-12-098-44/+263
| | | | | | | | | | | | | | | | | | [unittest bugfixes] the block form of check now allows comments errors when inspecting the arguments of var-accepting procs
* | | fixes #708Zahary Karadjov2013-12-071-3/+1
| | | | | | | | | | | | | | | | | | | | | It's unclear to me why for variables were treated as globals. This is likely to cause many problems, but in this particular case it was breaking the unittest/insepectArgs recursive function (the for loop variable has a different value in each stack frame)
* | | adding some provisions for writing lower-level unit tests targeting specific ↵Zahary Karadjov2013-12-074-4/+25
|/ / | | | | | | | | | | | | | | sub-systems of the compiler see sigmatch as an example. tests are compiled only when the compiler is compiled with -d:selftest to execute them, just run the resulting binary without arguments
* | simple unit test and better documentation for the user defined type classesZahary Karadjov2013-11-176-46/+65
| |
* | improvements for the `is` operator; implemented the type lifting rule in ↵Zahary Karadjov2013-11-173-12/+32
| | | | | | | | user-defined type classes
* | support for multiple test variables and var qualifiers in user-defined type ↵Zahary Karadjov2013-11-135-11/+34
|/ | | | classes
* Merge pull request #631 from mflamer/masterAndreas Rumpf2013-10-311-9/+13
|\ | | | | LockFree Hash Table 0.1
| * better better fix for Issue #629 Recursive generic types not workingMark Flamer2013-10-301-5/+4
| |
| * better fix for Issue #629 Recursive generic types not workingMark Flamer2013-10-291-11/+14
| |
| * fix for Issue #629 Recursive generic types not workingMark Flamer2013-10-251-0/+2
| |
* | Merge pull request #630 from mflamer/masterSimon Hafner2013-10-221-6/+2
|\| | | | | remove whitespace
| * more whitespace removalMark Flamer2013-10-211-3/+1
| |
| * remove extra white spaceMark Flamer2013-10-211-3/+1
| |
* | Merge pull request #628 from mflamer/masterAndreas Rumpf2013-10-211-2/+6
|\| | | | | fix for Issue #626 - Distinct and generics not working together
| * fix for Issue #626 - Distinct and generics not working togetherMark Flamer2013-10-211-2/+6
| |
* | fixes #616Araq2013-10-101-1/+1
| |
* | cooler quote for c2nimAraq2013-10-102-17/+15
| |
* | bugfix: package names should not contain '.'Araq2013-10-072-5/+17
| |
* | implemented top level asm statementsAraq2013-10-071-1/+5
| |
* | Merge branch 'master' of https://github.com/Araq/NimrodAraq2013-10-061-2/+2
|\ \
| * \ Merge pull request #604 from reactormonk/masterAndreas Rumpf2013-10-051-2/+2
| |\ \ | | | | | | | | moved eqproc to the correct magic position
| | * | don't mess with semfold, use vars insteadSimon Hafner2013-09-261-1/+0
| | | |
| | * | moved eqproc to the correct magic positionSimon Hafner2013-09-262-2/+3
| | | | | | | | | | | | | | | | also added mEqCString to evalOps so the test runs
| | * | Revert "deleted EqProc so the magic aligns again" - wrong remote.Simon Hafner2013-09-261-0/+2
| | | | | | | | | | | | | | | | This reverts commit d7c8b3ad06183cb5ad231981f01992016b5805b4.
| | * | deleted EqProc so the magic aligns againSimon Hafner2013-09-261-2/+0
| | | |
* | | | 'noStackFrame' implies 'naked' in the generated C codeAraq2013-10-066-12/+21
|/ / /
* | | fixed another semicolon related parsing bugAraq2013-10-021-4/+3
| | |