aboutsummaryrefslogtreecommitdiff
path: root/src/comp
Commit message (Collapse)AuthorAgeFilesLines
...
* rustc: Don't try to write symbols into the metadata for nullary tags. Puts ↵Patrick Walton2011-04-011-1/+3
| | | | out burning tinderbox.
* rustc: Get tag variants from the crate metadataPatrick Walton2011-04-014-16/+78
|
* rustc: Have tag_variants() return a new variant_info structure instead of an ↵Patrick Walton2011-04-011-37/+40
| | | | AST node
* Started adding support for typestate checking.Tim Chevalier2011-04-0112-235/+791
| | | | | | | | | | | | | | | I added a new field to the ast "ann" type for typestate information. Currently, the field contains a record of a precondition bit vector and postcondition vector, but I tried to structure things so as to make it easy to change the representation of the typestate annotation type. I also had to add annotations to some syntactic forms that didn't have them before (fail, ret, be...), with all the boilerplate changes that that would imply. The main call to the typestate_check entry point is commented out and the actual pre-postcondition algorithm only has a few cases implemented, though the overall AST traversal is there. The rest of the typestate algorithm isn't implemented yet.
* rustc: Remove useless call to tag_variant_with_id()Patrick Walton2011-04-011-1/+0
|
* Cleanup typos and newlinesBrian Anderson2011-04-011-1/+1
|
* Initialize the alloca used to retrieve boxed block results to null.Brian Anderson2011-03-311-11/+19
| | | | | | | | This allows blocks to be used in conditional constructs where the block may not ever execute: the drop glue will notice that it was never used and ignore it. Also, beef up the comments.
* Only use allocas to hold expression results for boxed typesBrian Anderson2011-03-311-18/+3
|
* Add more comments to trans_blockBrian Anderson2011-03-311-1/+2
|
* Modify trans.rs to allow blocks to result in boxed valuesBrian Anderson2011-03-311-0/+59
|
* Add block_to_str and expr_to_str methods to the pprust module.Brian Anderson2011-03-311-0/+18
| | | | Since pprust is authed impure these can be used for debug logging.
* rustc: Add a type annotation to tag itemsPatrick Walton2011-03-319-36/+35
|
* rustc: Make tag_ty_params() and substitute_ty_params() take def ids instead ↵Patrick Walton2011-03-312-10/+6
| | | | of ty_params, and to check in external crates
* rustc: Use the path index. Speeds up compilation a lot.Patrick Walton2011-03-311-91/+48
|
* rustc: Write out a path index as wellPatrick Walton2011-03-312-67/+124
|
* Couple minor bug fixes in creader, lib-bitv, int, rand, sort, sha1, uint and ↵Graydon Hoare2011-03-311-0/+8
| | | | vec all work.
* rustc: Use the crate index to look up defsPatrick Walton2011-03-311-29/+26
|
* More stuff to go with the new expr_call_self AST nodeLindsey Kuper2011-03-312-0/+75
|
* More machinery for adding an expr_call_self AST node.Lindsey Kuper2011-03-311-1/+18
|
* rustc: Index only the local part of definition IDsPatrick Walton2011-03-311-16/+21
|
* rustc: Write out an index of definition info in crate metadataPatrick Walton2011-03-313-40/+111
|
* rustc: Mix the bits more when hashing def idsPatrick Walton2011-03-311-9/+8
|
* rustc: Use the scaled index, not the raw index, if a vector has generic ↵Patrick Walton2011-03-311-2/+12
| | | | size. lib-vec.rs works now.
* Rename incr_all_refcnts to take_ty, to match drop_tyBrian Anderson2011-03-311-4/+4
|
* Restore scope block contexts to the translation of expr_block.Brian Anderson2011-03-311-2/+20
| | | | | I removed this previously but that was wrong because it caused block expressions to not create a new scope.
* Remove redundant parser logic.Brian Anderson2011-03-311-33/+0
| | | | These cases are all dealt with in parse_expr_inner.
* handle unterminated block comments and line comment at eofMarijn Haverbeke2011-03-311-4/+9
|
* Improve line comment positioningMarijn Haverbeke2011-03-318-73/+117
| | | | This involved making ast.variant spanned.
* Support break and cont in pretty-printerMarijn Haverbeke2011-03-312-0/+8
|
* Add effect field to ast.ty_fn.Marijn Haverbeke2011-03-315-31/+35
| | | | Still not used, except by the pretty-printer.
* Preserve comments when pretty-printing.Marijn Haverbeke2011-03-315-788/+1060
| | | | | The patch also includes a number of smaller fixes to the pretty-printer that were encountered on the way.
* Tweak build command on rustc.Graydon Hoare2011-03-311-1/+1
|
* rustc: Read 'y' tags from external cratesPatrick Walton2011-03-301-6/+10
|
* rustc: Use the type cache to construct external item referencesPatrick Walton2011-03-301-19/+38
|
* rustc: Thread an item-to-type mapping throughout the typechecking and ↵Patrick Walton2011-03-3010-353/+395
| | | | translation phases
* Ensure task stacks start out with a 16-byte aligned entry frame. Should make ↵Graydon Hoare2011-03-301-1/+2
| | | | OSX behave a bit better.
* rustc: Add all items to the item table during translation. lib-vec now ↵Patrick Walton2011-03-291-1/+16
| | | | compiles, but asserts and then segfaults.
* rustc: Parse parameter IDs in external crate metadata. Un-XFAIL lib-bitv.rs.Patrick Walton2011-03-292-7/+13
|
* rustc: Partially resolve external module importsPatrick Walton2011-03-292-20/+104
|
* rustc: Tolerate def id tags inside module tags. Fixes metadata reading.Patrick Walton2011-03-291-32/+33
|
* Beginnings of support for magical self prefix; nothing profound happening yet.Lindsey Kuper2011-03-296-1/+27
|
* Ignore 'mutable foo' in plain field contexts.Graydon Hoare2011-03-291-0/+6
|
* rustc: Resolve external modules and native modules to definition IDs as wellPatrick Walton2011-03-292-11/+22
|
* Rename trans_native to trans_native_call, for clarity.Graydon Hoare2011-03-291-10/+10
|
* Teach trans to emit undefined references to 'use'd symbols. Can compile and ↵Graydon Hoare2011-03-294-0/+61
| | | | run a simple 'use std;' example now.
* Add partial support for if expressions resulting in generic typesBrian Anderson2011-03-281-4/+7
|
* Handle structural types as the result of if expressionsBrian Anderson2011-03-281-0/+3
|
* Teach rustc to use the result of if expressionsBrian Anderson2011-03-281-4/+13
|
* Add expr_spawn, spawn parsing, folding, typechecking, ty_taskBrian Anderson2011-03-285-16/+107
|
* Move all allocas to dedicated basic block at top of function, to keep frames ↵Graydon Hoare2011-03-282-56/+143
| | | | finite. Un-comment next size in nbody.rs.