summary refs log tree commit diff
path: root/src/librustc/front
AgeCommit message (Collapse)AuthorLines
2013-06-30auto merge of #7487 : huonw/rust/vec-kill, r=cmrbors-2/+2
Continuation of #7430. I haven't removed the `map` method, since the replacement `v.iter().transform(f).collect::<~[SomeType]>()` is a little ridiculous at the moment.
2013-06-30Bump version from 0.7-pre to 0.7Brian Anderson-2/+2
2013-06-30Remove vec::{map, mapi, zip_map} and the methods, except for .map, since thisHuon Wilson-2/+2
is very common, and the replacement (.iter().transform().collect()) is very ugly.
2013-06-29Great renaming: propagate throughout the rest of the codebaseCorey Richardson-7/+4
2013-06-27Remove many shared pointersPhilipp Brüschweiler-10/+9
Mostly just low-haning fruit, i.e. function arguments that were @ even though & would work just as well. Reduces librustc.so size by 200k when compiling without -O, by 100k when compiling with -O.
2013-06-23Remove intrinsic modulePhilipp Brüschweiler-195/+0
To achieve this, the following changes were made: * Move TyDesc, TyVisitor and Opaque to std::unstable::intrinsics * Convert TyDesc, TyVisitor and Opaque to lang items instead of specially handling the intrinsics module * Removed TypeDesc, FreeGlue and get_type_desc() from sys Fixes #3475.
2013-06-23Fix get_tydesc() return typePhilipp Brüschweiler-4/+12
This fixes part of #3730, but not all. Also changes the TyDesc struct to be equivalent with the generated code, with the hope that the above issue may one day be closed for good, i.e. that the TyDesc type can completely be specified in the Rust sources and not be generated.
2013-06-23vec: remove BaseIter implementationDaniel Micay-2/+2
I removed the `static-method-test.rs` test because it was heavily based on `BaseIter` and there are plenty of other more complex uses of static methods anyway.
2013-06-21vec: rm old_iter implementations, except BaseIterDaniel Micay-4/+4
The removed test for issue #2611 is well covered by the `std::iterator` module itself. This adds the `count` method to `IteratorUtil` to replace `EqIter`.
2013-06-13Use @str instead of @~str in libsyntax and librustc. Fixes #5048.Huon Wilson-13/+13
This almost removes the StringRef wrapper, since all strings are Equiv-alent now. Removes a lot of `/* bad */ copy *`'s, and converts several things to be &'static str (the lint table and the intrinsics table). There are many instances of .to_managed(), unfortunately.
2013-06-08remove deprecated vec::{is_empty, len} functionsDaniel Micay-3/+2
2013-06-09remove unused import warningsHuon Wilson-1/+0
2013-06-05removed unused imports (and one unused argument)John Clements-6/+3
2013-06-05removed some interner fieldsJohn Clements-3/+4
2013-06-04librustc: Disallow multiple patterns from appearing in a "let" declaration.Patrick Walton-2/+11
You can still initialize multiple variables at once with "let (x, y) = (1, 2)".
2013-06-01syntax: move callee_id into the expr_ variantsErick Tryzelaar-4/+0
2013-05-30Make missing documentation linting more robustAlex Crichton-0/+2
Add some more cases for warning about missing documentation, and also add a test to make sure it doesn't die in the future.
2013-05-29librustc: Stop reexporting the standard modules from prelude.Patrick Walton-2/+7
2013-05-24Actually filter view_items in blocksAlex Crichton-1/+3
2013-05-22librustc: Make `std_inject` inject the name `std`, not `core`Patrick Walton-2/+2
2013-05-22librustc: Change `std` to `extra` throughout libsyntax and librustcPatrick Walton-13/+13
2013-05-22libextra: Rename the actual metadata names of libcore to libstd and libstd ↵Patrick Walton-0/+8
to libextra
2013-05-22librustc: Rename core injection to std injectionPatrick Walton-10/+9
2013-05-22syntax/ext: modernise ext_ctxt to be CamelCase and use new.Huon Wilson-3/+3
2013-05-20Remove all unnecessary allocations (as flagged by lint)Alex Crichton-11/+11
2013-05-15Rename vec::len(var) to var.len()Youngmin Yoo-1/+1
2013-05-09Use a specialized string interner to reduce the need for owned stringsBjörn Steinbrink-5/+5
&str can be turned into @~str on demand, using to_owned(), so for strings, we can create a specialized interner that accepts &str for intern() and find() but stores and returns @~str.
2013-05-08librustc: Stop parsing modes and remove them entirely from the languagePatrick Walton-1/+1
2013-05-05Merge remote-tracking branch 'mozilla/incoming' into issue-5910-dyna-freezeNiko Matsakis-18/+9
Conflicts: src/libcore/core.rc src/libcore/hashmap.rs src/libcore/num/f32.rs src/libcore/num/f64.rs src/libcore/num/float.rs src/libcore/num/int-template.rs src/libcore/num/num.rs src/libcore/num/strconv.rs src/libcore/num/uint-template.rs src/libcore/ops.rs src/libcore/os.rs src/libcore/prelude.rs src/libcore/rt/mod.rs src/libcore/unstable/lang.rs src/librustc/driver/session.rs src/librustc/middle/astencode.rs src/librustc/middle/borrowck/check_loans.rs src/librustc/middle/borrowck/gather_loans.rs src/librustc/middle/borrowck/loan.rs src/librustc/middle/borrowck/preserve.rs src/librustc/middle/liveness.rs src/librustc/middle/mem_categorization.rs src/librustc/middle/region.rs src/librustc/middle/trans/base.rs src/librustc/middle/trans/inline.rs src/librustc/middle/trans/reachable.rs src/librustc/middle/typeck/check/_match.rs src/librustc/middle/typeck/check/regionck.rs src/librustc/util/ppaux.rs src/libstd/arena.rs src/libstd/ebml.rs src/libstd/json.rs src/libstd/serialize.rs src/libstd/std.rc src/libsyntax/ast_map.rs src/libsyntax/parse/parser.rs src/test/compile-fail/borrowck-uniq-via-box.rs src/test/compile-fail/regions-infer-borrow-scope-within-loop.rs src/test/run-pass/borrowck-nested-calls.rs
2013-05-02Lets see if changing `span_fatal` to `span_err` gets me further through make ↵Felix S. Klock II-1/+1
check.
2013-05-02Issue 4391: rustc should not silently skip tests with erroneous signature.Felix S. Klock II-2/+9
2013-05-02Remove 'Local Variable' commentsBrendan Zabarauskas-16/+0
2013-04-30new borrow checker (mass squash)Niko Matsakis-2/+3
2013-04-29librustc: Remove the legacy mode in the type visitor intrinsic.Patrick Walton-1/+1
2013-04-27only use #[no_core] in libcoreDaniel Micay-15/+0
2013-04-22librustc: Remove `use mod` from the languagePatrick Walton-1/+0
2013-04-19rustc: de-mode + fallout from libsyntax changesAlex Crichton-12/+12
2013-04-15auto merge of #5778 : jld/rust/reflect-abstract-enum, r=graydonbors-1/+5
This takes care of one of the last remnants of assumptions about enum layout. A type visitor is now passed a function to read a value's discriminant, then accesses fields by being passed a byte offset for each one. The latter may not be fully general, despite the constraints imposed on representations by borrowed pointers, but works for any representations currently planned and is relatively simple. Closes #5652.
2013-04-10Bump version to 0.7-preBrian Anderson-2/+2
2013-04-10path -> PathJohn Clements-5/+5
2013-04-09Bump version to 0.7-preBrian Anderson-2/+2
2013-04-08Make intrinsic::Opaque more opaqueJed Davis-2/+1
2013-04-08Export adt::trans_get_discr abstractly to the type visitor.Jed Davis-0/+5
2013-04-08Feed enum field offsets to type vistors.Jed Davis-1/+1
2013-03-29Add AbiSet and integrate it into the AST.Niko Matsakis-5/+5
I believe this patch incorporates all expected syntax changes from extern function reform (#3678). You can now write things like: extern "<abi>" fn foo(s: S) -> T { ... } extern "<abi>" mod { ... } extern "<abi>" fn(S) -> T The ABI for foreign functions is taken from this syntax (rather than from an annotation). We support the full ABI specification I described on the mailing list. The correct ABI is chosen based on the target architecture. Calls by pointer to C functions are not yet supported, and the Rust type of crust fns is still *u8.
2013-03-26option: rm functions that duplicate methodsDaniel Micay-1/+1
2013-03-22librustc: Remove the `const` declaration form everywherePatrick Walton-3/+3
2013-03-21librustc: Register new snapshotsPatrick Walton-18/+0
2013-03-20add stage3 markers where necessary for dist-snapGraydon Hoare-0/+1
2013-03-19librustc: adjust logic for cfg attribute and add not predicate.Luqman Aden-12/+13