Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | compiler: Trim .nim files trailing whitespace | Adam Strzelecki | 2015-09-04 | 1 | -1/+1 |
| | | | | via OSX: find . -name '*.nim' -exec sed -i '' -E 's/[[:space:]]+$//' {} + | ||||
* | compiler_ropes: more lib_ropes porting | Jacek Sieka | 2015-04-08 | 1 | -67/+62 |
| | |||||
* | Get rid of deprecation warnings | def | 2015-04-07 | 1 | -32/+5 |
| | |||||
* | ropes: remove more unnecessary checks | Jacek Sieka | 2015-04-03 | 1 | -2/+2 |
| | |||||
* | compiler_ropes: remove unnecessary length check | Jacek Sieka | 2015-04-03 | 1 | -1/+1 |
| | | | | frmt[frmt.len] isn't an out-of-bounds access for strings (!) | ||||
* | compiler_ropes: deprecate old function names | Jacek Sieka | 2015-04-01 | 1 | -16/+15 |
| | |||||
* | compiler_ropes: TRope -> RopeObj, PRope* -> Rope* | Jacek Sieka | 2015-04-01 | 1 | -50/+56 |
| | |||||
* | compiler_ropes: toRope -> rope | Jacek Sieka | 2015-04-01 | 1 | -11/+17 |
| | |||||
* | ropes: make lib & compiler frmt more similar, fix out-of-bounds accesses in ↵ | Jacek Sieka | 2015-04-01 | 1 | -1/+15 |
| | | | | lib ropes | ||||
* | compiler_ropes: ropef -> %, appf -> addf | Jacek Sieka | 2015-04-01 | 1 | -19/+21 |
| | |||||
* | compiler_ropes: ropeEqualsFile -> equalsFile, no more max rope component length | Jacek Sieka | 2015-04-01 | 1 | -56/+38 |
| | | | | | | | read file data in bigger blocks, avoiding lots of file api calls also removed crc step - seems easier to simply compare the bytes rather than calculating two crc's | ||||
* | compiler_ropes: add `&` and add | Jacek Sieka | 2015-04-01 | 1 | -24/+37 |
| | | | | | Invokations still need to be updated, but that's a lot of changes, so save for later | ||||
* | compiler_ropes: ropeToStr -> $ | Jacek Sieka | 2015-04-01 | 1 | -2/+1 |
| | |||||
* | compiler_ropes: don't expose newRope | Jacek Sieka | 2015-04-01 | 1 | -1/+1 |
| | |||||
* | compiler_ropes: ropeLen -> len | Jacek Sieka | 2015-04-01 | 1 | -2/+1 |
| | |||||
* | prepare for upcoming parsing change of unary operators | Araq | 2015-03-22 | 1 | -61/+61 |
| | |||||
* | Fix typos | Federico Ceratto | 2015-02-15 | 1 | -1/+1 |
| | |||||
* | Nimrod renamed to Nim | Araq | 2014-08-28 | 1 | -2/+2 |
| | |||||
* | renamefest | Araq | 2014-08-23 | 1 | -5/+5 |
| | |||||
* | Merge branch 'upstream' into devel | Zahary Karadjov | 2013-12-29 | 1 | -7/+10 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 | ||||
| * | static params: expr[T] is now static[T] | Zahary Karadjov | 2013-12-19 | 1 | -7/+10 |
| | | | | | | | | | | | | | | 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: next steps | Araq | 2013-12-29 | 1 | -4/+4 |
| | | |||||
* | | case consistency part 4 | Araq | 2013-12-27 | 1 | -7/+7 |
| | | |||||
* | | case consistency part 1 | Araq | 2013-12-27 | 1 | -13/+13 |
|/ | |||||
* | Removes executable bit for text files. | Grzegorz Adam Hankiewicz | 2013-03-16 | 1 | -0/+0 |
| | |||||
* | adds an option to interleave the generated code with snippets from the ↵ | Zahary Karadjov | 2012-12-02 | 1 | -8/+16 |
| | | | | | | | | | | | | | | | original source Lines from the original source are outputted as comments next to line directives. Hopefully, this will make debugging codegen problems easier. Other changes: The frame setup code now uses a single-line C macro. My motivation was to reduce the noise in the generated output and make it easier to step over the boiler-plate code, but counter-intuitively this also improved the overall compilation speed a little bit so I applied the same treatment to line tracking too (this reduces the size of the generated files and the explanation is that probably the I/O overhead dominates the macro expansion costs). | ||||
* | temporary debugging code for the memory leak investigation | Zahary Karadjov | 2012-11-28 | 1 | -0/+4 |
| | |||||
* | disables the compile-time rope formatting during bootstrapping | Zahary Karadjov | 2012-11-28 | 1 | -2/+5 |
| | |||||
* | experimental compile-time rope formatting code | Zahary Karadjov | 2012-11-28 | 1 | -2/+23 |
| | |||||
* | implemented a stack trace profiler | Araq | 2012-09-15 | 1 | -0/+1 |
| | |||||
* | openarray/varargs split; breaks bootstrapping | Araq | 2012-08-16 | 1 | -6/+6 |
| | |||||
* | made compiler more robust for idetools support | Araq | 2012-07-30 | 1 | -1/+3 |
| | |||||
* | implements #173 | Araq | 2012-07-28 | 1 | -1/+1 |
| | |||||
* | doc2 improvements | Araq | 2012-06-24 | 1 | -5/+5 |
| | |||||
* | extracted documentation generator | Araq | 2012-05-09 | 1 | -0/+3 |
| | |||||
* | @ is a sigil-like operator | Araq | 2012-04-15 | 1 | -104/+6 |
| | |||||
* | performance improvements for ropes | Araq | 2012-04-13 | 1 | -14/+20 |
| | |||||
* | year 2012 for most copyright headers | Araq | 2012-01-02 | 1 | -1/+1 |
| | |||||
* | first steps to C file merge operation for incremental compilation | Araq | 2011-10-21 | 1 | -0/+6 |
| | |||||
* | Multiple C lines corresponding to a single nimrod line are joined together | Zahary Karadjov | 2011-09-20 | 1 | -2/+5 |
| | | | | | | | | | | | | | | | | | | | | | | This patch greatly improves the "step over" operation available in debuggers. In practice, there are often 4-8 lines of C code generated for each nimrod line Each such line will be responsible to a single step in the debugger that is a) not expected by the user b) taking the user to an incorrect line in the nimrod code To keep this working, all code generation should use the rope formatting facilities when producing new lines (i.e. $n and $N). New semantics for the format string are introduced: $n means "soft new line" that could be joined/broken when lineDir is enabled. $N means "hard new line" that will always appear as a new line. As an alternative to this approach, I also tested producing code like this: #line "code.nim" 154 foo = bar; \ foo(bar) \ This is better for readability of the final output, but unfortunately it didn't produce the desired result across all compilers/debuggers. | ||||
* | bugfix: 'final' not passed to generic | Araq | 2011-07-29 | 1 | -2/+2 |
| | |||||
* | got rid of nstrtabs and nhashes modules | Araq | 2011-06-10 | 1 | -1/+1 |
| | |||||
* | deprecated system.copy: use system.substr instead | Araq | 2011-05-14 | 1 | -1/+1 |
| | |||||
* | := templatable; lexer improvements | Araq | 2011-04-17 | 1 | -1/+1 |
| | |||||
* | big repo cleanup | Araq | 2011-04-12 | 1 | -0/+400 |