about summary refs log tree commit diff
path: root/src/comp/middle
AgeCommit message (Collapse)AuthorLines
2011-06-19Revert previous 6 commits. Hopefully put out Windows fire.Brian Anderson-377/+138
Revert "rustc: Export only what's needed from middle::ty" This reverts commit 4255d58aa5db2a05362c4435a0e807205e1b8ed7. Revert "rustc: Make name resolution errors less fatal" This reverts commit b8ab9ea89c16c60237e7660804f4321f59ae0435. Revert "rustc: Make import resolution errors less fatal" This reverts commit 92a8ae94b971206bf0502da3dc5f416fcb24cc36. Revert "rustc: Export only what's used from middle::resolve" This reverts commit 4539a2cf7ad99851a165c98ed2f4e4a475cffd7d. Revert "rustc: Re-introduce session.span_err, session.err" This reverts commit 7fe9a88e31ae07f2fd89f6715efedd7e3edf49e6. Revert "rustc: Rename session.span_err -> span_fatal, err -> fatal" This reverts commit c394a7f49ac29a099994e243017065de2ff97f2a.
2011-06-19rustc: Export only what's needed from middle::tyBrian Anderson-3/+164
The list is formidable.
2011-06-19rustc: Make name resolution errors less fatalBrian Anderson-51/+80
Failure happens at the end of name resolution Issue #440
2011-06-19rustc: Make import resolution errors less fatalBrian Anderson-12/+57
Failure happens at the end of import resolution Issue #440
2011-06-19rustc: Export only what's used from middle::resolveBrian Anderson-0/+3
2011-06-19rustc: Rename session.span_err -> span_fatal, err -> fatalBrian Anderson-79/+80
Issue #440
2011-06-18rustc: Store the lhs and rhs of receive exprs in left to right orderBrian Anderson-24/+24
With the changing of receive semantics the parser has been putting the rhs expression in the first argument of expr_recv and the lhs in the second, and all subsequent passes have been referring to them backwords (but still doing the right thing because they were assuming that lhs was the port and rhs was the receiver). This makes all code agree on what lhs and rhs mean for receive expressions.
2011-06-18Typecheck block tail expressions that are fn return valuesBrian Anderson-1/+12
2011-06-18rustc: Remove the meta keywordBrian Anderson-2/+0
Issue #487
2011-06-18rustc: Allocate derived tydescs before dynamically sized allocasPatrick Walton-38/+74
2011-06-18rustc: Don't bother to supply an alignment argument to the memmove ↵Patrick Walton-10/+8
intrinsic; LLVM is very fussy about what it considers a constant.
2011-06-18rustc: Cache results of type_has_pointers. 70% translation speedup.Patrick Walton-21/+27
2011-06-17rustc: Add missing case for interior vectors in alias.rsPatrick Walton-0/+6
2011-06-17Restructure the "checking" pass in typestateTim Chevalier-119/+324
I noticed that typestate was being lazier than it should be, because it was only checking typestate for statements and top-level expression (that is, the expression in a stmt_expr, but not any subexpressions). So I rewrote the checks in tstate/ck.rs to use walk, which exposed a few bugs in typestate that I fixed. Also added some more test cases for if-check.
2011-06-17rustc: Increment by the dynamically-computed size in ivec::trans_append. ↵Patrick Walton-9/+21
Uncomment init_fn test in lib-ivec.
2011-06-17rustc: Fix a bunch of memory management bugs relating to generic interior ↵Patrick Walton-7/+94
vectors. Uncomment all tests in lib-ivec.
2011-06-17Revert "rustc: Fix a bunch of memory management bugs relating to generic ↵Patrick Walton-87/+6
interior vectors" This reverts commit 2b5e40311ddb6afcacf772e54a96a5204223dcc5.
2011-06-17rustc: Fix a bunch of memory management bugs relating to generic interior ↵Patrick Walton-6/+87
vectors
2011-06-17Implemented enough of deep_copy that we can pass scalars and channels to ↵Eric Holk-35/+39
tasks. Closes #507.
2011-06-17Started using deep_copy for spawn arguments.Eric Holk-15/+86
2011-06-17rustc: Add a type_owns_heap_mem() predicatePatrick Walton-0/+33
2011-06-17rustc: Cast to opaque interior vector types in trans_vec_append if ↵Patrick Walton-2/+13
necessary. Puts out burning tinderbox.
2011-06-17rustc: Copy the contents of generic interior vectorsPatrick Walton-83/+73
2011-06-17Revert "rustc: Copy the contents of generic interior vectors"Patrick Walton-73/+83
This reverts commit 5bdbe1dfc217b77ff6ff5c0d67b8ac274b50f2d3.
2011-06-17rustc: Copy the contents of generic interior vectorsPatrick Walton-83/+73
2011-06-17rustc: Demand that if conditions have bool typeBrian Anderson-0/+3
Closes #513
2011-06-17rustc: Fail to unify if two ty_vars don't unifyBrian Anderson-1/+6
Closes #500
2011-06-17rustc: Demand unification of both sides of a binopBrian Anderson-0/+5
Issue #500
2011-06-16Consistify ast::local.Paul Stansifer-48/+49
2011-06-16rustc: Fix dominance issue when translating generic interior vectorsPatrick Walton-21/+64
2011-06-16rustc: Implement type walking and comparison glue for unsafe pointersPatrick Walton-0/+25
2011-06-16Reformat a bunch of recent churn.Graydon Hoare-367/+390
2011-06-16rustc: Work around leak when translating interior vectors. Un-XFAIL ↵Patrick Walton-2/+6
interior-vec.rs.
2011-06-16rustc: Add cases for istr and ivec to visitPatrick Walton-6/+18
2011-06-16Clean up whitespace oddities perpetrated by pretty-printer.Lindsey Kuper-12/+12
2011-06-16Bring back if-checkTim Chevalier-127/+195
Add "if check" (expr_if_check), a variation on check that executes an "else" clause rather than failing if the check doesn't hold.
2011-06-16Translate the swap operator.Michael Sullivan-0/+18
2011-06-16Fix bug in move on structure types.Michael Sullivan-2/+2
2011-06-16Bring swap through typechecking and typestate.Michael Sullivan-0/+28
2011-06-16rustc: Fix LLVM type error when generating cmp glue for interior vectorsPatrick Walton-4/+20
2011-06-16Refactor ast::item representationMarijn Haverbeke-293/+250
Most of the fields in an AST item were present in all variants. Things could be simplified considerably by putting them in the rec rather than in the variant tags.
2011-06-15rustc: Implement interior vector concatenationPatrick Walton-9/+174
2011-06-15Merge branch 'master' of github.com:graydon/rust into fastcallEric Holk-597/+635
2011-06-15rustc: Remove unused variable from check_assignmentBrian Anderson-3/+2
2011-06-15Refactor data structures representing constraints (again...)Tim Chevalier-176/+200
I added a "resolved" version of the ast::constr type -- ty::constr_def -- that has a def_id field instead of an ann_field. This is more consistent with other types and eliminates some checking. Incidentally, I removed the def_map argument to the top-level function in middle::alias, since the ty::ctxt already has a def_map field.
2011-06-15rustc: Move ivec stuff to an ivec module in transPatrick Walton-199/+284
2011-06-15Implement checking of alias safety in tail calls.Marijn Haverbeke-30/+75
2011-06-15Fix unsafe uses of aliases in tail callsMarijn Haverbeke-9/+9
2011-06-15Simple anonymous objects get through translation.Lindsey Kuper-182/+67
2011-06-15Step 1 of moving task startup to always be cdecl.Eric Holk-1/+2