summary refs log tree commit diff
path: root/src/librustc_resolve
AgeCommit message (Collapse)AuthorLines
2015-10-27Auto merge of #26421 - nham:fix_21546, r=pnkfelixbors-0/+45
Fixes #21546.
2015-10-26Auto merge of #29303 - petrochenkov:unistrimp, r=eddybbors-1/+1
And use `VariantData` instead of `P<VariantData>` in `Item_` and `Variant_` Improvements suggested by @eddyb in https://github.com/rust-lang/rust/pull/28816#discussion_r42483587 and https://github.com/rust-lang/rust/pull/28816#discussion_r42483648 plugin-[breaking-change] r? @eddyb
2015-10-25std: Stabilize library APIs for 1.5Alex Crichton-1/+0
This commit stabilizes and deprecates library APIs whose FCP has closed in the last cycle, specifically: Stabilized APIs: * `fs::canonicalize` * `Path::{metadata, symlink_metadata, canonicalize, read_link, read_dir, exists, is_file, is_dir}` - all moved to inherent methods from the `PathExt` trait. * `Formatter::fill` * `Formatter::width` * `Formatter::precision` * `Formatter::sign_plus` * `Formatter::sign_minus` * `Formatter::alternate` * `Formatter::sign_aware_zero_pad` * `string::ParseError` * `Utf8Error::valid_up_to` * `Iterator::{cmp, partial_cmp, eq, ne, lt, le, gt, ge}` * `<[T]>::split_{first,last}{,_mut}` * `Condvar::wait_timeout` - note that `wait_timeout_ms` is not yet deprecated but will be once 1.5 is released. * `str::{R,}MatchIndices` * `str::{r,}match_indices` * `char::from_u32_unchecked` * `VecDeque::insert` * `VecDeque::shrink_to_fit` * `VecDeque::as_slices` * `VecDeque::as_mut_slices` * `VecDeque::swap_remove_front` - (renamed from `swap_front_remove`) * `VecDeque::swap_remove_back` - (renamed from `swap_back_remove`) * `Vec::resize` * `str::slice_mut_unchecked` * `FileTypeExt` * `FileTypeExt::{is_block_device, is_char_device, is_fifo, is_socket}` * `BinaryHeap::from` - `from_vec` deprecated in favor of this * `BinaryHeap::into_vec` - plus a `Into` impl * `BinaryHeap::into_sorted_vec` Deprecated APIs * `slice::ref_slice` * `slice::mut_ref_slice` * `iter::{range_inclusive, RangeInclusive}` * `std::dynamic_lib` Closes #27706 Closes #27725 cc #27726 (align not stabilized yet) Closes #27734 Closes #27737 Closes #27742 Closes #27743 Closes #27772 Closes #27774 Closes #27777 Closes #27781 cc #27788 (a few remaining methods though) Closes #27790 Closes #27793 Closes #27796 Closes #27810 cc #28147 (not all parts stabilized)
2015-10-25syntax/rustc_front: Simplify VariantData::fieldsVadim Petrochenkov-1/+1
And use VariantData instead of P<VariantData> in Item_ and Variant_
2015-10-22Warn when creating a module and a struct that both have the same name.Nick Hamann-0/+45
Currently it is possible to do the following: - define a module named `Foo` and then a unit or tuple struct also named `Foo` - define any struct named `Foo` and then a module named `Foo` This commit introduces a warning for both of these cases.
2015-10-13Merge VariantData and VariantData_Vadim Petrochenkov-4/+6
2015-10-13Merge struct fields and struct kindVadim Petrochenkov-12/+12
2015-10-13Dict -> Struct, StructDef -> VariantData, def -> dataVadim Petrochenkov-7/+7
2015-10-13Provide span for visit_struct_def + remove some dead codeVadim Petrochenkov-1/+2
2015-10-13Remove now redundant NodeId from VariantVadim Petrochenkov-5/+5
2015-10-13Decouple structure kinds from NodeIdsVadim Petrochenkov-6/+6
2015-10-13Unify structures and enum variants in HIRVadim Petrochenkov-18/+4
2015-10-02Rollup merge of #28554 - christopherdumas:E0422, r=arielb1Manish Goregaokar-1/+23
2015-10-01Convert DefId to use DefIndex, which is an index into a list ofNiko Matsakis-2/+2
paths, and construct paths for all definitions. Also, stop rewriting DefIds for closures, and instead just load the closure data from the original def-id, which may be in another crate.
2015-10-01Introduce semi-duplicate DefIds into DefLocal/DefUpvar to remove useNiko Matsakis-4/+6
of xxx_local.
2015-10-01Remove DefRegion, which is not usedNiko Matsakis-1/+1
2015-10-01move direct accesses of `node` to go through `as_local_node_id`, unlessNiko Matsakis-14/+14
they are being used as an opaque "position identifier"
2015-10-01move job of creating local-def-ids to ast-map (with a few stragglers)Niko Matsakis-26/+38
2015-10-01add some XXX markersNiko Matsakis-1/+1
2015-09-29Fill in some missing parts in the default HIR visitorVadim Petrochenkov-4/+4
2015-09-24Cleanup interfaces of Name, SyntaxContext and IdentVadim Petrochenkov-5/+5
Make sure Name, SyntaxContext and Ident are passed by value Make sure Idents don't serve as keys (or parts of keys) in maps, Ident comparison is not well defined
2015-09-23Remove random Idents outside of libsyntaxVadim Petrochenkov-10/+10
2015-09-22Use Names in the remaining HIR structures with exception of...Vadim Petrochenkov-5/+5
PathSegment, PatIdent, ExprWhile, ExprLoop, ExprBreak and ExprAgain - they need Idents for resolve
2015-09-22Use Names in path fragments and MacroDefVadim Petrochenkov-10/+9
2015-09-22Use Names in hir::{Field, ExprMethodCall, ExprField}Vadim Petrochenkov-4/+4
2015-09-22Use Names in HIR ItemsVadim Petrochenkov-10/+10
2015-09-22Use Names in HIR visitors and foldersVadim Petrochenkov-1/+1
2015-09-20E0422 description.christopherdumas-1/+23
2015-09-17Resolve prefix in imports with empty bracesVadim Petrochenkov-6/+22
2015-09-16Use ast attributes every where (remove HIR attributes).Nick Cameron-6/+5
This could be a [breaking-change] if your lint or syntax extension (is that even possible?) uses HIR attributes or literals.
2015-09-15Auto merge of #28406 - petrochenkov:primitive, r=eddybbors-2/+16
This was missing from https://github.com/rust-lang/rust/pull/27451 r? @eddyb
2015-09-15Prohibit renaming to primitive types' names in import listsVadim Petrochenkov-2/+16
2015-09-11std: Stabilize/deprecate features for 1.4Alex Crichton-1/+0
The FCP is coming to a close and 1.4 is coming out soon, so this brings in the libs team decision for all library features this cycle. Stabilized APIs: * `<Box<str>>::into_string` * `Arc::downgrade` * `Arc::get_mut` * `Arc::make_mut` * `Arc::try_unwrap` * `Box::from_raw` * `Box::into_raw` * `CStr::to_str` * `CStr::to_string_lossy` * `CString::from_raw` * `CString::into_raw` * `IntoRawFd::into_raw_fd` * `IntoRawFd` * `IntoRawHandle::into_raw_handle` * `IntoRawHandle` * `IntoRawSocket::into_raw_socket` * `IntoRawSocket` * `Rc::downgrade` * `Rc::get_mut` * `Rc::make_mut` * `Rc::try_unwrap` * `Result::expect` * `String::into_boxed_slice` * `TcpSocket::read_timeout` * `TcpSocket::set_read_timeout` * `TcpSocket::set_write_timeout` * `TcpSocket::write_timeout` * `UdpSocket::read_timeout` * `UdpSocket::set_read_timeout` * `UdpSocket::set_write_timeout` * `UdpSocket::write_timeout` * `Vec::append` * `Vec::split_off` * `VecDeque::append` * `VecDeque::retain` * `VecDeque::split_off` * `rc::Weak::upgrade` * `rc::Weak` * `slice::Iter::as_slice` * `slice::IterMut::into_slice` * `str::CharIndices::as_str` * `str::Chars::as_str` * `str::split_at_mut` * `str::split_at` * `sync::Weak::upgrade` * `sync::Weak` * `thread::park_timeout` * `thread::sleep` Deprecated APIs * `BTreeMap::with_b` * `BTreeSet::with_b` * `Option::as_mut_slice` * `Option::as_slice` * `Result::as_mut_slice` * `Result::as_slice` * `f32::from_str_radix` * `f64::from_str_radix` Closes #27277 Closes #27718 Closes #27736 Closes #27764 Closes #27765 Closes #27766 Closes #27767 Closes #27768 Closes #27769 Closes #27771 Closes #27773 Closes #27775 Closes #27776 Closes #27785 Closes #27792 Closes #27795 Closes #27797
2015-09-06track, for each upvar, its index in list of upvarsNiko Matsakis-14/+13
2015-09-03Use proper span for break and continue labelsSimonas Kazlauskas-3/+3
Fixes #28109
2015-09-03Add an intital HIR and lowering stepNick Cameron-92/+96
2015-09-01Add E0439 error explanationGuillaume Gomez-7/+7
2015-09-01Comment out unused error codesGuillaume Gomez-18/+18
2015-09-01Add E0411 error explanationGuillaume Gomez-1/+49
2015-08-26Rename FnKind variants and stop re-exporting them from the visit module.Ms2ger-5/+5
There is no longer a need for that pattern, since enums are now qualified.
2015-08-24Auto merge of #27857 - Manishearth:improve-fnkind, r=pnkfelixbors-1/+1
Since enums are namespaced now, should we also remove the `Fk` prefixes from `FnKind` and remove the reexport? (The reexport must be removed because otherwise it clashes with glob imports containing `ItemFn`). IMO writing `FnKind::Method` is much clearer than `FkMethod`.
2015-08-24convert to use `is_local` instead of `== LOCAL_CRATE`Niko Matsakis-5/+4
2015-08-24fallout from moving def-idNiko Matsakis-33/+36
2015-08-19fallout of reworking rc and arc APIsAlexis Beingessner-4/+4
2015-08-19Auto merge of #27493 - GSam:master, r=nrcbors-28/+88
In order to test the validity of identifiers, exposing the name resolution module is necessary. Other changes mostly comprise of exposing modules publicly like parts of save-analysis, so they can be called appropriately.
2015-08-16FnFnBlock -> FkClosureManish Goregaokar-1/+1
2015-08-15Add issue for the rustc_private feature everywhereAlex Crichton-1/+1
2015-08-12Auto merge of #27698 - arielb1:foreign-type-import, r=alexcrichtonbors-0/+5
Fixes #22968 Probably fixes #27602 (the issue needs a reproduction) r? @alexcrichton
2015-08-12stop cross-crate associated types from being importedAriel Ben-Yehuda-0/+5
Fixes #22968 Probably fixes #27602
2015-08-11rollup merge of #27635: GuillaumeGomez/patch-4Alex Crichton-2/+10
r? @Manishearth