about summary refs log tree commit diff
path: root/src/rustc
AgeCommit message (Collapse)AuthorLines
2012-08-08rustc: Do some plumbing work on nested enumsPatrick Walton-87/+152
2012-08-08rustc: Strict enforcement of glue function types.Elliott Slaughter-60/+118
Make all glue functions take values by alias to remove the need for bitcasts at the top of every glue function. Use static type information to produce the correct type for glue functions so that LLVM can enforce the type system at call sites.
2012-08-08In decoder, rename class_member_id to item_def_id.Michael Sullivan-6/+5
2012-08-08Don't add struct names to the value name space if there's no constructorTim Chevalier-8/+16
Closes #3149
2012-08-08refactor categorization out of borrowck into its own module.Niko Matsakis-370/+474
first step towards #3148 and #3024.
2012-08-07improve borrowck error messages to explain regions betterNiko Matsakis-18/+18
2012-08-07rustc: Resolve constructor expressions for variant structsPatrick Walton-10/+27
2012-08-07rustc: Parse variant structs; add a trivial test casePatrick Walton-7/+12
2012-08-07Add minor debug mode for measuring type sizes, helper for #3025.Graydon Hoare-1/+13
2012-08-07rustc: Box struct_defsPatrick Walton-6/+6
2012-08-07Translate const structs.Graydon Hoare-0/+28
2012-08-07Implement static typeclass methods. Closes #3132.Michael Sullivan-213/+396
2012-08-07rustc: Cosmetic change to type_of to make control flow more obvious.Elliott Slaughter-112/+110
2012-08-07rustc: Fix for type_of on recursive enum creating two types instead of one.Elliott Slaughter-16/+15
2012-08-07rustc: Move some more routines that operate on struct definitions out of linePatrick Walton-142/+169
2012-08-07rustc: Split out struct bodies into a separate "struct_def" type in the ASTPatrick Walton-61/+65
2012-08-07Const slices now work. Something odd about non-const cases though, see #3138.Graydon Hoare-10/+10
2012-08-07rustc: Add stub support for struct variants to the ASTPatrick Walton-60/+101
2012-08-07syntax: Rename expr_alt to expr_matchBrian Anderson-14/+14
2012-08-07syntax: Make match arm parsing more restrictive againBrian Anderson-22/+22
Require comma separators for all expression types except the plain block
2012-08-07Reindent some match exprs to agree with rust-mode.elLindsey Kuper-67/+67
2012-08-07Comments, minor refactoring, clean up wording of error messagesLindsey Kuper-18/+30
2012-08-07add lint mode for deprecated pattern usageNiko Matsakis-6/+37
2012-08-07move borrowck tests to use ref, fix a few exposed shortcomingsNiko Matsakis-16/+22
2012-08-06Auto-deref the base expr in trans_method_calleeTim Chevalier-0/+6
(specifically in the method_trait case) -- if you wrote x.f() and x has type @T for a trait T, x wasn't getting auto-deref'ed. This was bad. Closes #2935
2012-08-06first shot at integrating ref/value bindings into borrowckNiko Matsakis-57/+81
(more needed)
2012-08-06rustc: Parse and stub (broken) typechecking for bounded function typesPatrick Walton-38/+57
2012-08-06rustc: Implement pattern matching for structsPatrick Walton-37/+266
2012-08-06Shorten lines, fix build breakageTim Chevalier-5/+6
2012-08-06Move some decoder code to the right place.Michael Sullivan-17/+15
2012-08-06In resolve, forbid duplicate value, type, and module itemsTim Chevalier-37/+145
Closes #3099
2012-08-06make `ref x` bindings produce region ptrs and fix various minor bugsNiko Matsakis-99/+158
we now detect inconsistent modes, binding names, and various other errors. typeck/trans integration is mostly done. borrowck not so much. more tests needed.
2012-08-06Convert alt to match. Stop parsing altBrian Anderson-1496/+1511
2012-08-06rustc: Implement functional record update for structsPatrick Walton-35/+85
2012-08-05Switch alts to use arrowsBrian Anderson-4258/+4227
2012-08-04rustc: Normalize region-bounded string slices properlyPatrick Walton-0/+4
This prevents an LLVM assertion that will bite you if you try to put a static string in an Error.
2012-08-03Translate const vecs, most of const slices. More for #2317.Graydon Hoare-9/+48
2012-08-03rustc: Merge fn& and fn in favor of fn&.Patrick Walton-22/+16
This is a step on the way to moving the function "proto" sigil out front.
2012-08-03rustc: Translate repeated vector syntaxPatrick Walton-45/+99
2012-08-03Implement &-expressions in consts. Part of #2317.Graydon Hoare-2/+28
2012-08-03rustc: Parse and typecheck repeating vector expressions; e.g. [ 0, ..512 ]Patrick Walton-8/+52
2012-08-03Further work on default methods in traits.Lindsey Kuper-40/+63
And some trait-related code cleanup in typeck::collect.
2012-08-03rustc: Parse, serialize, and deserialize trait inheritancePatrick Walton-12/+35
2012-08-03rustc: Add the notion of inherited visibilityPatrick Walton-14/+18
2012-08-03Fix signed/unsigned bug, likely cause of windows crash.Graydon Hoare-3/+3
2012-08-03rustc: Remove fixed-length string warningPatrick Walton-4/+1
2012-08-03rustc: "foo" is now a static stringPatrick Walton-15/+12
2012-08-03rustc: Remove all fixed-length strings from our codebasePatrick Walton-2/+5
2012-08-02Fix build breakageTim Chevalier-2/+1
2012-08-02Make comparisons between region pointers workTim Chevalier-8/+10
Region pointers were considered a scalar type, so compare_scalar_type would get called to compare region pointers in trans. This would fail, since compare_scalar_type has no case for region pointers. Changed type_is_scalar to return false for region pointers. This had the side effect of breaking casts to types of the form &T. To ameliorate that, I added library functions ptr::assimilate (taking a &T to a *T) and ptr::to_uint (taking a &T to a uint), both of which use reinterpret_cast. While I was at it, I removed ty::type_has_resources, which is dead code.