about summary refs log tree commit diff
path: root/src/libsyntax/ast_map.rs
AgeCommit message (Collapse)AuthorLines
2013-05-14syntax: Remove #[allow(vecs_implicitly_copyable)]Alex Crichton-5/+5
2013-05-14Use static string with fail!() and remove fail!(fmt!())Björn Steinbrink-1/+1
fail!() used to require owned strings but can handle static strings now. Also, it can pass its arguments to fmt!() on its own, no need for the caller to call fmt!() itself.
2013-05-05Merge remote-tracking branch 'mozilla/incoming' into issue-5910-dyna-freezeNiko Matsakis-36/+1
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-02Remove 'Local Variable' commentsBrendan Zabarauskas-8/+0
2013-05-01rustc: remove the rest of dropErick Tryzelaar-28/+1
Removes: ast::struct_def::dtor syntax::ast::ii_dtor syntax::visit::fk_dtor syntax::ast_map::node_dtor syntax:struct_dtor
2013-04-30new borrow checker (mass squash)Niko Matsakis-35/+34
2013-04-27only use #[no_core] in libcoreDaniel Micay-5/+0
2013-04-19syntax: de-mode and prepare for de-modeing rustcAlex Crichton-16/+16
2013-04-03rename Linear{Map,Set} => Hash{Map,Set}Daniel Micay-3/+3
2013-04-03hashmap: rm linear namespaceDaniel Micay-1/+1
2013-03-31Fix warningsBrian Anderson-1/+0
2013-03-29Add AbiSet and integrate it into the AST.Niko Matsakis-7/+4
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-28Removing unused importsAlex Crichton-1/+1
2013-03-26Move ast_map::map to LinearMapAlex Crichton-19/+19
2013-03-22librustc: Remove `pure` from libsyntax and librustc.Patrick Walton-2/+2
2013-03-19librustc: Enforce privacy for static methods.Patrick Walton-3/+13
This starts moving a bunch of privacy checks into the privacy checking phase and out of resolve.
2013-03-13librustc: Don't accept `as Trait` anymore; fix all occurrences of it.Patrick Walton-3/+3
2013-03-13Remove `++` mode from the compiler (it is parsed as `+` mode)Niko Matsakis-3/+3
and obsolete `-` mode altogether (it *was* parsed as `+` mode).
2013-03-11librustc: Replace all uses of `fn()` with `&fn()`. rs=defunPatrick Walton-1/+1
2013-03-04Remove unused imports throughout src/Alex Crichton-3/+0
2013-03-01Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-0/+1
2013-02-28Fix implicit leaks of imports throughout librariesAlex Crichton-0/+1
Also touch up use of 'pub' and move some tests around so the tested functions don't have to be 'pub'
2013-02-28Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-3/+3
2013-02-27auto merge of #5141 : nikomatsakis/rust/region-syntax-expl-lifetimes, ↵bors-1/+1
r=nikomatsakis Major changes are: - replace ~[ty_param] with Generics structure, which includes both OptVec<TyParam> and OptVec<Lifetime>; - the use of syntax::opt_vec to avoid allocation for empty lists; cc #4846 r? @graydon
2013-02-27Introduce lifetime declarations into the lists of type parameters.Niko Matsakis-1/+1
Major changes are: - replace ~[ty_param] with Generics structure, which includes both OptVec<TyParam> and OptVec<Lifetime>; - the use of syntax::opt_vec to avoid allocation for empty lists; cc #4846
2013-02-27Merge remote-tracking branch 'remotes/origin/incoming' into incomingErick Tryzelaar-1/+1
2013-02-27librustc: Forbid `pub` or `priv` before trait implementationsPatrick Walton-1/+1
2013-02-25libsyntax: add some explicit copiesErick Tryzelaar-6/+9
2013-02-25libsyntax: progress on making syntax::visit vecs_implicitly_copyable-freeErick Tryzelaar-10/+10
2013-02-25libsyntax: convert visit to pass ty_params by referenceErick Tryzelaar-70/+92
2013-02-19libsyntax: make enum variants take refsErick Tryzelaar-3/+3
2013-02-15librustc: Stop parsing `impl Type : Trait` and fix several declarations that ↵Patrick Walton-1/+1
slipped through. r=tjc
2013-02-13Remove die!, raplace invocations with fail! Issue #4524 pt 3Nick Desaulniers-2/+2
2013-02-07librustc: Lots of de-muting. rs=demutingPatrick Walton-26/+30
2013-02-05oldmap: use &K instead of K in find and getPatrick Walton-2/+2
This reverts commit a4250a96fdf61142a9c8dbb6d37ae8435c99e396. This is not the cause of the nonexhaustive-match failure.
2013-02-05Revert "oldmap: use &K instead of K in find and get"Graydon Hoare-2/+2
This reverts commit 8e643525d4e5bca993dada43615916c382a0645b.
2013-02-03oldmap: use &K instead of K in find and getDaniel Micay-2/+2
2013-02-03rename map -> oldmap and mark it as deprecatedDaniel Micay-4/+4
LinearMap is quite a bit faster, and is fully owned/sendable without requiring copies. The older std::map also doesn't use explicit self and relies on mutable fields.
2013-01-31Replace most invocations of fail keyword with die! macroNick Desaulniers-2/+2
2013-01-30librustc: Remove legacy exports from the language. r=brsonPatrick Walton-24/+0
2013-01-29libsyntax: De-export a lot of libsyntax. rs=deëxportingPatrick Walton-33/+33
2013-01-29libstd: Remove "dual impls" from the language and enforce coherence rules. ↵Patrick Walton-1/+1
r=brson "Dual impls" are impls that are both type implementations and trait implementations. They can lead to ambiguity and so this patch removes them from the language. This also enforces coherence rules. Without this patch, records can implement traits not defined in the current crate. This patch fixes this, and updates all of rustc to adhere to the new enforcement. Most of this patch is fixing rustc to obey the coherence rules, which involves converting a bunch of records to structs.
2013-01-24syntax/rustc: Less copyTim Chevalier-3/+3
2013-01-22syntax/rustc: Make some metadata-related functions take slices, kill bad copiesTim Chevalier-4/+4
Too small to review.
2013-01-20Convert many libsyntax records into structsErick Tryzelaar-11/+19
Specifically: ast_map::ctx ast_util::id_range diagnostic::{handler_t,codemap_t} auto_encode::field ext::base::{macro_def,syntax_expander_tt,syntax_expander_tt_item} ext::pipes::proto::next_state
2013-01-14convert ast::struct_dtor_ into a structErick Tryzelaar-2/+6
2013-01-10librustc: Implement a #[no_mangle] attribute to suppress name mangling. r=brsonPatrick Walton-0/+7
This is very helpful for SDL, as SDL wants you to define a function named `SDL_main`.
2013-01-09A collection of refactorings that I found it hard/tiresome to divide:Niko Matsakis-1/+1
- Make `extern fn()` assignable to any closure type, rather than a subtype. - Remove unused int_ty_set and float_ty_set - Refactor variable unification and make it more DRY - Do fn sub/lub/glb on the level of fn_sig - Rename infer::to_str::ToStr to infer::to_str::InferStr - Capitalize names of various types - Correct hashing of FnMeta - Convert various records-of-fns into structs-of-fns. This is both eliminating use of deprecated features and more forwards compatible with fn reform. r=pcwalton
2013-01-09syntax: convert ast::spanned into a structErick Tryzelaar-6/+9
2013-01-08librustc: Make unqualified identifier searches terminate at the nearest ↵Patrick Walton-0/+2
module scope. r=tjc