summary refs log tree commit diff
path: root/src/test/run-pass
AgeCommit message (Collapse)AuthorLines
2018-05-24Fix self referential impl Trait substitutionsleonardo.yvens-0/+29
A high impact bug because a lot of common traits use a `Self` substitution by default. Should be backported to beta. There was a check for this which wasn't catching all cases, it was made more robust. Fixes #49376 Fixes #50626 r? @petrochenkov
2018-05-24Fix issue #50811 (`NaN > NaN` was true).kennytm-0/+65
Fix #50811 Make sure the float comparison output is consistent with the expected behavior when NaN is involved. ---- Note: This PR is a **BREAKING CHANGE**. If you have used `>` or `>=` to compare floats, and make the result as the length of a fixed array type, like: ```rust use std::f64::NAN; let x: [u8; (NAN > NAN) as usize] = [1]; ``` then the code will no longer compile. Previously, all float comparison involving NaN will just return "Greater", i.e. `NAN > NAN` would wrongly return `true` during const evaluation. If you need to retain the old behavior (why), you may replace `a > b` with `a != a || b != b || a > b`.
2018-05-24Fix `fn main() -> impl Trait` for non-`Termination` traitleonardo.yvens-0/+13
Fixes #50595. This bug currently affects stable. Why I think we can go for hard error: - It will in stable for at most one cycle and there is no legitimate reason to abuse it, nor any known uses in the wild. - It only affects `bin` crates (which have a `main`), so there is little practical difference between a hard error or a deny lint, both are a one line fix. The fix was to just unshadow a variable. Thanks @nikomatsakis for the mentoring! r? @nikomatsakis
2018-04-27add regression testNiko Matsakis-0/+22
Fixes #49685
2018-04-21Revert stabilization of `feature(never_type)`.Felix S. Klock II-0/+12
This commit is just covering the feature gate itself and the tests that made direct use of `!` and thus need to opt back into the feature. A follow on commit brings back the other change that motivates the revert: Namely, going back to the old rules for falling back to `()`.
2018-04-20Properly handle ranges of signed enums using both extremums (fixes #49973)Anthony Ramine-0/+20
2018-04-20Fix ICE with impl TraitShotaro Yamada-0/+22
2018-04-20Fix ICE with `main`'s return type containing lifetimesShotaro Yamada-0/+30
2018-04-10Fix #49344leonardo.yvens-0/+4
2018-03-30Auto merge of #49403 - oli-obk:try2, r=eddybbors-0/+7
Trim discriminants to their final type size r? @eddyb fixes #49181
2018-03-29Ignore stack-probes tests on powerpc/s390x tooJosh Stone-0/+4
We only support stack probes on x86 and x86_64. Other arches are already ignored.
2018-03-29Move alloc::Bound to {core,std}::opsSimon Sapin-1/+1
The stable reexport `std::collections::Bound` is now deprecated. Another deprecated reexport could be added in `alloc`, but that crate is unstable.
2018-03-29Auto merge of #49458 - cramertj:stable-underscore-lt, r=nikomatsakisbors-3/+0
Stabilize underscore lifetimes r? @nikomatsakis
2018-03-29Stabilize underscore lifetimesTaylor Cramer-3/+0
2018-03-28Auto merge of #49460 - kennytm:rollup, r=kennytmbors-1/+5
Rollup of 12 pull requests - Successful merges: #49243, #49329, #49364, #49400, #49405, #49427, #49428, #49429, #49439, #49442, #49444, #49452 - Failed merges:
2018-03-28Rollup merge of #49428 - cuviper:llvm6-target_feature, r=alexcrichtonkennytm-1/+5
Enable target_feature on any LLVM 6+ In `LLVMRustHasFeature()`, rather than using `MCInfo->getFeatureTable()` that is specific to Rust's LLVM fork, we can use this in LLVM 6: /// Check whether the subtarget features are enabled/disabled as per /// the provided string, ignoring all other features. bool checkFeatures(StringRef FS) const; Now rustc using external LLVM can also have `target_feature`. r? @alexcrichton
2018-03-28Stabilize match_default_bindingsTaylor Cramer-25/+0
This includes a submodule update to rustfmt in order to allow a stable feature declaration.
2018-03-27Enable target_feature on any LLVM 6+Josh Stone-1/+5
In `LLVMRustHasFeature()`, rather than using `MCInfo->getFeatureTable()` that is specific to Rust's LLVM fork, we can use this in LLVM 6: /// Check whether the subtarget features are enabled/disabled as per /// the provided string, ignoring all other features. bool checkFeatures(StringRef FS) const; Now rustc using external LLVM can also have `target_feature`.
2018-03-27Use the actual discriminant instead of always choosing the dataful variantOliver Schneider-0/+7
2018-03-27Rollup merge of #49369 - petrochenkov:rprint, r=oli-obkkennytm-8/+0
Fix pretty-printing for raw identifiers
2018-03-27Fix pretty-printing for raw identifiersVadim Petrochenkov-8/+0
2018-03-26Fix missed i128 feature gatesMark Mansi-2/+2
2018-03-26Stabilize i128_typeMark Mansi-15/+5
2018-03-26Stabilize conservative_impl_traitTaylor Cramer-22/+9
2018-03-26Stabilize universal_impl_traitTaylor Cramer-14/+2
2018-03-25Auto merge of #49141 - gnzlbg:simd_select, r=alexcrichtonbors-0/+146
adds simd_select intrinsic The select SIMD intrinsic is used to select elements from two SIMD vectors using a mask: ```rust let mask = b8x4::new(true, false, false, true); let a = f32x4::new(1., 2., 3., 4.); let b = f32x4::new(5., 6., 7., 8.); assert_eq!(simd_select(mask, a, b), f32x4::new(1., 6., 7., 4.)); ``` The number of lanes between the mask and the vectors must match, but the vector width of the mask does not need to match that of the vectors. The mask is required to be a vector of signed integers. Note: this intrinsic will be exposed via `std::simd`'s vector masks - users are not expected to use it directly.
2018-03-25Rollup merge of #49299 - SimonSapin:ubiquity, r=nikomatsakiskennytm-5/+0
Stabilize the copy_closures and clone_closures features In addition to the `Fn*` family of traits, closures now implement `Copy` (and similarly `Clone`) if all of the captures do. Tracking issue: https://github.com/rust-lang/rust/issues/44490
2018-03-25Rollup merge of #49194 - Zoxc:unsafe-generator, r=cramertjkennytm-46/+50
Make resuming generators unsafe instead of the creation of immovable generators cc @withoutboats Fixes #47787
2018-03-25Rollup merge of #49162 - tmandry:stabilize-termination-trait, r=nikomatsakiskennytm-8/+1
Stabilize termination_trait, split out termination_trait_test For #48453. First time contribution, so I'd really appreciate any feedback on how this PR can be better. Not sure exactly what kind of documentation update is needed. If there is no PR to update the reference, I can try doing that this week as I have time.
2018-03-24Auto merge of #48482 - davidtwco:issue-47184, r=nikomatsakisbors-0/+1
NLL should identify and respect the lifetime annotations that the user wrote Part of #47184. r? @nikomatsakis
2018-03-23Test fixesAlex Crichton-0/+8
2018-03-23Merge branch '49001_epoch' of https://github.com/klnusbaum/rust into rollupAlex Crichton-2/+2
2018-03-23Merge branch 'master' of https://github.com/Lymia/rust into rollupAlex Crichton-0/+148
2018-03-23Rollup merge of #48624 - bdrewery:freebsd-posix-spawn, r=alexcrichtonAlex Crichton-0/+23
Command: Support posix_spawn() on FreeBSD/OSX/GNU Linux
2018-03-23Rollup merge of #48265 - SimonSapin:nonzero, r=KodrAusAlex Crichton-6/+5
Add 12 num::NonZero* types for primitive integers, deprecate core::nonzero RFC: https://github.com/rust-lang/rfcs/pull/2307 Tracking issue: ~~https://github.com/rust-lang/rust/issues/27730~~ https://github.com/rust-lang/rust/issues/49137 Fixes https://github.com/rust-lang/rust/issues/27730
2018-03-23Stabilize the copy_closures and clone_closures featuresSimon Sapin-5/+0
In addition to the `Fn*` family of traits, closures now implement `Copy` (and similarly `Clone`) if all of the captures do.
2018-03-22Added flag to disable user type assertion.David Wood-0/+1
2018-03-22Auto merge of #49210 - oli-obk:pango_crash, r=eddybbors-0/+27
Fix the conversion between bit representations and i128 representations fixes #49181 the `Discr` type now encodes the bit representation instead of `i128` or `u128` casted to `u128`. r? @eddyb
2018-03-22Rollup merge of #49117 - nivkner:fixme_fixup3, r=estebankkennytm-2/+1
address some FIXME whose associated issues were marked as closed part of #44366
2018-03-22Rollup merge of #49109 - SimonSapin:deprecate-asciiext, r=alexcrichtonkennytm-2/+0
Deprecate the AsciiExt trait in favor of inherent methods The trait and some of its methods are stable and will remain. Some of the newer methods are unstable and can be removed later. Fixes https://github.com/rust-lang/rust/issues/39658
2018-03-22Fix the conversion between bit representations and i128 representationsOliver Schneider-0/+27
2018-03-21Deprecate the AsciiExt trait in favor of inherent methodsSimon Sapin-2/+0
The trait and some of its methods are stable and will remain. Some of the newer methods are unstable and can be removed later. Fixes https://github.com/rust-lang/rust/issues/39658
2018-03-21Make resuming generators unsafe instead of the creation of immovable ↵John Kåre Alsaker-46/+50
generators. Fixes #47787
2018-03-20rename epoch to editionKurtis Nusbaum-2/+2
2018-03-20ignore emscripten in run-pass testgnzlbg-0/+2
2018-03-20Stabilize slice patterns without `..`Vadim Petrochenkov-40/+9
Merge `feature(advanced_slice_patterns)` into `feature(slice_patterns)`
2018-03-19Merge branch 'update-beta-freebsd' into freebsd-posix-spawnBryan Drewery-61/+1956
2018-03-19Stabilize termination_traitTyler Mandry-7/+0
This stabilizes `main` with non-() return types; see #48453.
2018-03-19Split out termination_trait_test feature gateTyler Mandry-1/+1
2018-03-19Auto merge of #49095 - alexcrichton:debug-asmjs, r=kennytmbors-3/+24
Try to reduce amount of time on the asmjs builder This PR has two commits for two separate strategies: * First it disables optimizations for all tests, hopefully saving time by not optimizing the test code. This caused a number of run-pass tests to fail which are switched to being ignored here. * Next it disables a number of test suites which aren't asm.js specific and already run elsewhere cc #48826