summary refs log tree commit diff stats
path: root/compiler/semexprs.nim
Commit message (Collapse)AuthorAgeFilesLines
* bugfix: object constructor doesn't allow 'distinct' typesAraq2014-02-011-2/+2
|
* 'nil' as a statement is deprecated, use an empty 'discard' insteadAraq2014-01-191-23/+22
|
* better html generator for the tester; fixes some VM bugsAraq2014-01-171-1/+1
|
* progress towards fixing tgenericshardcasesZahary Karadjov2014-01-061-4/+6
|
* Templates will pick the candidate in the nearest scope when symbols are mixed-inZahary Karadjov2013-12-311-1/+1
|
* restore return type inferenceZahary Karadjov2013-12-301-1/+1
|
* Merge branch 'upstream' into develZahary Karadjov2013-12-291-15/+18
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * make more tests greenZahary Karadjov2013-12-291-3/+5
| |
| * wip type class reforms (the compiler bootstraps fine)Zahary Karadjov2013-12-251-1/+1
| | | | | | | | | | | | * 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-251-8/+8
| | | | | | | | | | | | 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)
| * static params: expr[T] is now static[T]Zahary Karadjov2013-12-191-4/+5
| | | | | | | | | | | | | | 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.
* | case consistency: cs:partial bootstraps on windowsAraq2013-12-291-21/+24
| |
* | case consistency: next stepsAraq2013-12-291-8/+8
| |
* | case consistency part 4Araq2013-12-271-89/+89
| |
* | case consistency part 1Araq2013-12-271-10/+10
| |
* | Merge branch 'vm2' of github.com:Araq/Nimrod into vm2Araq2013-12-241-7/+8
|\ \
| * | Merge branch 'master' into vm2Araq2013-12-131-1/+1
| |\|
| * | new VM: improvementsAraq2013-12-121-3/+3
| | |
| * | more tests are greenAraq2013-12-081-1/+2
| | |
| * | Merge branch 'master' into vm2Araq2013-12-051-15/+29
| |\ \ | | | | | | | | | | | | | | | | Conflicts: compiler/sem.nim
| * | | compiler bootstraps with new VMAraq2013-10-151-3/+3
| | | |
* | | | Correct the spelling of the word 'implicitly'Satish BD2013-12-231-1/+1
| |_|/ |/| |
* | | Merge branch 'master' of github.com:Araq/Nimrod into upstreamZahary Karadjov2013-12-091-6/+8
|\ \ \ | | |/ | |/|
| * | fixes #686Araq2013-11-291-6/+8
| | |
* | | progress towards adding negative type classesZahary Karadjov2013-12-091-1/+1
|/ / | | | | | | | | | | [unittest bugfixes] the block form of check now allows comments errors when inspecting the arguments of var-accepting procs
* | simple unit test and better documentation for the user defined type classesZahary Karadjov2013-11-171-5/+7
| |
* | improvements for the `is` operator; implemented the type lifting rule in ↵Zahary Karadjov2013-11-171-2/+12
| | | | | | | | user-defined type classes
* | support for multiple test variables and var qualifiers in user-defined type ↵Zahary Karadjov2013-11-131-2/+2
|/ | | | classes
* fixes #566Araq2013-09-111-2/+2
|
* fixes #588Araq2013-09-101-5/+8
|
* fix regressions affecting the echo magic and the creating of rod filesZahary Karadjov2013-09-071-1/+1
| | | | | the markAndSweep GC was not responsible for the regressions so this commit restores its use
* Merge branch 'type-classes' into upstreamZahary Karadjov2013-09-031-41/+83
|\
| * implemented the using statementZahary Karadjov2013-08-311-0/+17
| |
| * minor improvement towards tgenericshardcasesZahary Karadjov2013-08-281-1/+5
| |
| * 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-271-0/+1
| |
| * fix tnoopZahary Karadjov2013-08-261-5/+3
| | | | | | | | | | | | | | | | 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-261-21/+10
| |
| * prevent eval crashes due to PContext-dependent ops not being available in ↵Zahary Karadjov2013-08-251-3/+3
| | | | | | | | evalConstExpr
| * working code for simple cases of user-defined type classesZahary Karadjov2013-08-251-9/+42
| |
* | fixes #563Araq2013-08-311-0/+1
| |
* | Merge branch 'master' of github.com:Araq/NimrodAraq2013-08-301-1/+1
|\|
| * pass-through of static int generic params to arrays when late instantiation ↵Zahary Karadjov2013-08-231-1/+1
| | | | | | | | is disabled
* | float64 is now an alias to 'float'; fixes #545Araq2013-08-301-1/+1
|/
* Revert "Revert "fix threading tests""Zahary Karadjov2013-08-191-1/+1
| | | | This reverts commit 9c45e33d8c8b1a5f5fca69a467fda87b9b547057.
* Revert "Revert "test cases for the new features""Zahary Karadjov2013-08-191-4/+11
| | | | This reverts commit e1b668c868dbc647bb5da98d8e4769c2c9b351fd.
* fixes #534Zahary Karadjov2013-08-071-1/+3
|
* Merge branch 'master' of github.com:Araq/NimrodAraq2013-07-201-2/+5
|\
| * fixes #505Araq2013-07-021-2/+5
| |
* | 'modules' module from 'main'; minor bugfixesAraq2013-07-201-1/+4
| |