summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2016-05-18trans: callee: normalize trait_ref before useWang Xuerui-0/+37
Fixes #33436 and #33461. Test case is from #33461.
2016-05-17Don't use env::current_exe with libbacktraceSteven Fackler-43/+22
If the path we give to libbacktrace doesn't actually correspond to the current process, libbacktrace will segfault *at best*. cc #21889
2016-05-04resolve: improve performanceJeffrey Seyfried-11/+25
2016-05-04trans: always register an item's symbol, even if duplicated.Eduard Burtescu-35/+40
2016-05-04Check transmutes between types without statically known sizes.Eduard Burtescu-351/+341
2016-05-04Guard against rustc::layout diverging from rustc_trans.Eduard Burtescu-0/+32
2016-05-04Compute LLVM-agnostic type layouts in rustc.Eduard Burtescu-37/+1006
# Conflicts: # src/librustc/ty/layout.rs
2016-05-04Parse data-layout specifications.Eduard Burtescu-0/+255
2016-05-04Make data-layout mandatory in target specs.Eduard Burtescu-14/+73
2016-05-04Add regression test for #32797 (fixes #32797)Jeffrey Seyfried-0/+21
2016-05-04Add commentsJeffrey Seyfried-0/+4
2016-05-04Add testJeffrey Seyfried-0/+26
2016-05-04Detect duplicate glob imports arising from glob cyclesJeffrey Seyfried-13/+18
2016-04-28Remove IPV6_V6ONLY functionalitySteven Fackler-64/+0
These settings can only be adjusted before bind time, which doesn't make sense in the current set of functionality. These methods are stable, but haven't hit a stable release yet. Closes #33052 [breaking-change] (cherry picked from commit c6480e8b6b13401030c52f3c2b4fcc4e80c14481)
2016-04-12std: Stabilize APIs for the 1.9 releaseAlex Crichton-328/+508
This commit applies all stabilizations, renamings, and deprecations that the library team has decided on for the upcoming 1.9 release. All tracking issues have gone through a cycle-long "final comment period" and the specific APIs stabilized/deprecated are: Stable * `std::panic` * `std::panic::catch_unwind` (renamed from `recover`) * `std::panic::resume_unwind` (renamed from `propagate`) * `std::panic::AssertUnwindSafe` (renamed from `AssertRecoverSafe`) * `std::panic::UnwindSafe` (renamed from `RecoverSafe`) * `str::is_char_boundary` * `<*const T>::as_ref` * `<*mut T>::as_ref` * `<*mut T>::as_mut` * `AsciiExt::make_ascii_uppercase` * `AsciiExt::make_ascii_lowercase` * `char::decode_utf16` * `char::DecodeUtf16` * `char::DecodeUtf16Error` * `char::DecodeUtf16Error::unpaired_surrogate` * `BTreeSet::take` * `BTreeSet::replace` * `BTreeSet::get` * `HashSet::take` * `HashSet::replace` * `HashSet::get` * `OsString::with_capacity` * `OsString::clear` * `OsString::capacity` * `OsString::reserve` * `OsString::reserve_exact` * `OsStr::is_empty` * `OsStr::len` * `std::os::unix::thread` * `RawPthread` * `JoinHandleExt` * `JoinHandleExt::as_pthread_t` * `JoinHandleExt::into_pthread_t` * `HashSet::hasher` * `HashMap::hasher` * `CommandExt::exec` * `File::try_clone` * `SocketAddr::set_ip` * `SocketAddr::set_port` * `SocketAddrV4::set_ip` * `SocketAddrV4::set_port` * `SocketAddrV6::set_ip` * `SocketAddrV6::set_port` * `SocketAddrV6::set_flowinfo` * `SocketAddrV6::set_scope_id` * `<[T]>::copy_from_slice` * `ptr::read_volatile` * `ptr::write_volatile` * The `#[deprecated]` attribute * `OpenOptions::create_new` Deprecated * `std::raw::Slice` - use raw parts of `slice` module instead * `std::raw::Repr` - use raw parts of `slice` module instead * `str::char_range_at` - use slicing plus `chars()` plus `len_utf8` * `str::char_range_at_reverse` - use slicing plus `chars().rev()` plus `len_utf8` * `str::char_at` - use slicing plus `chars()` * `str::char_at_reverse` - use slicing plus `chars().rev()` * `str::slice_shift_char` - use `chars()` plus `Chars::as_str` * `CommandExt::session_leader` - use `before_exec` instead. Closes #27719 cc #27751 (deprecating the `Slice` bits) Closes #27754 Closes #27780 Closes #27809 Closes #27811 Closes #27830 Closes #28050 Closes #29453 Closes #29791 Closes #29935 Closes #30014 Closes #30752 Closes #31262 cc #31398 (still need to deal with `before_exec`) Closes #31405 Closes #31572 Closes #31755 Closes #31756
2016-04-11Merge pull request #32897 from brson/fixbetaAlex Crichton-2/+0
[beta] Fix beta branch
2016-04-12rustbuild: Fix handling of the bootstrap keyAlex Crichton-8/+51
Bring the calculation logic in line with the makefiles and also set the RUSTC_BOOTSTRAP_KEY environment variable to enable the bootstrap on the stable compiler.
2016-04-12Fix beta branchBrian Anderson-2/+0
This test tests a message that is only displayed on nightly.
2016-04-11Auto merge of #32850 - jseyfried:add_tests, r=alexcrichtonbors-0/+57
resolve: Add regression tests for fixed issues This adds regression tests for fixed issues in resolve (closes #22146, closes #24883, closes #26930). r? @eddyb
2016-04-11Tibet does not have a space program. Peru does.Manish Goregaokar-8/+8
2016-04-11Review fixes for #32878 (which was accidentally merged)Manish Goregaokar-10/+18
2016-04-11Add E0520 error code explanationGuillaume Gomez-1/+54
2016-04-10Auto merge of #32806 - brson:fix-features, r=alexcrichtonbors-2/+2
Set the version number for stabilization of braced_empty_structs and augmented_assignment to 1.8.0. Per the comments, the numbers in this table reflect the "current status". cc @rust-lang/libs @rust-lang/lang Discovered this while hunting for 1.8 features. I'm afraid there may be more of these that are incorrect and we may have created a mess.
2016-04-10Auto merge of #32816 - eddyb:variadic-fn-item, r=Aatchbors-12/+43
Blacklist fn item types from being used with variadic functions. Fixes #32201 by adding fn types to the variadic blacklist which currently includes `bool`, `i8`, `u8`, `i16`, `u16` and `f32`.
2016-04-09Auto merge of #32786 - brson:cargotest, r=alexcrichtonbors-4/+13
Fix cargotest Tested in dev.
2016-04-09Auto merge of #32781 - michaelwoerister:dont-use-svh-in-debuginfo, ↵bors-8/+10
r=alexcrichton Use crate name/disambiguator instead of SVH for debuginfo typeid.
2016-04-08Auto merge of #32773 - mitaa:rdoc-ttfn-json, r=alexcrichtonbors-158/+31
rustdoc: Remove the json-{input, output} format (for reference #32698) fixes #25108 r? @alexcrichton
2016-04-09Add regression test for #26930Jeffrey Seyfried-0/+20
2016-04-09Add regression test for #24883Jeffrey Seyfried-0/+28
2016-04-09Add regression test for #22146Jeffrey Seyfried-0/+9
2016-04-08Auto merge of #32751 - alexcrichton:dist-docs, r=brsonbors-68/+100
rustbuild: Support cross rust-docs packages Right now if you configure multiple hosts rustbuild will only build documentation for the build triple, but we've got all the support necessary to build documentation for different architectures as well. This commit reinterprets the `target` field of doc `Step` instances to be the target of the documentation rather than the target of the rustdoc/tool being run. This should enable `make dist` to start producing a bunch of `rust-docs` packages for all the cross architectures that rustbuild is producing now.
2016-04-08Auto merge of #32738 - Aatch:mir-operand-fn-ret, r=arielb1bors-60/+220
Handle operand temps for function calls Previously, all non-void function returns required an on-stack location for the value to be stored to. This code improves translation of function calls so this is no longer necessary.
2016-04-08Auto merge of #32695 - sfackler:default-buf-size, r=alexcrichtonbors-1/+1
Drop the default buffer size to 8K The 64k capacity was picked by me a couple of years ago in the initial implementation of buffered IO adaptors: https://github.com/rust-lang/rust/pull/9091/files#diff-b131eeef531ad098b32f49695a031008R62. 64K was picked for symmetry with libuv, which we no longer use. 64K is *way* larger than the default size of any other language that I can find. C, C++, and Java default to 8K, and Go defaults to 4K. There have been a variety of issues filed relating to this such as #31885. Closes #31885
2016-04-08Blacklist fn item types from being used with variadic functions.Eduard Burtescu-12/+43
2016-04-08Fix some type-related bugsJames Miller-18/+36
Some types weren't being properly monomorphised, and didn't have their regions properly erased. This is now fixed. Also fixes an issue where a temp was initialized in two separate branches, but wasn't given an alloca.
2016-04-07Fix cargotestBrian Anderson-4/+13
2016-04-07Auto merge of #32800 - Manishearth:rollup, r=Manishearthbors-124/+211
Rollup of 7 pull requests - Successful merges: #32687, #32729, #32731, #32732, #32734, #32737, #32741 - Failed merges:
2016-04-07Set the version number for stabilization of braced_empty_structsBrian Anderson-2/+2
and augmented_assignment to 1.8.0. Per the comments, the numbers in this table reflect the "current status".
2016-04-07Rollup merge of #32741 - tbu-:pr_remove_fixme_12808, r=blussManish Goregaokar-86/+74
Remove strange names created by lack of privacy-conscious name lookup The fixed issue that allowed this was #12808.
2016-04-07Rollup merge of #32737 - timonvo:arm-ehabi-backtraces, r=alexcrichtonManish Goregaokar-1/+6
Fix backtraces on ARM EHABI. Before this patch, our `rust_eh_personality_catch` routine would cut backtracing short at the `__rust_try` function, due to it not handling the `_US_FORCE_UNWIND` bit properly, which is passed by libunwind implementations on ARM EHABI. Examples of where the `_US_FORCE_UNWIND` bit is passed to the PR: - GCC's libunwind: https://github.com/gcc-mirror/gcc/blob/f1717362de1e56fe1ffab540289d7d0c6ed48b20/libgcc/unwind-arm-common.inc#L590 - LLVM's libunwind: https://github.com/llvm-mirror/libunwind/blob/61278584b5c84c422ff5da10f46c3235c54636c9/src/UnwindLevel1-gcc-ext.c#L153
2016-04-07Rollup merge of #32734 - tromey:dwarf-5-DW_LANG_Rust, r=michaelwoeristerManish Goregaokar-1/+3
Use DWARF 5 value for DW_LANG_Rust DWARF 5 has assigned a value for `DW_LANG_Rust`. See [the relevant DWARF issue](http://www.dwarfstd.org/ShowIssue.php?issue=140129.1). Although DWARF 5 is not yet released, it seems ok to use this value as both GCC and LLVM are already using other `DW_LANG_` constants assigned in this way.
2016-04-07Rollup merge of #32732 - dotdash:ext_arg, r=eddybManish Goregaokar-21/+102
Handle integer-extending for C ABI We need to supply sext/zext attributes to LLVM to ensure that arguments are extended to the appropriate width in the correct way. Most platforms extend integers less than 32 bits, though not all.
2016-04-07Rollup merge of #32729 - pierzchalski:build_helper_suffix, r=alexcrichtonManish Goregaokar-3/+9
Change build helper to modify suffix The current implementation of [gcc](https://crates.io/crates/gcc) defaults to using the ```CC``` environment variable to determine the compiler. The current global-find-replace in ```build_helper``` causes issues for projects using tools like ```ccache``` if they try to integrate libstd into their build system. Almost all cross-compiler toolchains have the tool name as a suffix of the filename, so changing this to suffix-replacement instead of global-replacement should be fine.
2016-04-07Rollup merge of #32687 - mneumann:dragonfly_fix_libstd, r=alexcrichtonManish Goregaokar-12/+17
Fix libstd on DragonFly Following changes: * birthtime does not exist on DragonFly * errno: __dfly_error is no more. Use #[thread_local] static errno. * clock_gettime expects a c_ulong These changes are required to build DragonFly snapshots again.
2016-04-07Auto merge of #32016 - nikomatsakis:incr-comp-save, r=mwbors-708/+2037
Save/load incremental compilation dep graph Contains the code to serialize/deserialize the dep graph to disk between executions. We also hash the item contents and compare to the new hashes. Also includes a unit test harness. There are definitely some known limitations, such as https://github.com/rust-lang/rust/issues/32014 and https://github.com/rust-lang/rust/issues/32015, but I am leaving those for follow-up work. Note that this PR builds on https://github.com/rust-lang/rust/pull/32007, so the overlapping commits can be excluded from review. r? @michaelwoerister
2016-04-07argh, overlooked two extern cratesNiko Matsakis-0/+2
2016-04-07Rollup merge of #32789 - jseyfried:fix_duplicate_resolve_errors, r=eddybManish Goregaokar-97/+76
resolve: Avoid emitting redundant path resolution errors This PR avoids emitting redundant path resolution errors in `resolve` (fixes #32760). r? @eddyb
2016-04-07Rollup merge of #32757 - taralx:patch-1, r=brsonManish Goregaokar-12/+12
Fix typos in atomic compare_exchange. Failure ordering can't be Release, not (not) Acquire. Seems like a typo copy-pasted all over.
2016-04-07Rollup merge of #32748 - aturon:simplified-spec, r=nikomatsakisManish Goregaokar-70/+162
Reinstate fast_reject for overlap checking The initial implementation of specialization did not use the `fast_reject` mechanism when checking for overlap, which caused a serious performance regression in some cases. This commit modifies the specialization graph to use simplified types for fast rejection when possible, and along the way refactors the logic for building the specialization graph. Closes #32499 r? @nikomatsakis
2016-04-07Rollup merge of #32745 - Amanieu:arc_fix, r=alexcrichtonManish Goregaokar-0/+1
Fix infinite loop in Arc::downgrade