summary refs log tree commit diff stats
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* reverting the GC changeZahary Karadjov2013-09-051-1/+1
|
* resolved the conflictAraq2013-09-0320-204/+436
|\
| * Add arity typetraitMark Flamer2013-09-021-0/+4
| |
| * switching the compiler to the markAndSweep collectorZahary Karadjov2013-09-031-0/+2
| | | | | | | | | | This produces faster bootstrapping, works properly for the caas mode and fixes the Aporia build on a mac
| * Merge branch 'type-classes' into upstreamZahary Karadjov2013-09-0319-204/+430
| |\
| | * implemented the using statementZahary Karadjov2013-08-317-9/+51
| | |
| | * minor improvement towards tgenericshardcasesZahary Karadjov2013-08-284-24/+42
| | |
| | * fix tisopZahary Karadjov2013-08-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adding nil checks on the exit paths for semCompiles errors. This was probably not needed before, because semIndirectOp had a special detection for semCompiles contexts. We could try to restore these, but wouldn't this just postpone the crashes until someone tries the same expressions in nimrod check? One of the previous commits also used errorNode to avoid returning nil. This may be an alaternative approach.
| | * fix tcompilesZahary Karadjov2013-08-272-4/+4
| | |
| | * proper discrimination between csEmpty and csNoMatchZahary Karadjov2013-08-271-3/+8
| | | | | | | | | | | | fixes twrongtupleaccess and topaque
| | * fix tnoopZahary Karadjov2013-08-263-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | This commit requires further investigation. Fixing semExpr(nkCall) once and for all to work with sym-choices and to allow overloading with immediate templates and macros will probably set this straight too.
| | * implemented delegators and improved the error messages of unmatched type classesZahary Karadjov2013-08-2612-82/+119
| | |
| | * prevent eval crashes due to PContext-dependent ops not being available in ↵Zahary Karadjov2013-08-254-42/+40
| | | | | | | | | | | | evalConstExpr
| | * working code for simple cases of user-defined type classesZahary Karadjov2013-08-257-41/+135
| | |
| | * fix parsing of ``proc foo(x: distinct Type)``Zahary Karadjov2013-08-241-6/+1
| | |
| | * parsing of user defined type classesZahary Karadjov2013-08-232-1/+34
| | |
* | | better support for GNU's assemblerAraq2013-09-033-11/+29
|/ /
* | bugfix: line information for commentsAraq2013-09-011-1/+0
| |
* | -d:nocaas mode for easier bootstrapping on exotic OSes (Haiku)Araq2013-09-013-22/+36
| |
* | fixes #582Araq2013-09-011-1/+0
| |
* | fixes #516Araq2013-08-311-3/+6
| |
* | fixes #554, fixes #179Araq2013-08-312-4/+7
| |
* | fixes #459Araq2013-08-311-2/+5
| |
* | fixes #563Araq2013-08-311-0/+1
| |
* | fixes #569; C++ codegen works againAraq2013-08-311-12/+7
| |
* | fixes #578Araq2013-08-302-2/+2
| |
* | bugfix: conversions to float32 are allowed again but of lower priorityAraq2013-08-301-3/+3
| |
* | conversions to float32 are allowed again but of lower priorityAraq2013-08-301-3/+3
| |
* | Merge branch 'master' of github.com:Araq/NimrodAraq2013-08-3012-54/+124
|\|
| * implemented and documented the new typedesc binding rulesZahary Karadjov2013-08-232-5/+13
| |
| * pass-through of static int generic params to arrays when late instantiation ↵Zahary Karadjov2013-08-237-16/+24
| | | | | | | | is disabled
| * Experimental support for delayed instantiation of genericsZahary Karadjov2013-08-2310-39/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This postpones the semantic pass over the generic's body until the generic is instantiated. There are several pros and cons for this method and the capabilities that it enables may still be possible in the old framework if we teach it a few new trick. Such an attempt will follow in the next commits. pros: 1) It allows macros to be expanded during generic instantiation that will provide the body of the generic. See ``tmacrogenerics``. 2) The instantiation code is dramatically simplified. Dealing with unknown types in the generic's body pre-pass requires a lot of hacky code and error silencing in semTypeNode. See ``tgenericshardcases``. cons: 1) There is a performance penalty of roughly 5% when bootstrapping. 2) Certain errors that used to be detected in the previous pre-pass won't be detected with the new scheme until instantiation.
* | fixes #572Araq2013-08-301-5/+5
| |
* | float64 is now an alias to 'float'; fixes #545Araq2013-08-306-16/+33
| |
* | bugfix: 'not x of y' requires ()Araq2013-08-301-3/+9
| |
* | docgen: more newlines in the output to support primitive postprocessorsAraq2013-08-292-16/+2
|/
* Merge branch 'master' of github.com:Araq/NimrodAraq2013-08-2217-235/+457
|\
| * hacky fix for generic constraints matchingZahary Karadjov2013-08-195-9/+34
| |
| * check the owners of generic instantiations properly and fix tinvalidclosureZahary Karadjov2013-08-192-3/+12
| |
| * work-in-progress for compiling generics in their owner moduleZahary Karadjov2013-08-194-8/+17
| |
| * some steps to improve the type mismatches with the newZahary Karadjov2013-08-192-10/+17
| | | | | | | | generic instantiation logic
| * fixes iterating over enumsZahary Karadjov2013-08-191-4/+4
| |
| * Revert "Revert "made some tests green""Zahary Karadjov2013-08-194-19/+25
| |
| * Revert "Revert "further fixes for void stripping. fixes tvoid.""Zahary Karadjov2013-08-191-20/+25
| | | | | | | | This reverts commit d11cf5d1915d83159094f5074a6e17a72c65d9fa.
| * Revert "Revert "fix threading tests""Zahary Karadjov2013-08-192-9/+17
| | | | | | | | This reverts commit 9c45e33d8c8b1a5f5fca69a467fda87b9b547057.
| * Revert "Revert "fix tforwardgeneric""Zahary Karadjov2013-08-193-4/+5
| | | | | | | | This reverts commit e3f93241c3824e49b69c647bbd44726a79e8f8f8.
| * Revert "Revert "static and default params for generics""Zahary Karadjov2013-08-194-61/+92
| | | | | | | | This reverts commit 0662ec4a434f4656b5afc486bc4ebaab82c52da6.
| * Revert "Revert "allow keyword params for the `[]` and `{}` operators""Zahary Karadjov2013-08-191-8/+12
| | | | | | | | This reverts commit b7ea4a7e65ddf10bf3e425e59bc57e9f9c57e916.
| * remerge "allow void as field type"Zahary Karadjov2013-08-192-27/+43
| |
| * Revert "Revert "bugfix: emulated thread vars used in combination with the ↵Zahary Karadjov2013-08-193-4/+11
| | | | | | | | | | | | mark & sweep GC"" This reverts commit 75c586bbe1cc649b36fc00362ab40ebb1d163d9f.