about summary refs log tree commit diff
path: root/src/comp/middle
AgeCommit message (Collapse)AuthorLines
2012-03-02Move src/comp to src/rustcGraydon Hoare-26328/+0
2012-03-02core: Remove _mut functions from vecBrian Anderson-5/+7
Instead, use vec::to_mut/from_mut to transform vectors in place as needed.
2012-03-02restructure to better support method inliningNiko Matsakis-68/+114
2012-03-02retool inline encoding to handle methods, fix testsNiko Matsakis-0/+9
2012-03-02make sure we do not bind unique closures (or blocks, for that matter)Niko Matsakis-10/+11
2012-03-01Use the correct prestate for callsTim Chevalier-2/+2
The prestate for calls was getting set incorrectly to the poststate for the operator in the call. This worked before since most of the time, operator expressions are pure. Issue 1895 shows how this breaks when the operator is a closure that has a move-in capture clause. (I had a several-day, multi-file patch for this that didn't work... and then it turned out to be a one-line fix. The joys of programming.) Closes #1895
2012-03-01Make sure resource item types get written by typecheckerMarijn Haverbeke-5/+7
Closes #1916
2012-02-29optionally enforce local variable mutabilityNiko Matsakis-19/+29
2012-02-29un-xfail test, remove old commentNiko Matsakis-1/+0
2012-02-29report the type of the method as the fty, not the type of the expressionNiko Matsakis-2/+3
using the type of the expression causes us to lose information about when the method was declaring with a generic signature, which leads to producing incorrect code, particularly in the case of returning unit types (which would then get an undefined output ptr)
2012-02-29add the ability to snag the frame so we can verify that we are inliningNiko Matsakis-0/+7
2012-02-29Delete-trailing-whitespaceMarijn Haverbeke-1/+1
2012-02-29Actually use last_use info on closed over var in kind.rsMarijn Haverbeke-4/+11
Issue ##1894
2012-02-29Recognize last uses for copied closed-over variablesMarijn Haverbeke-112/+165
And clean up and fix some bad things in last_use.rs. Closes #1894
2012-02-28libcore: Remove vec::to_ptr in favor of vec::unsafe::to_ptr. Closes #1829.Patrick Walton-19/+20
2012-02-28Also do normal impl method lookup for type parametersMarijn Haverbeke-2/+1
Closes #1909
2012-02-28Bail out of calling tydesc glue in an unreachable contextMarijn Haverbeke-0/+1
Closes #1901
2012-02-28change def's that are always local to use node_id, add --inline optNiko Matsakis-64/+64
2012-02-25Disallow type parameters in the main() functionTim Chevalier-0/+13
Closes #1900
2012-02-24Add temp cleanups for copy/move mode args when other args fail. Fixes #1374Niko Matsakis-5/+29
2012-02-24Encode/decode AST into metadata, re-instantiate inlined itemsNiko Matsakis-48/+238
2012-02-23rustc: Don't add duplicate entries to exp_mapBrian Anderson-1/+7
2012-02-23Support basic, unsophisticated, somewhat wrong export-globs.Graydon Hoare-50/+145
2012-02-23Treat export-globs as import-globs for sake of linking.Graydon Hoare-3/+12
2012-02-23Minor renaming to help my comprehension.Graydon Hoare-38/+44
2012-02-23Make sure fold_ty preserves associated def_idsMarijn Haverbeke-0/+4
Closes #1884
2012-02-23(core::str) remove len_bytes aliasKevin Cantu-6/+5
2012-02-23(core::str) replace uses of unsafe::slice_bytes; replace find[_from]_bytes ↵Kevin Cantu-1/+1
with find[_from]
2012-02-22rustc: Allow any integral types on rhs of shift opsBrian Anderson-8/+61
2012-02-22Improve error message for use of a non-pure-fn in a predTim Chevalier-3/+3
Closes #1883
2012-02-22Stop normalizing patternsMarijn Haverbeke-317/+285
The check for whether a pat_ident is a variant or a binding is simple and fast. Normalizing patterns again and again is slow and error-prone (several places were forgetting to do it).
2012-02-22Take move captures in account in mutability checkerMarijn Haverbeke-0/+12
Closes #1461
2012-02-22Return a new type var instead of nil when failing to typecheck a fieldMarijn Haverbeke-3/+5
The previous solution was usually causing a second spurious error message.
2012-02-22Remove preconditions from librariesMarijn Haverbeke-23/+3
Closes #1805
2012-02-21Clean up unification codeMarijn Haverbeke-328/+116
2012-02-21Clean up some FIXMEs in middle:: modulesMarijn Haverbeke-124/+88
Rename all TODOs to FIXMEs
2012-02-21Move trans::type_of code into its own fileMarijn Haverbeke-220/+222
Slowly shrinking base.rs
2012-02-21Include @ in crate_ctxt and fn_ctxt type definitionsMarijn Haverbeke-152/+152
So that code using them doesn't have to spell it out constantly.
2012-02-21Remove unused tydesc argument to upcall_shared_mallocMarijn Haverbeke-7/+2
2012-02-21Make the cleanup tag in resource types a u8Marijn Haverbeke-11/+9
Closes #1184
2012-02-21Remove some checks and associated FIXMEs from trans codeMarijn Haverbeke-120/+37
Such intentions are better tracked in the bug tracker, don't need to litter the code with repetetive comments.
2012-02-21Clean up a number of TODOs in the trans modulesMarijn Haverbeke-297/+272
Rename the ones that I didn't handle to FIXME
2012-02-20More work on typechecking classesTim Chevalier-7/+48
classes-simple doesn't fail until trans now!
2012-02-20Oops, my whitespace is showingTim Chevalier-1/+1
2012-02-20Further work on resolving and typechecking classesTim Chevalier-24/+184
Class tests aren't working yet, but they fail a little later :-) Also, make the parser correctly set a constructor's result type to its enclosing class type.
2012-02-18rustc: Add missing space to error messageBrian Anderson-1/+1
2012-02-17Refactor view_path to parse (but not yet process) export globs, unify code ↵Graydon Hoare-185/+253
paths.
2012-02-17rustc: Make resolve more forgiving of missing external cratesBrian Anderson-4/+12
Rustdoc needs to be able to resolve locals without resolving externals
2012-02-17rustdoc: Resolve imports and reexportsBrian Anderson-19/+32
2012-02-17Move debuginfo into transMarijn Haverbeke-0/+0