Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | introduce tyFromExpr; fixes #618 | Zahary Karadjov | 2014-01-04 | 13 | -28/+109 |
| | |||||
* | fixed #597 | Zahary Karadjov | 2014-01-02 | 5 | -37/+126 |
| | |||||
* | clean-up some obsolete code; close #602 | Zahary Karadjov | 2013-12-31 | 6 | -205/+73 |
| | |||||
* | close #517 | Zahary Karadjov | 2013-12-31 | 1 | -0/+10 |
| | |||||
* | Templates will pick the candidate in the nearest scope when symbols are mixed-in | Zahary Karadjov | 2013-12-31 | 6 | -16/+32 |
| | |||||
* | migrate the static param handling to ReplaceTypeVars; fix tgenericvariant | Zahary Karadjov | 2013-12-30 | 6 | -26/+38 |
| | |||||
* | properly remove intLiterals from proc signatures; fixes trettypeinference | Zahary Karadjov | 2013-12-30 | 1 | -5/+13 |
| | |||||
* | handle recursive types during the instantiation of meta types; propagate ↵ | Zahary Karadjov | 2013-12-30 | 4 | -26/+86 |
| | | | | tfHasMeta more carefully | ||||
* | add incl/excl for sets accepting accepting other sets | Zahary Karadjov | 2013-12-30 | 1 | -0/+8 |
| | |||||
* | Introduce a PreMain proc in the C codegen | Zahary Karadjov | 2013-12-30 | 2 | -39/+62 |
| | | | | | | | | The rationale here is that it has become too hard to step into a program when #line directives are enabled. You have to skip over many lines of init code that doesn't have corresponding lines in the nimrod program. Now, you can just step-out of PreMain and go straight to the useful code in NimMain. | ||||
* | proc redefinition search based on the type system instead of on sloppy AST ↵ | Zahary Karadjov | 2013-12-30 | 3 | -30/+48 |
| | | | | | | | | | | matching This will work the same for procs/templates/macros/etc, having arbitrary mix of implicit and explicit generics (as long as the symbols are equivalent for the purposes of overload resolution, they will be detected as redefinitions) fixes tgeneric | ||||
* | restore return type inference | Zahary Karadjov | 2013-12-30 | 2 | -1/+4 |
| | |||||
* | fix the filtering of void params in procs' signatures | Zahary Karadjov | 2013-12-29 | 5 | -34/+28 |
| | |||||
* | Merge branch 'upstream' into devel | Zahary Karadjov | 2013-12-29 | 41 | -569/+902 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: compiler/ccgutils.nim compiler/msgs.nim compiler/sem.nim compiler/semexprs.nim compiler/seminst.nim compiler/semmagic.nim compiler/semstmts.nim compiler/semtypes.nim compiler/semtypinst.nim compiler/sigmatch.nim compiler/types.nim compiler/vmgen.nim lib/core/macros.nim lib/system.nim tests/reject/tenummix.nim web/news.txt | ||||
| * | integrate the logic of fixupProcType into ReplaceTypeVars | Zahary Karadjov | 2013-12-29 | 10 | -74/+108 |
| | | |||||
| * | make more tests green | Zahary Karadjov | 2013-12-29 | 15 | -163/+177 |
| | | |||||
| * | fixes #787 | Zahary Karadjov | 2013-12-28 | 2 | -9/+60 |
| | | |||||
| * | fix tclosure4 | Zahary Karadjov | 2013-12-28 | 2 | -6/+12 |
| | | |||||
| * | fix illegal recursion checks | Zahary Karadjov | 2013-12-28 | 3 | -18/+18 |
| | | |||||
| * | lift generic parameters from concrete composite type classes | Zahary Karadjov | 2013-12-28 | 5 | -25/+40 |
| | | |||||
| * | towards support for composite type classes such as seq[Number] and ↵ | Zahary Karadjov | 2013-12-27 | 8 | -26/+87 |
| | | | | | | | | SquareMatrix[T] | ||||
| * | forgotten modification to the news files | Zahary Karadjov | 2013-12-27 | 1 | -6/+8 |
| | | |||||
| * | bugfix: in some contexts, newSeq[T](n) is incorrectly inferred to have a ↵ | Zahary Karadjov | 2013-12-26 | 1 | -2/+4 |
| | | | | | | | | seq[typedesc[T]] type | ||||
| * | test case for semistatic | Zahary Karadjov | 2013-12-25 | 1 | -0/+24 |
| | | |||||
| * | better integration of tyStatic into typeRel | Zahary Karadjov | 2013-12-25 | 9 | -58/+66 |
| | | |||||
| * | wip type class reforms (the compiler bootstraps fine) | Zahary Karadjov | 2013-12-25 | 8 | -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 TCandidate | Zahary Karadjov | 2013-12-25 | 5 | -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 params | Zahary Karadjov | 2013-12-25 | 3 | -0/+66 |
| | | |||||
| * | static params: expr[T] is now static[T] | Zahary Karadjov | 2013-12-19 | 22 | -111/+136 |
| | | | | | | | | | | | | | | 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. | ||||
* | | todo.txt updated | Araq | 2013-12-29 | 1 | -1/+1 |
| | | |||||
* | | case consistency: niminst | Araq | 2013-12-29 | 4 | -75/+75 |
| | | |||||
* | | case consistency for linux | Araq | 2013-12-29 | 6 | -322/+322 |
| | | |||||
* | | case consistency: cs:partial bootstraps on windows | Araq | 2013-12-29 | 58 | -377/+384 |
| | | |||||
* | | case consistency: next steps | Araq | 2013-12-29 | 77 | -514/+513 |
| | | |||||
* | | improvements for 'pretty' | Araq | 2013-12-28 | 15 | -91/+99 |
| | | |||||
* | | case consistency part 9 | Araq | 2013-12-28 | 3 | -64/+64 |
| | | |||||
* | | case consistency part 8 | Araq | 2013-12-28 | 4 | -62/+62 |
| | | |||||
* | | case consistency part 7 | Araq | 2013-12-28 | 5 | -65/+63 |
| | | |||||
* | | case consistency part 6 | Araq | 2013-12-28 | 7 | -169/+169 |
| | | |||||
* | | case consistency part 5 | Araq | 2013-12-28 | 10 | -42/+42 |
| | | |||||
* | | case consistency part 4 | Araq | 2013-12-27 | 122 | -3322/+3322 |
| | | |||||
* | | case consistency part 3 | Araq | 2013-12-27 | 3 | -9/+9 |
| | | |||||
* | | case consistency part 2 | Araq | 2013-12-27 | 9 | -94/+90 |
| | | |||||
* | | case consistency part 1 | Araq | 2013-12-27 | 88 | -1144/+1266 |
| | | |||||
* | | templates can access hidden fields | Araq | 2013-12-25 | 6 | -42/+61 |
| | | |||||
* | | bootstraps with new template symbol binding rules | Araq | 2013-12-24 | 4 | -21/+20 |
| | | |||||
* | | attempt to merge newtempl | Araq | 2013-12-24 | 5 | -6/+646 |
| | | |||||
* | | Merge branch 'newtempl' into devel | Araq | 2013-12-24 | 2 | -4/+44 |
|\ \ | | | | | | | | | | | | | | | | | | | Conflicts: lib/system.nim tests/reject/tenummix.nim todo.txt | ||||
| * | | made some tests green | Araq | 2013-05-16 | 3 | -3/+3 |
| | | | |||||
| * | | 'bind' default for clean templates | Araq | 2013-05-15 | 5 | -8/+49 |
| | | |