aboutsummaryrefslogtreecommitdiff
path: root/src/comp
Commit message (Collapse)AuthorAgeFilesLines
...
* rustc: Add Rust bindings to the LLVM object file libraryPatrick Walton2011-03-152-3/+81
|
* Bump LLVM version strings to 3.0svn, we're effectively tied to it now anyways.Graydon Hoare2011-03-141-3/+3
|
* Merge remote branch 'brson/recursive-elseif'Graydon Hoare2011-03-148-160/+80
|\
| * Merge branch 'master' into recursive-elseifBrian Anderson2011-03-1316-750/+1453
| |\ | | | | | | | | | | | | | | | Conflicts: src/comp/middle/typeck.rs
| * | Remove extra blocks from the translation of expr_blockBrian Anderson2011-03-131-20/+2
| | | | | | | | | | | | Doesn't seem to break anything and allows trans_if to be streamlined
| * | Merge branch 'master' into recursive-elseifBrian Anderson2011-03-0719-1864/+7105
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/Makefile src/comp/front/ast.rs src/comp/front/parser.rs src/comp/middle/fold.rs src/comp/middle/trans.rs
| * | | Allow the else part of an expr_if to be either expr_if or expr_blockBrian Anderson2011-02-015-30/+55
| | | |
| * | | Merge branch 'master' into forgraydon-elseifBrian Anderson2011-01-311-107/+163
| |\ \ \
| * | | | Teach rustc to parse 'else if'Brian Anderson2011-01-301-2/+16
| | | | |
* | | | | Rename check_assignment_like to check_assignment since it turned out not to ↵Brian Anderson2011-03-141-5/+4
| | | | | | | | | | | | | | | | | | | | be useful for send/recv
* | | | | Fix the typechecking for expr_send and expr_recvBrian Anderson2011-03-141-8/+38
| | | | |
* | | | | Add ty_port and ty_chan to expr_ty functionBrian Anderson2011-03-141-11/+13
| | | | |
* | | | | Typecheck expr_send and expr_recvBrian Anderson2011-03-141-0/+16
| | | | |
* | | | | Reorganize evaluation of expr_send/recv to put them closer to expr_assign, ↵Brian Anderson2011-03-142-31/+32
| | | | | | | | | | | | | | | | | | | | to which they are similar
* | | | | Fix typo in expr_recv parsingBrian Anderson2011-03-141-1/+1
| | | | |
* | | | | Factor out expression checking for forms that look like assignmentBrian Anderson2011-03-141-23/+27
| | | | |
* | | | | Add folding and type checking for ports and chansBrian Anderson2011-03-144-2/+165
| | | | |
* | | | | Fold ty_chan and ty_portBrian Anderson2011-03-141-0/+21
| | | | |
* | | | | Parse receive expressionsBrian Anderson2011-03-142-0/+7
| | | | |
* | | | | Parse port and chan types, constructors, send statementsBrian Anderson2011-03-142-0/+44
| | | | |
* | | | | Make pretty-printer print 'with' clause in rec literalsMarijn Haverbeke2011-03-141-1/+11
| | | | |
* | | | | Extend stream functionalityMarijn Haverbeke2011-03-143-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Writer and reader streams now come with methods to write and read little-endian numbers. Whether that is the right place for such methods is debatable, but for now, that's where they live.
* | | | | Add basic file-system functionalityMarijn Haverbeke2011-03-142-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | std.fs.list_dir will list the files in a directory, std.fs.file_is_dir will, given a pathname, determine whether it is a directory or not.
* | | | | Split trans' collection in two passes. This allows us to handle tagsRafael Ávila de Espíndola2011-03-141-16/+32
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | that are defined after use in a block. This is really inefficient, but for now it lets us compile the included test.
* | | | Preserve crate directives in the parsed crate.Graydon Hoare2011-03-113-11/+17
| | | |
* | | | rustc: Add some stub metadata to each cratePatrick Walton2011-03-114-0/+44
| | | |
* | | | reindex the block index.Rafael Ávila de Espíndola2011-03-113-38/+44
| | | |
* | | | rustc: Load structural loop variables in iterators. Un-XFAIL ↵Patrick Walton2011-03-111-1/+10
| | | | | | | | | | | | | | | | foreach-put-structured.rs.
* | | | Add support for indexing tags in blocks.Rafael Ávila de Espíndola2011-03-113-19/+57
| | | |
* | | | rustc: Populate the upvar environment when calling iterator bodies. Un-XFAIL ↵Patrick Walton2011-03-111-5/+71
| | | | | | | | | | | | | | | | test/run-pass/iter-range.rs.
* | | | rustc: Resolve upvars as necessaryPatrick Walton2011-03-111-2/+9
| | | |
* | | | Handle resolving to native modules.Rafael Ávila de Espíndola2011-03-102-0/+8
| | | |
* | | | Move the glue code to a .o file. This reduces how much asm we printGraydon Hoare2011-03-102-58/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in each "translation unit". Part of it is not repetitive and should probably be moved to a .ll file, but for now we autogen all of it. (Modified somewhat by graydon while integrating).
* | | | rustc: Build up a list of upvars inside foreach bodiesPatrick Walton2011-03-102-5/+74
| | | |
* | | | rustc: Use the generic info from the item in bind thunks just as calls do. ↵Patrick Walton2011-03-101-0/+2
| | | | | | | | | | | | | | | | Un-XFAIL drop-parametric-closure-with-bound-box.rs.
* | | | rustc: Increment the counter in trans_bind_thunk()Patrick Walton2011-03-101-1/+1
| | | |
* | | | rustc: Fix off-by-one error and logic error regarding type parameters in the ↵Patrick Walton2011-03-101-1/+1
| | | | | | | | | | | | | | | | translation of bind expressions. Un-XFAIL bind-obj-ctor.rs.
* | | | Update the current id when we create sub parsers.Rafael Ávila de Espíndola2011-03-103-7/+17
| | | |
* | | | rustc: Perform a cast in vector initialization due to changing layers of ↵Patrick Walton2011-03-101-1/+21
| | | | | | | | | | | | | | | | indirection. Keep test/run-pass/size-and-align.rs XFAIL'd due to a leak in rustboot.
* | | | rustc: Run cleanups on while expressions' condition blocks. Un-XFAIL ↵Patrick Walton2011-03-101-3/+3
| | | | | | | | | | | | | | | | while-prelude-drop.rs.
* | | | Fix eval typo (caught by Martin Hock).Graydon Hoare2011-03-101-1/+1
| | | |
* | | | Implement deep structural comparison through boxes and sequences.Graydon Hoare2011-03-092-68/+145
| | | |
* | | | rustc: Have tag patterns use the type parameter information from the ↵Patrick Walton2011-03-092-10/+49
| | | | | | | | | | | | | | | | typechecker instead of trying to deduce it in trans. Un-XFAIL test/run-pass/generic-tag-values.rs.
* | | | Fold exports.Graydon Hoare2011-03-091-0/+13
| | | |
* | | | Add ty_obj case to pretty printerMarijn Haverbeke2011-03-091-16/+37
| | | |
* | | | Have the pretty-printer take a writer stream as argumentMarijn Haverbeke2011-03-095-98/+39
| | | | | | | | | | | | | | | | | | | | It now uses a string writer to also fill in for middle.ty.ast_ty_to_str
* | | | rustc: Perform type substitutions for tag variants in dynamic_size_of()Patrick Walton2011-03-091-1/+9
| | | |
* | | | rustc Remove dead "llunit_ty" assignment in trans_indexPatrick Walton2011-03-091-1/+0
| | | |
* | | | rustc: Make tag pattern translation generic-aware. Un-XFAIL generic-tag-alt.rs.Patrick Walton2011-03-091-32/+50
| | | |
* | | | Rename confusing usage of "lltag" to "lldiscrim" in trans_pat_match()Patrick Walton2011-03-091-3/+3
| | | |