about summary refs log tree commit diff
path: root/src/libsyntax/parse/obsolete.rs
AgeCommit message (Collapse)AuthorLines
2014-02-14Refactored ast_map and friends, mainly to have Paths without storing them.Eduard Burtescu-2/+1
2014-02-13Remove obsolete warnings for `extern mod`Flavio Percoco-12/+0
This patch gets rid of ObsoleteExternModAttributesInParens and ObsoleteNamedExternModule since the replacement of `extern mod` with `extern crate` avoids those cases and raises different errors. Both have been around for at least a version which makes this a good moment to get rid of them.
2014-02-11Move replace and swap to std::mem. Get rid of std::utilEdward Wang-1/+1
Also move Void to std::any, move drop to std::mem and reexport in prelude.
2014-02-08Fixed error starting with uppercasemr.Shu-1/+1
Error messages cleaned in librustc/middle Error messages cleaned in libsyntax Error messages cleaned in libsyntax more agressively Error messages cleaned in librustc more aggressively Fixed affected tests Fixed other failing tests Last failing tests fixed
2014-02-02syntax: add an obsolete syntax warning for @[].Huon Wilson-0/+5
2014-02-02librustc: Remove `@str` from the languagePatrick Walton-0/+5
2014-02-02libsyntax: Remove `ident_to_str` from the parser, which was returningPatrick Walton-2/+2
`@str` values
2014-01-31Remove the obsolete handler for `impl A;`.Huon Wilson-5/+0
This is has been obsolete for quite a while now (including a release), so removing the special handling seems fine. (The error message is quite good still anyway.) Fixes #9580.
2014-01-13libsyntax: Make managed box `@` patterns obsoletePatrick Walton-2/+8
2014-01-09libsyntax: Renamed types, traits and enum variants to CamelCase.Eduard Burtescu-2/+2
2014-01-02libsyntax: De-`@mut` `token` in the parserPatrick Walton-9/+2
2014-01-02libsyntax: Make the parser mutablePatrick Walton-13/+13
2014-01-01Remove `extern mod foo (name="bar")` syntax, closes #9543Florian Hahn-0/+6
2013-12-15Forbid multiple imports in use statementsAlex Crichton-0/+5
Closes #10911
2013-11-26libsyntax: Remove the old-style borrowed closure type syntax from thePatrick Walton-0/+6
language.
2013-11-19libsyntax: Change all uses of `&fn` to `||`.Patrick Walton-1/+1
2013-11-18libsyntax: Remove `~fn()` from the languagePatrick Walton-1/+7
2013-11-18Use '..' as slice wildcard in vectorsBrian Anderson-1/+6
2013-11-18Use '..' as multi-field wildcard in enums and structs.Brian Anderson-0/+10
2013-10-25libsyntax: Get rid of obsolete obsolete warning.Luqman Aden-6/+0
2013-10-04Remove specific errors for very old obsolete syntaxBenjamin Herr-166/+2
Replaces existing tests for removed obsolete-syntax errors with tests for the resulting regular errors, adds a test for each of the removed parser errors to make sure that obsolete forms don't start working again, removes some obsolete/superfluous tests that were now failing. Deletes some amount of dead code in the parser, also includes some small changes to parser error messages to accomodate new tests.
2013-10-01Obsolete parsing 'loop' as 'continue'Alex Crichton-0/+6
2013-09-30syntax: Remove usage of fmt!Alex Crichton-2/+2
2013-09-25auto merge of #9432 : alexcrichton/rust/correct-item-visibility, r=pcwaltonbors-17/+0
This fixes private statics and functions from being usable cross-crates, along with some bad privacy error messages. This is a reopening of #8365 with all the privacy checks in privacy.rs instead of resolve.rs (where they should be anyway). These maps of exported items will hopefully get used for generating documentation by rustdoc Closes #8592
2013-09-24Stop accepting 'impl ...;', require {} insteadAlex Crichton-0/+5
Progress on #7981
2013-09-24Correctly encode item visibility in metadataAlex Crichton-17/+0
This fixes private statics and functions from being usable cross-crates, along with some bad privacy error messages. This is a reopening of #8365 with all the privacy checks in privacy.rs instead of resolve.rs (where they should be anyway). These maps of exported items will hopefully get used for generating documentation by rustdoc Closes #8592
2013-09-03Modernized a few more types in syntax::astMarvin Löbel-4/+4
2013-09-01Modernized a few type names in rustc and syntaxMarvin Löbel-7/+7
2013-08-27librustc: Remove `&const` and `*const` from the language.Patrick Walton-5/+6
They are still present as part of the borrow check.
2013-08-18fix for #8088 (Cannot name a struct field `new` due to ancient syntax)Do Nhat Minh-19/+0
remove code for parsing ancient syntax added a run-pass test
2013-08-12Forbid pub/priv where it has no effectAlex Crichton-8/+13
Closes #5495
2013-08-07Forbid `priv` where it has no effectAlex Crichton-0/+5
This is everywhere except struct fields and enum variants.
2013-08-02librustc: Disallow "unsafe" for external functionsPatrick Walton-1/+7
2013-07-31rm ancient error for lowercase kindsDaniel Micay-7/+0
3 of these kinds no longer even exist in the CamelCase form
2013-07-20auto merge of #7902 : huonw/rust/attr++, r=cmr,pcwaltonbors-3/+3
This does a number of things, but especially dramatically reduce the number of allocations performed for operations involving attributes/ meta items: - Converts ast::meta_item & ast::attribute and other associated enums to CamelCase. - Converts several standalone functions in syntax::attr into methods, defined on two traits AttrMetaMethods & AttributeMethods. The former is common to both MetaItem and Attribute since the latter is a thin wrapper around the former. - Deletes functions that are unnecessary due to iterators. - Converts other standalone functions to use iterators and the generic AttrMetaMethods rather than allocating a lot of new vectors (e.g. the old code would have to allocate a new vector to use functions that operated on &[meta_item] on &[attribute].) - Moves the core algorithm of the #[cfg] matching to syntax::attr, similar to find_inline_attr and find_linkage_metas. This doesn't have much of an effect on the speed of #[cfg] stripping, despite hugely reducing the number of allocations performed; presumably most of the time is spent in the ast folder rather than doing attribute checks. Also fixes the Eq instance of MetaItem_ to correctly ignore spans, so that `rustc --cfg 'foo(bar)'` now works.
2013-07-20librustc: Remove `pub extern` and `priv extern` from the language.Patrick Walton-0/+6
Place `pub` or `priv` on individual items instead.
2013-07-20syntax: modernise attribute handling in syntax::attr.Huon Wilson-3/+3
This does a number of things, but especially dramatically reduce the number of allocations performed for operations involving attributes/ meta items: - Converts ast::meta_item & ast::attribute and other associated enums to CamelCase. - Converts several standalone functions in syntax::attr into methods, defined on two traits AttrMetaMethods & AttributeMethods. The former is common to both MetaItem and Attribute since the latter is a thin wrapper around the former. - Deletes functions that are unnecessary due to iterators. - Converts other standalone functions to use iterators and the generic AttrMetaMethods rather than allocating a lot of new vectors (e.g. the old code would have to allocate a new vector to use functions that operated on &[meta_item] on &[attribute].) - Moves the core algorithm of the #[cfg] matching to syntax::attr, similar to find_inline_attr and find_linkage_metas. This doesn't have much of an effect on the speed of #[cfg] stripping, despite hugely reducing the number of allocations performed; presumably most of the time is spent in the ast folder rather than doing attribute checks. Also fixes the Eq instance of MetaItem_ to correctly ignore spaces, so that `rustc --cfg 'foo(bar)'` now works.
2013-07-17librustc: Remove `copy` expressions from the language.Patrick Walton-5/+0
2013-07-17librustc: Remove all uses of "copy".Patrick Walton-4/+4
2013-07-17librustc: Add a lint mode for unnecessary `copy` and remove a bunch of them.Patrick Walton-2/+3
2013-06-28librustc: Rewrite reachability and forbid duplicate methods in type ↵Patrick Walton-1/+20
implementations. This should allow fewer symbols to be exported.
2013-06-28libsyntax: Remove "copy" pattern bindings from the languagePatrick Walton-0/+5
2013-06-28librustc: Disallow "mut" from distributing over bindings.Patrick Walton-0/+6
This is the backwards-incompatible part of per-binding-site "mut".
2013-06-25great renaming propagation: syntaxCorey Richardson-5/+3
2013-06-23Parse and typecheck (not kindcheck) bounds on trait paths.Ben Blum-5/+0
2013-06-18replace #[inline(always)] with #[inline]. r=burningtree.Graydon Hoare-1/+1
2013-06-13Use @str instead of @~str in libsyntax and librustc. Fixes #5048.Huon Wilson-1/+1
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-04librustc: Disallow multiple patterns from appearing in a "let" declaration.Patrick Walton-0/+6
You can still initialize multiple variables at once with "let (x, y) = (1, 2)".
2013-06-04libsyntax: Remove `pub impl` from the languagePatrick Walton-6/+5
2013-06-01Remove all uses of `pub impl`. rs=stylePatrick Walton-11/+16