summary refs log tree commit diff
path: root/src/test/compile-fail
AgeCommit message (Collapse)AuthorLines
2015-01-08auto merge of #20760 : alexcrichton/rust/rollup, r=alexcrichtonbors-2076/+2220
2015-01-08rollup merge of #20757: nikomatsakis/issue-20624-assoc-types-coherenceAlex Crichton-0/+59
2015-01-08rollup merge of #20754: nikomatsakis/int-featureAlex Crichton-1955/+2035
Conflicts: src/test/compile-fail/borrowck-move-out-of-overloaded-auto-deref.rs src/test/compile-fail/issue-2590.rs src/test/compile-fail/lint-stability.rs src/test/compile-fail/slice-mut-2.rs src/test/compile-fail/std-uncopyable-atomics.rs
2015-01-08rollup merge of #20751: nikomatsakis/issue-20232Alex Crichton-32/+79
Issue #20232. Fun. r? @eddyb you prob know this system best
2015-01-08rollup merge of #20740: FlaPer87/remove-opt-out-copyAlex Crichton-44/+0
[breaking-change] code using this feature will break.
2015-01-08Adjust tests to be clearer about the type that results from a shift expression.Niko Matsakis-0/+4
2015-01-08Normalize types in impls, add test for coherence failure.Niko Matsakis-0/+59
Fixes #20624.
2015-01-08Wrap long lineNiko Matsakis-1/+3
2015-01-08Modify lifetime-infereence-give-expl-lifetime-param-3 to use a shorterNiko Matsakis-5/+5
type name so that messages do not wrap.
2015-01-08Allow shift operator to take any integral type (and add a test).Niko Matsakis-0/+39
2015-01-08Accommodate the "int literal is too large" error message currently embedded ↵Felix S. Klock II-3/+3
in rustc.
2015-01-08Test fixes.Huon Wilson-15/+15
2015-01-08Update compile-fail tests to use is/us, not i/u.Huon Wilson-379/+379
2015-01-08Update compile fail tests to use usize.Huon Wilson-325/+325
2015-01-08Update compile fail tests to use isize.Huon Wilson-1324/+1324
2015-01-08Add a warning feature gate for int/uint in types and i/u suffixes.Huon Wilson-0/+35
2015-01-08Ignore extra error from test for nowManish Goregaokar-1/+1
2015-01-08Add new test for #20232.Niko Matsakis-0/+47
2015-01-08Update the "English-language" to-string function of a `cmt` to useNiko Matsakis-32/+32
more modern terminology and update tests accordingly.
2015-01-08Remove the deprecated opt_out_copy featureFlavio Percoco-44/+0
2015-01-08Improvements to feature stagingBrian Anderson-45/+47
This gets rid of the 'experimental' level, removes the non-staged_api case (i.e. stability levels for out-of-tree crates), and lets the staged_api attributes use 'unstable' and 'deprecated' lints. This makes the transition period to the full feature staging design a bit nicer.
2015-01-07rollup merge of #20731: nick29581/assoc-inherantAlex Crichton-0/+19
2015-01-07Test fixes and rebase conflictsAlex Crichton-103/+167
2015-01-08Forbid associated items in inherent implsNick Cameron-0/+19
Closes #20359
2015-01-07rollup merge of #20723: pnkfelix/feature-gate-box-syntaxAlex Crichton-0/+63
Conflicts: src/compiletest/compiletest.rs src/libcollections/lib.rs src/libserialize/lib.rs src/libsyntax/feature_gate.rs
2015-01-08fallout: part of changes to compile-fail tests. (follows same pattern as ↵Felix S. Klock II-0/+9
prior two commits.)
2015-01-07rollup merge of #20706: ↵Alex Crichton-0/+7
nikomatsakis/assoc-types-projections-in-structs-issue-20470 Conflicts: src/librustc_trans/trans/expr.rs
2015-01-07rollup merge of #20728: huonw/type-param-shadowingAlex Crichton-0/+36
Conflicts: src/librustc_typeck/check/wf.rs
2015-01-07rollup merge of #20631: huon/no-drop-and-copyAlex Crichton-1/+31
2015-01-08Prohibit type parameter shadowing with a clunky hammer.Huon Wilson-0/+36
This is a [breaking-change]. Change impl<T> Foo<T> { fn bar<T>(... to (for example) impl<T> Foo<T> { fn bar<U>(... Per RFC 459. Closes #19390.
2015-01-07rollup merge of #20721: japaric/snapAlex Crichton-18/+4
Conflicts: src/libcollections/vec.rs src/libcore/fmt/mod.rs src/librustc/lint/builtin.rs src/librustc/session/config.rs src/librustc_trans/trans/base.rs src/librustc_trans/trans/context.rs src/librustc_trans/trans/type_.rs src/librustc_typeck/check/_match.rs src/librustdoc/html/format.rs src/libsyntax/std_inject.rs src/libsyntax/util/interner.rs src/test/compile-fail/mut-pattern-mismatched.rs
2015-01-07Update compile-fail test with new message that is generated as aNiko Matsakis-0/+7
result of using `ty::type_is_sized`
2015-01-07rollup merge of #20726: dgrunwald/require-parens-for-chained-comparisonAlex Crichton-1/+27
[Rendered RFC](https://github.com/rust-lang/rfcs/blob/master/text/0558-require-parentheses-for-chained-comparisons.md)
2015-01-07rollup merge of #20722: alexcrichton/audit-showAlex Crichton-5/+5
Conflicts: src/libcollections/vec.rs src/libcore/fmt/mod.rs src/librustdoc/html/format.rs
2015-01-07rollup merge of #20708: aturon/new-int-modulesAlex Crichton-1/+1
Conflicts: src/libserialize/lib.rs
2015-01-07rollup merge of #20696: reem/unsized-typeidAlex Crichton-0/+33
This removes the needlessly constricting bound on `intrinsics::type_Id` and `TypeId::of`. Also fixes an ICE where using bounds on type parameters in extern blocks fails to resolve the used traits.
2015-01-07rollup merge of #20688: jroesch/reject-non-param-bounds-followupAlex Crichton-8/+10
This is a follow up to my recent PR. r? @nikomatsakis
2015-01-07rollup merge of #20680: nick29581/target-wordAlex Crichton-4/+4
Closes #20421 [breaking-change] r? @brson
2015-01-08RFC 558: Require parentheses for chained comparisonsDaniel Grunwald-1/+27
Fixes #20724.
2015-01-07fix the `&mut _` patternsJorge Aparicio-3/+3
2015-01-08Remove the unneeded Sized bound on TypeId creationJonathan Reem-0/+33
This bound is probably unintentional and is unnecessarily constricting. To facilitate this change, it was also necessary to modify resolve to recurse on and resolve type parameters in extern { } blocks. This fixes an ICE when using bounds on type parameters during the declaration of intrinsics. This also adds tests for TypeId on both Sized and Unsized tests as well as a test for using type parameters and bounds in extern { } blocks.
2015-01-08Test that box syntax, both in expressions and patterns, is caught byFelix S. Klock II-0/+37
feature gate net. fix typo in my feature-gate-box-expr.rs test.
2015-01-08compile-fail tests: Add feature attributes to enable box pat/expr syntax in ↵Felix S. Klock II-0/+17
various tests.
2015-01-07remove some `slicing_syntax` feature gatesJorge Aparicio-12/+0
2015-01-07Preliminary feature stagingBrian Anderson-0/+22
This partially implements the feature staging described in the [release channel RFC][rc]. It does not yet fully conform to the RFC as written, but does accomplish its goals sufficiently for the 1.0 alpha release. It has three primary user-visible effects: * On the nightly channel, use of unstable APIs generates a warning. * On the beta channel, use of unstable APIs generates a warning. * On the beta channel, use of feature gates generates a warning. Code that does not trigger these warnings is considered 'stable', modulo pre-1.0 bugs. Disabling the warnings for unstable APIs continues to be done in the existing (i.e. old) style, via `#[allow(...)]`, not that specified in the RFC. I deem this marginally acceptable since any code that must do this is not using the stable dialect of Rust. Use of feature gates is itself gated with the new 'unstable_features' lint, on nightly set to 'allow', and on beta 'warn'. The attribute scheme used here corresponds to an older version of the RFC, with the `#[staged_api]` crate attribute toggling the staging behavior of the stability attributes, but the user impact is only in-tree so I'm not concerned about having to make design changes later (and I may ultimately prefer the scheme here after all, with the `#[staged_api]` crate attribute). Since the Rust codebase itself makes use of unstable features the compiler and build system to a midly elaborate dance to allow it to bootstrap while disobeying these lints (which would otherwise be errors because Rust builds with `-D warnings`). This patch includes one significant hack that causes a regression. Because the `format_args!` macro emits calls to unstable APIs it would trigger the lint. I added a hack to the lint to make it not trigger, but this in turn causes arguments to `println!` not to be checked for feature gates. I don't presently understand macro expansion well enough to fix. This is bug #20661. Closes #16678 [rc]: https://github.com/rust-lang/rfcs/blob/master/text/0507-release-channels.md
2015-01-07std: Tweak String implementationsAlex Crichton-5/+5
This commit performs a pass over the implementations of the new `String` trait in the formatting module. Some implementations were removed as a conservative move pending an upcoming convention about `String` implementations, and some were added in order to retain consistency across the libraries. Specifically: * All "smart pointers" implement `String` now, adding missing implementations for `Arc` and `Rc`. * The `Vec<T>` and `[T]` types no longer implement `String`. * The `*const T` and `*mut T` type no longer implement `String`. * The `()` type no longer implements `String`. * The `Path` type's `Show` implementation does not surround itself with `Path {}` (a minor tweak). All implementations of `String` in this PR were also marked `#[stable]` to indicate that the types will continue to implement the `String` trait regardless of what it looks like.
2015-01-08Require that types cannot implement both Drop and Copy.Huon Wilson-1/+31
Opt-in built-in traits allowed one to explicitly implement both `Drop` and `Copy` for a type. This can theoretically make some sense, but the current implementation means it is codegened totally incorrectly which can lead to memory unsafety, so this feature is disabled for now. Fixes #20126.
2015-01-07register new snapshotsJorge Aparicio-4/+2
2015-01-07Update references to old snapshotAaron Turon-1/+1
2015-01-08Rename `target_word_size` to `target_pointer_width`Nick Cameron-4/+4
Closes #20421 [breaking-change]