summary refs log tree commit diff stats
path: root/compiler/ast.nim
Commit message (Collapse)AuthorAgeFilesLines
* generic multi-methods should work nowAndreas Rumpf2016-07-281-0/+1
|
* fixes #4485; package handling works better; docgen works with --project on ↵Andreas Rumpf2016-07-191-1/+1
| | | | Nimble package level
* added system.newSeqOfCap for improved efficiencyAndreas Rumpf2016-07-151-1/+1
|
* make tests green againAndreas Rumpf2016-07-101-1/+0
|
* fixes #4371Andreas Rumpf2016-07-081-3/+4
|
* Add the ability to pass a value with the -d flagJeff Ciesielski2016-07-041-1/+1
| | | | | | | This allows the end user to use the {.magic: "IntDefine"/"StrDefine"} pragmas to pass values into code at compile time. This has a nice side effect of also allowing/requiring a default value to be assigned in the code (see osalloc.nim/StandaloneHeapSize for an example)
* fixes #4395, getType still not entirely correctAndreas Rumpf2016-06-231-0/+1
|
* system. for cstrings uses value comparisons, not reference comparisonsAndreas Rumpf2016-06-021-2/+2
|
* fixes #1713Andreas Rumpf2016-05-301-1/+1
|
* fixes #2159Andreas Rumpf2016-05-281-0/+3
| | | | Hints and warnings are only emitted for the main package that is compiled
* SpellcheckFederico Ceratto2016-02-291-1/+1
|
* use 'using' instead of 'sig' keyword; cleans up new features a bitAndreas Rumpf2016-02-291-1/+0
|
* added 'sig' feature; removed tfShared support in the compilerAndreas Rumpf2016-02-281-2/+3
|
* 'using' statement is obsoleteAndreas Rumpf2016-02-281-1/+0
|
* added experimental .this pragmaAndreas Rumpf2016-02-281-0/+1
|
* fixes #3636Andreas Rumpf2016-01-041-1/+1
|
* first implementation of the new lambda-lifting pass; barely anything worksAndreas Rumpf2015-12-261-11/+9
|
* added newTree to ast.nimAraq2015-11-101-0/+4
|
* nimsuggest: added 'chk', 'outline' and 'highlight' featuresAraq2015-11-011-0/+2
|
* switch to bitsize:intAman Gupta2015-09-291-1/+1
|
* implement bitsize pragma for bitfieldsAman Gupta2015-09-281-0/+1
|
* made disjoint checker smarter; fixes regressionsAraq2015-09-231-0/+8
|
* fixes #3313Araq2015-09-181-0/+3
|
* usage of NimNode triggers .compileTime context; fixes #1679Araq2015-09-141-0/+5
|
* preparations for better handling of 'a[i]' in generics; stmt lists can be ↵Araq2015-09-121-1/+9
| | | | lvalues
* fixes a critical codegen bug triggered by .asyncAraq2015-09-101-0/+1
|
* fixes #2590; methods now require a .base annotationAraq2015-09-061-0/+1
|
* nimvm is magicYuriy Glukhov2015-09-041-1/+2
|
* first implementation of write tracking and escape analysis; still disabledAraq2015-08-311-2/+3
|
* implemented macros.getImplAraq2015-08-211-1/+1
|
* fixes #3079, fixes #1146, fixes #2879Araq2015-07-221-0/+2
|
* Linebreak TMagic by rough categoryJacek Sieka2015-07-121-35/+57
|
* fixes #3054Araq2015-07-051-1/+2
|
* macros: Introduce sameType(a, b) for node typesAdam Strzelecki2015-07-031-1/+2
| | | | | | | | | | | | | Previously introduced node comparison `==` was working somehow wrong on nodes returned from getType(a), comparing just ids of the symbols. Recently introduced `==` change 47dce2688633fad840a2f5e4073c531f1cd640ca started comparing symbol nodes pointer-wise, thus strictly. Since getType(a) always creates new symbol pointing to the type, comparing two such nodes using `==` always returns false, even they point to the same type. That is why we need a new sameType macro to be able to tell if these nodes point to the same type.
* implements varargs[untyped]; refs #2545; to be documentedAraq2015-07-021-1/+4
|
* fixes #2935Araq2015-07-011-0/+3
|
* Merge pull request #2896 from r-ku/I64-magics-goneAndreas Rumpf2015-06-121-12/+10
|\ | | | | I64 magics gone
| * Removed magics: mAbsI64rku2015-06-101-2/+2
| |
| * Removed magics: mBitnotI64rku2015-06-101-2/+2
| |
| * Removed magics: mEqI64 mLtI64 mLeI64rku2015-06-101-2/+2
| |
| * Removed magics: mShrI64, mShlI64, mBitandI64, mBitorI64, mBitxorI64rku2015-06-101-2/+0
| | | | | | | | Author: rku <rokups@zoho.com>
| * Removed magics: mAddI64, mSubI64, mMulI64, mDivI64, mModI64rku2015-06-101-4/+4
| | | | | | | | Author: rku <rokups@zoho.com>
* | Merge pull request #2892 from apense/patch-6Andreas Rumpf2015-06-101-0/+3
|\ \ | | | | | | Fixes #2886 (moves compiler function into the compiler)
| * | Moved negative indexing operator hereapense2015-06-091-0/+3
| |/ | | | | Only used here (not in standard library)
* / securehash: Keep module name consistentAdam Strzelecki2015-06-091-1/+1
|/ | | | | | 1. All other modules don't use underscore, why this should be different? 2. Wrap some imports to 80 column
* Merge pull request #2780 from flaviut/cleanup-crcAndreas Rumpf2015-06-091-1/+1
|\ | | | | Use SHA1 instead of CRC
| * Rename crc module to "secure_hash"Flaviu Tamas2015-05-231-1/+1
| |
* | fixes #2854Araq2015-06-061-1/+1
| |
* | Merge pull request #2859 from nanoant/patch/norewrite-pragmaAndreas Rumpf2015-06-051-0/+1
|\ \ | | | | | | {.noRewrite.} pragma for term rewriting
| * | Introduce {.noRewrite.} expr pragma disabling TRAdam Strzelecki2015-06-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Term rewriting macros/templates are currently greedy and they will rewrite as long as there is a match. So there was no way to ensure some rewrite happens only once, eg. when rewriting term to same term plus extra content. With new macro we can actually prevent further rewriting on marked expr or stmts, eg. with given example echo(...) will be rewritten just once: template pwnEcho{echo(x)}(x: expr) = {.noRewrite.}: echo("pwned!") echo "ab"