about summary refs log tree commit diff
path: root/src/compiletest
AgeCommit message (Collapse)AuthorLines
2014-11-17Switch to purely namespaced enumsSteven Fackler-1/+4
This breaks code that referred to variant names in the same namespace as their enum. Reexport the variants in the old location or alter code to refer to the new locations: ``` pub enum Foo { A, B } fn main() { let a = A; } ``` => ``` pub use self::Foo::{A, B}; pub enum Foo { A, B } fn main() { let a = A; } ``` or ``` pub enum Foo { A, B } fn main() { let a = Foo::A; } ``` [breaking-change]
2014-11-17Fix fallout from coercion removalNick Cameron-8/+8
2014-11-16Move FromStr to core::strBrendan Zabarauskas-7/+5
2014-11-05Fixed other tests to pass make checkVladimir Matveev-1/+1
2014-11-01Remove unnecessary allocationsJorge Aparicio-1/+1
2014-10-31debuginfo: Make GDB tests use line breakpoints like done in LLDB tests.Michael Woerister-1/+12
On some Windows versions of GDB this is more stable than setting breakpoints via function names.
2014-10-30collections: Enable IndexMut for some collectionsAlex Crichton-1/+1
This commit enables implementations of IndexMut for a number of collections, including Vec, RingBuf, SmallIntMap, TrieMap, TreeMap, and HashMap. At the same time this deprecates the `get_mut` methods on vectors in favor of using the indexing notation. cc #18424
2014-10-29Rename fail! to panic!Steve Klabnik-13/+13
https://github.com/rust-lang/rfcs/pull/221 The current terminology of "task failure" often causes problems when writing or speaking about code. You often want to talk about the possibility of an operation that returns a Result "failing", but cannot because of the ambiguity with task failure. Instead, you have to speak of "the failing case" or "when the operation does not succeed" or other circumlocutions. Likewise, we use a "Failure" header in rustdoc to describe when operations may fail the task, but it would often be helpful to separate out a section describing the "Err-producing" case. We have been steadily moving away from task failure and toward Result as an error-handling mechanism, so we should optimize our terminology accordingly: Result-producing functions should be easy to describe. To update your code, rename any call to `fail!` to `panic!` instead. Assuming you have not created your own macro named `panic!`, this will work on UNIX based systems: grep -lZR 'fail!' . | xargs -0 -l sed -i -e 's/fail!/panic!/g' You can of course also do this by hand. [breaking-change]
2014-10-26debuginfo: Set RUST_TEST_TASKS to 1 again for LLDB testsMichael Woerister-1/+11
2014-10-23Error if we should be able to Valgrind but can'tNick Cameron-3/+14
2014-10-23Add run-pass-valgrind testsNick Cameron-3/+32
Closes #16914
2014-10-22debuginfo: Let LLDB tests run in parallel again since our min-supported ↵Michael Woerister-11/+1
version has no problems with that.
2014-10-22debuginfo: Make some path LLDB-related paths in the test runner absolute to ↵Michael Woerister-4/+21
help the build bots.
2014-10-16auto merge of #17947 : lukemetz/rust/master, r=aturonbors-1/+1
AsciiStr::to_lower is now AsciiStr::to_lowercase and AsciiStr::to_upper is AsciiStr::to_uppercase to match Ascii trait. Part of issue #17790. This is my first pull request so let me know if anything is incorrect. Thanks! [breaking-changes]
2014-10-15Renamed AsciiStr::to_lower and AsciiStr::to_upper=-1/+1
Now AsciiStr::to_lowercase and AsciiStr::to_uppercase to match Ascii trait. [breaking-change]
2014-10-13Clean up rustc warnings.NODA, Kai-17/+11
compiletest: compact "linux" "macos" etc.as "unix". liballoc: remove a superfluous "use". libcollections: remove invocations of deprecated methods in favor of their suggested replacements and use "_" for a loop counter. libcoretest: remove invocations of deprecated methods; also add "allow(deprecated)" for testing a deprecated method itself. libglob: use "cfg_attr". libgraphviz: add a test for one of data constructors. libgreen: remove a superfluous "use". libnum: "allow(type_overflow)" for type cast into u8 in a test code. librustc: names of static variables should be in upper case. libserialize: v[i] instead of get(). libstd/ascii: to_lowercase() instead of to_lower(). libstd/bitflags: modify AnotherSetOfFlags to use i8 as its backend. It will serve better for testing various aspects of bitflags!. libstd/collections: "allow(deprecated)" for testing a deprecated method itself. libstd/io: remove invocations of deprecated methods and superfluous "use". Also add #[test] where it was missing. libstd/num: introduce a helper function to effectively remove invocations of a deprecated method. libstd/path and rand: remove invocations of deprecated methods and superfluous "use". libstd/task and libsync/comm: "allow(deprecated)" for testing a deprecated method itself. libsync/deque: remove superfluous "unsafe". libsync/mutex and once: names of static variables should be in upper case. libterm: introduce a helper function to effectively remove invocations of a deprecated method. We still see a few warnings about using obsoleted native::task::spawn() in the test modules for libsync. I'm not sure how I should replace them with std::task::TaksBuilder and native::task::NativeTaskBuilder (dependency to libstd?) Signed-off-by: NODA, Kai <nodakai@gmail.com>
2014-10-11Fix cfg warnings in compiletestMichael Gehring-8/+8
2014-10-08debuginfo: Add LLDB version handling to test infrastructure.Michael Woerister-2/+89
2014-10-07Put slicing syntax behind a feature gate.Nick Cameron-1/+1
[breaking-change] If you are using slicing syntax you will need to add #![feature(slicing_syntax)] to your crate.
2014-10-07Use slice syntax instead of slice_to, etc.Nick Cameron-1/+1
2014-10-06Rename the file permission statics in std::io to be uppercaseP1start-1/+1
For example, this renames `GroupRWX` to `GROUP_RWX`, and deprecates the old name. Code using these statics should be updated accordingly.
2014-10-02Revert "Use slice syntax instead of slice_to, etc."Aaron Turon-1/+1
This reverts commit 40b9f5ded50ac4ce8c9323921ec556ad611af6b7.
2014-10-02Revert "Put slicing syntax behind a feature gate."Aaron Turon-1/+1
This reverts commit 95cfc35607ccf5f02f02de56a35a9ef50fa23a82.
2014-10-02Put slicing syntax behind a feature gate.Nick Cameron-1/+1
[breaking-change] If you are using slicing syntax you will need to add #![feature(slicing_syntax)] to your crate.
2014-10-02Use slice syntax instead of slice_to, etc.Nick Cameron-1/+1
2014-10-01Remove all use of librustuvAaron Turon-10/+0
2014-09-30librustc: Forbid `..` in range patterns.Patrick Walton-1/+1
This breaks code that looks like: match foo { 1..3 => { ... } } Instead, write: match foo { 1...3 => { ... } } Closes #17295. [breaking-change]
2014-09-23Deal with the fallout of string stabilizationAlex Crichton-1/+2
2014-09-21Fix fallout from Vec stabilizationAlex Crichton-29/+30
2014-09-17Add a forbid-output property in cfail testsKeegan McAllister-13/+42
2014-09-16Fallout from renamingAaron Turon-6/+6
2014-09-14auto merge of #17163 : pcwalton/rust/impls-next-to-struct, r=alexcrichtonbors-0/+1
type they provide an implementation for. This breaks code like: mod foo { struct Foo { ... } } impl foo::Foo { ... } Change this code to: mod foo { struct Foo { ... } impl Foo { ... } } Closes #17059. RFC #155. [breaking-change] r? @brson
2014-09-13librustc: Forbid inherent implementations that aren't adjacent to thePatrick Walton-0/+1
type they provide an implementation for. This breaks code like: mod foo { struct Foo { ... } } impl foo::Foo { ... } Change this code to: mod foo { struct Foo { ... } impl Foo { ... } } Additionally, if you used the I/O path extension methods `stat`, `lstat`, `exists`, `is_file`, or `is_dir`, note that these methods have been moved to the the `std::io::fs::PathExtensions` trait. This breaks code like: fn is_it_there() -> bool { Path::new("/foo/bar/baz").exists() } Change this code to: use std::io::fs::PathExtensions; fn is_it_there() -> bool { Path::new("/foo/bar/baz").exists() } Closes #17059. RFC #155. [breaking-change]
2014-09-10Escape backslashes in debugger scripts.Vadim Chugunov-3/+3
2014-09-05run optimization and codegen on worker threadsStuart Pernsteiner-9/+4
Refactor the code in `llvm::back` that invokes LLVM optimization and codegen passes so that it can be called from worker threads. (Previously, it used `&Session` extensively, and `Session` is not `Share`.) The new code can handle multiple compilation units, by compiling each unit to `crate.0.o`, `crate.1.o`, etc., and linking together all the `crate.N.o` files into a single `crate.o` using `ld -r`. The later linking steps can then be run unchanged. The new code preserves the behavior of `--emit`/`-o` when building a single compilation unit. With multiple compilation units, the `--emit=asm/ir/bc` options produce multiple files, so combinations like `--emit=ir -o foo.ll` will not actually produce `foo.ll` (they instead produce several `foo.N.ll` files). The new code supports `-Z lto` only when using a single compilation unit. Compiling with multiple compilation units and `-Z lto` will produce an error. (I can't think of any good reason to do such a thing.) Linking with `-Z lto` against a library that was built as multiple compilation units will also fail, because the rlib does not contain a `crate.bytecode.deflate` file. This could be supported in the future by linking together the `crate.N.bc` files produced when compiling the library into a single `crate.bc`, or by making the LTO code support multiple `crate.N.bytecode.deflate` files.
2014-08-30auto merge of #16322 : michaelwoerister/rust/gdb-pretty, r=alexcrichtonbors-28/+183
Also extends the autotest framework to let a test case choose if pretty printing should be enabled.
2014-08-28Fallout from stabilizing core::optionAaron Turon-5/+5
2014-08-27debuginfo: Improve GDB version handling in compiletest toolMichael Woerister-6/+18
2014-08-27debuginfo: Emit different autotest debugger scripts depending on GDB version.Michael Woerister-29/+110
2014-08-27debuginfo: Add GDB pretty printers for structs and enums.Michael Woerister-1/+2
2014-08-27debuginfo: Allow to activate GDB pretty printers in autotests.Michael Woerister-6/+67
2014-08-23Remove stage0 attributes.Vadim Chugunov-9/+0
2014-08-15auto merge of #16435 : vadimcn/rust/windows, r=pcwaltonbors-11/+21
Using "win32" to mean "Windows" is confusing, especially now, that Rust supports win64 builds. Let's call spade a spade.
2014-08-14auto merge of #16332 : brson/rust/slicestab, r=aturonbors-1/+1
This implements some of the recommendations from https://github.com/rust-lang/meeting-minutes/blob/master/Meeting-API-review-2014-08-06.md. Explanation in commits.
2014-08-13core: Change the argument order on splitn and rsplitn for strs.Brian Anderson-1/+1
This makes it consistent with the same functions for slices, and allows the search closure to be specified last. [breaking-change]
2014-08-13Fix compiletest to use DurationBrian Anderson-1/+2
2014-08-12Replace #[cfg(target_os = "win32")] with #[cfg(target_os = "windows")]Vadim Chugunov-11/+21
2014-08-01Fix misspelled comments.Joseph Crail-3/+3
2014-07-31auto merge of #16073 : mneumann/rust/dragonfly2, r=alexcrichtonbors-0/+3
Not included are two required patches: * LLVM: segmented stack support for DragonFly [1] * jemalloc: simple configure patches [1]: http://reviews.llvm.org/D4705
2014-07-31Fix test suite for DragonFlyMichael Neumann-0/+3