about summary refs log tree commit diff
path: root/src/libsyntax
AgeCommit message (Collapse)AuthorLines
2015-02-28Rollup merge of #22884 - japaric:obsolete, r=alexcrichtonManish Goregaokar-1/+0
This is leftover from #21843 If you still have `|&:| {}` closures in your code, simply remove the `&:` part. [breaking-change]
2015-02-28Rollup merge of #22875 - kmcallister:maceager, r=sfacklerManish Goregaokar-74/+97
MacEager is a MacResult implementation for the common case where you've already built each form of AST that you might return. Fixes #17637. Based on #18814. This is a [breaking-change] for syntax extensions: * MacExpr::new becomes MacEager::expr. * MacPat::new becomes MacEager::pat. * MacItems::new becomes MacEager::items. It takes a SmallVector directly, not an iterator. r? @sfackler
2015-02-28Rollup merge of #22869 - alexcrichton:stabilize-env, r=aturonManish Goregaokar-1/+0
Now that the `std::env` module has had some time to bake this commit marks most of its APIs as `#[stable]`. Some notable APIs that are **not** stable (and still use the same `env` feature gate) are: * `{set,get}_exit_status` - there are still questions about whether this is the right interface for setting/getting the exit status of a process. * `page_size` - this may change location in the future or perhaps name as well. This also effectively closes #22122 as the variants of `VarError` are `#[stable]` now. (this is done intentionally)
2015-02-27obsolete `|&:|` syntaxJorge Aparicio-1/+0
closes #22881
2015-02-27std: Stabilize the `env` moduleAlex Crichton-1/+0
Now that the `std::env` module has had some time to bake this commit marks most of its APIs as `#[stable]`. Some notable APIs that are **not** stable (and still use the same `env` feature gate) are: * `{set,get}_exit_status` - there are still questions about whether this is the right interface for setting/getting the exit status of a process. * `page_size` - this may change location in the future or perhaps name as well. This also effectively closes #22122 as the variants of `VarError` are `#[stable]` now. (this is done intentionally)
2015-02-27Replace MacExpr / MacPat / MacItems with MacEagerKeegan McAllister-74/+97
MacEager is a MacResult implementation for the common case where you've already built each form of AST that you might return. Fixes #17637. Based on #18814. This is a [breaking-change] for syntax extensions: * MacExpr::new becomes MacEager::expr. * MacPat::new becomes MacEager::pat. * MacItems::new becomes MacEager::items. It takes a SmallVector directly, not an iterator.
2015-02-27Rollup merge of #22835 - tshepang:remove-some-warnings, r=jakub-Manish Goregaokar-4/+4
2015-02-27Rollup merge of #22823 - kmcallister:fix-21370, r=huonwManish Goregaokar-4/+4
Fixes #21370. `unused-macro-with-follow-violation.rs` was already handled correctly. That test is just for good measure. :) I have a more involved plan to clean this up, but it ran into difficulties such as #22814.
2015-02-25Whitelist #[should_panic]Steven Fackler-0/+1
2015-02-26remove some compiler warningsTshepang Lekhonkhobe-4/+4
2015-02-25Always error on invalid macro fragment specifiersKeegan McAllister-4/+4
Fixes #21370. unused-macro-with-follow-violation.rs was already handled correctly. That test is just for good measure. :)
2015-02-25Rollup merge of #22787 - pnkfelix:reenable-gate-for-unsafe_no_drop_flag, ↵Manish Goregaokar-1/+3
r=alexcrichton Turn `unsafe_no_drop_flag` back into a gated-feature. Fix #22173
2015-02-25Rollup merge of #22635 - kmcallister:macros-chapter, r=steveklabnikManish Goregaokar-178/+206
r? @steveklabnik
2015-02-25Turn `unsafe_no_drop_flag` back into a gated-feature.Felix S. Klock II-1/+3
Fix #22173
2015-02-24Use arrays instead of vectors in testsVadim Petrochenkov-18/+16
2015-02-24syntax: update pretty-printer for the `<T>::method` shorthand.Eduard Burtescu-3/+6
2015-02-24Implement `<T>::method` UFCS expression syntax.Eduard Burtescu-91/+140
2015-02-24rustc_resolve: use the visitor model more, remove redundant repeated lookups.Eduard Burtescu-4/+10
2015-02-24syntax: use a single Path for Trait::Item in QPath.Eduard Burtescu-104/+78
2015-02-24syntax: don't use TraitRef in QPath.Eduard Burtescu-26/+29
2015-02-24syntax: don't store a secondary NodeId for TyPath.Eduard Burtescu-19/+12
2015-02-24Remove double expr_u32 (fixup #22700)Manish Goregaokar-3/+0
2015-02-24Rollup merge of #22700 - nick29581:ints_hash, r=alexcrichtonManish Goregaokar-2/+5
fmt and hash are pretty straightforward I think. sync is a bit more complex. I thought one or two of the `isize`s ought to be `i32`s, but that would require a bunch of casting (the root cause being the lack of atomics other than isize/usize). r? @alexcrichton
2015-02-24Auto merge of #21689 - FlaPer87:oibit-send-and-friends, r=nikomatsakisbors-19/+60
This is one more step towards completing #13231 This series of commits add support for default trait implementations. The changes in this PR don't break existing code and they are expected to preserve the existing behavior in the compiler as far as built-in bounds checks go. The PR adds negative implementations of `Send`/`Sync` for some types and it removes the special cases for `Send`/`Sync` during the trait obligations checks. That is, it now fully relies on the traits check rather than lang items. Once this patch lands and a new snapshot is created, it'll be possible to add default impls for `Send` and `Sync` and remove entirely the use of `BuiltinBound::{BoundSend,BoundSync}` for positive implementations as well. This PR also removes the restriction on negative implementations. That is, it is now possible to add negative implementations for traits other than `Send`/`Sync`
2015-02-23Rollup merge of #22490 - nagisa:inline-args, r=alexcrichtonManish Goregaokar-4/+8
2015-02-23Rollup merge of #22544 - bombless:fix-pattern, r=pnkfelixManish Goregaokar-0/+3
2015-02-23int audit - libcore::fmtNick Cameron-2/+6
2015-02-23Auto merge of #21769 - brooksbp:column-line-macro, r=nick29581bors-2/+7
Please see discussion in #19284 .
2015-02-22Auto merge of #22466 - Kimundi:str_pattern_ai_safe, r=aturonbors-3/+3
This is not a complete implementation of the RFC: - only existing methods got updated, no new ones added - doc comments are not extensive enough yet - optimizations got lost and need to be reimplemented See https://github.com/rust-lang/rfcs/pull/528 Technically a [breaking-change]
2015-02-22Validate inline attribute argumentsSimonas Kazlauskas-4/+8
2015-02-22Rename DefTrait to DefaultImplFlavio Percoco-9/+9
2015-02-22Add support for default trait impls in libsyntaxFlavio Percoco-19/+60
2015-02-21Resolve barriers to changing column!() / line!() return type to u32 in ↵Brian Brooks-0/+4
#19284 . Address review comments in #21769 .
2015-02-22Rollup merge of #22584 - alexcrichton:snapshots, r=GankroManish Goregaokar-82/+0
2015-02-22Fix errors from #22592Manish Goregaokar-5/+5
2015-02-22Rollup merge of #22592 - nikomatsakis:deprecate-bracket-bracket, r=aturonManish Goregaokar-91/+91
r? @aturon
2015-02-21Resolve includeme.fragment conflict.Brian Brooks-5/+6
2015-02-21Auto merge of #21959 - dhuseby:bitrig-support, r=brsonbors-0/+2
This patch adds the necessary pieces to support rust on Bitrig https://bitrig.org
2015-02-20Register new snapshotsAlex Crichton-82/+0
2015-02-20Remove remaining uses of `[]`. This time I tried to use deref coercions ↵Niko Matsakis-90/+89
where possible.
2015-02-20make span on obsolete syntax very preciseNiko Matsakis-1/+2
2015-02-20Addressed PR commentsMarvin Löbel-3/+3
2015-02-19Fix issue #22426 #22447bombless-0/+3
2015-02-18Round 3 test fixes and conflictsAlex Crichton-98/+97
2015-02-18rollup merge of #22286: nikomatsakis/variance-4bAlex Crichton-5/+6
Conflicts: src/librustc/middle/infer/combine.rs src/librustc_typeck/check/wf.rs
2015-02-18rollup merge of #22502: nikomatsakis/deprecate-bracket-bracketAlex Crichton-237/+252
Conflicts: src/libcollections/slice.rs src/libcollections/str.rs src/librustc/middle/lang_items.rs src/librustc_back/rpath.rs src/librustc_typeck/check/regionck.rs src/libstd/ffi/os_str.rs src/libsyntax/diagnostic.rs src/libsyntax/parse/parser.rs src/libsyntax/util/interner.rs src/test/run-pass/regions-refcell.rs
2015-02-18rollup merge of #22210: aturon/stab-final-borrowAlex Crichton-6/+6
Conflicts: src/libcollections/btree/map.rs src/libcollections/str.rs src/libcollections/vec.rs src/libcore/borrow.rs src/libcore/hash/mod.rs src/libstd/collections/hash/map.rs src/libstd/collections/hash/set.rs
2015-02-18Stabilize std::borrowAaron Turon-6/+6
This commit stabilizes `std::borrow`, making the following modifications to catch up the API with language changes: * It renames `BorrowFrom` to `Borrow`, as was originally intended (but blocked for technical reasons), and reorders the parameters accordingly. * It moves the type parameter of `ToOwned` to an associated type. This is somewhat less flexible, in that each borrowed type must have a unique owned type, but leads to a significant simplification for `Cow`. Flexibility can be regained by using newtyped slices, which is advisable for other reasons anyway. * It removes the owned type parameter from `Cow`, making the type much less verbose. * Deprecates the `is_owned` and `is_borrowed` predicates in favor of direct matching. The above API changes are relatively minor; the basic functionality remains the same, and essentially the whole module is now marked `#[stable]`. [breaking-change]
2015-02-18Replace all uses of `&foo[]` with `&foo[..]` en masse.Niko Matsakis-225/+226
2015-02-18Declare `&foo[]` to be obsolete syntax. Modify the obsolete mechanism toNiko Matsakis-10/+25
support warnings.