about summary refs log tree commit diff
path: root/src/comp/util
AgeCommit message (Collapse)AuthorLines
2011-04-06Continued sketching out code for checking states against preconditions.Tim Chevalier-4/+47
It's still sketchy. I added a typestate annotation field to statements tagged stmt_decl or stmt_expr, because a stmt_decl statement has a typestate that's different from that of its child node. This necessitated trivial changes to a bunch of other files all over to the compiler. I also added a few small standard library functions, some of which I didn't actually end up using but which I thought might be useful anyway.
2011-04-06More work on typestate. Sketched out code for computing and checking ↵Tim Chevalier-5/+24
prestates and poststates. Still a long ways away.
2011-04-01Started adding support for typestate checking.Tim Chevalier-0/+61
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.
2011-03-31rustc: Mix the bits more when hashing def idsPatrick Walton-9/+8
2011-03-25Another go at changing compile-command, this time using RBUILD env var.Graydon Hoare-1/+1
2011-03-25Revert "Bulk-edit compile commands in emacs chatter to point to assumed ↵Graydon Hoare-1/+1
build/ dir off src root." This reverts commit 846f2e2ba994268725f38c36fa12f1a09f21615c.
2011-03-25Bulk-edit compile commands in emacs chatter to point to assumed build/ dir ↵Graydon Hoare-1/+1
off src root.
2011-03-25rustc: Create a crate metadata cachePatrick Walton-0/+8
2011-03-16Switch all vases of vec += elt to vec += vec. Prohibit former in rustboot. ↵Graydon Hoare-9/+0
Tweak std lib vec fns in process.
2011-03-08rustc: Expose common.def_eq().Patrick Walton-5/+5
2011-02-23Add a type for crate directives, to support intermixing with exprs in crate ↵Graydon Hoare-1/+3
files.
2010-10-22Make append take a mutable &. Not even checked at present, tsk tsk.Graydon Hoare-1/+1
2010-10-21line length police; moved comp.util.bits to std.bitvDave Herman-463/+0
2010-10-21tests and bugfixes: fns take aliases, fixed binary arithmetic in create, ↵Dave Herman-29/+318
eliminated wasted bit per uint
2010-10-20simpler computation of uint_bits(), plus whitespace policeDave Herman-13/+2
2010-10-20created a first draft of the bit-set library needed for typestateDave Herman-0/+185
2010-10-19Teach trans to allocate, initialize and load from local variables.Graydon Hoare-0/+19
2010-10-18Store items and decls in vecs to preserve input order, index externally. ↵Graydon Hoare-0/+9
Implement block-local name lookup.
2010-10-15Encode and decode tag types in dwarf properly. Add list module to std. Shift ↵Graydon Hoare-8/+0
rustc to use std.util.option. Fix various dependent bugs. Closes #73.
2010-10-05Add input coordinate tracking to all major rustc ast nodes.Graydon Hoare-0/+1
2010-10-04Teach rustc about phi nodes, block relationships. Translate if- and ↵Graydon Hoare-0/+8
block-expressions.
2010-09-23Declare the global and upcall glues as ValueRefs in rustc's trans.Graydon Hoare-0/+5
2010-09-21Begin teaching rustc to parse literals, atoms, stmts, blocks, items, ↵Graydon Hoare-0/+6
modules, crates.
2010-09-20Bind pattern slots with ?, drop parens from 0-ary tag constructors, ↵Graydon Hoare-24/+24
translate 0-ary constructors as constants. Rustc loses ~300kb.
2010-09-09Switch tags to purely nominal, removing TY_iso and TY_idx. Seems to mostly ↵Graydon Hoare-3/+14
work, possibly a little bumpy. Changes a lot.
2010-09-01Add session, span tracking, error reporting, beginning of a function to ↵Graydon Hoare-0/+4
parse an item to rustc.
2010-08-31Reinstate commit 9f0eaa65817303b8768c80454734144c176fda43 with sufficient ↵Graydon Hoare-4/+8
fixes to hopefully not break tinderboxes.
2010-08-27Revert "More work on lexer.rs: start using keyword hashtable, handle more ↵Patrick Walton-8/+4
lexemes." due to tinderbox bustage This reverts commit 9f0eaa65817303b8768c80454734144c176fda43.
2010-08-27More work on lexer.rs: start using keyword hashtable, handle more lexemes.Graydon Hoare-4/+8
2010-08-20Expand rustc lexer to do almost-nearly-nontrivial stuff.Graydon Hoare-0/+13
2010-08-18Add mod common to rustc.Graydon Hoare-0/+15