about summary refs log tree commit diff
path: root/src/tools/compiletest
AgeCommit message (Collapse)AuthorLines
2019-01-06slightly optimize compiletest test collectionAndy Russell-34/+27
Save quite a few syscalls and avoiding pushing in a loop.
2019-01-03Fix repeated word typosWiktor Kuchta-1/+1
Found with `git grep -P '\b([a-z]+)\s+\1\b'`
2018-12-25Remove licensesMark Rousskov-88/+0
2018-12-25Auto merge of #56962 - nivkner:fixme_fixup4, r=pnkfelixbors-18/+18
address some FIXME whose associated issues were marked as closed part of #44366
2018-12-22Auto merge of #57063 - kennytm:rollup, r=kennytmbors-10/+10
Rollup of 25 pull requests Successful merges: - #56802 (Add DoubleEndedIterator::nth_back) - #56909 (static eval: Do not ICE on layout size overflow) - #56914 (Ignore ui/target-feature-gate on sparc, sparc64, powerpc, powerpc64 and powerpc64le) - #56919 (Remove a wrong multiplier on relocation offset computation) - #56933 (Add --progress to git submodule commands in x.py) - #56936 (rename div_euc -> div_euclid, and mod_euc -> rem_euclid) - #56941 (deny intra-doc link resolution failures in libstd) - #56945 (Fix rustdoc-js tests) - #56967 (Replace current crate's searchIndex when regenerating) - #56970 (Mem uninit doc ptr drop) - #56973 (make basic CTFE tracing available on release builds) - #56979 (Adding unwinding support for x86_64_fortanix_unknown_sgx target.) - #56981 (miri: allocation is infallible) - #56984 (A few tweaks to dropck_outlives) - #56989 (Fix compiletest `trim` deprecation warnings) - #56992 (suggest similar lint names for unknown lints) - #57002 (Stabilize Vec(Deque)::resize_with) - #57011 (rustdoc: add new CLI flag to load static files from a different location) - #57027 (Optimize away a move) - #57034 (Inline tweaks) - #57039 (Update migrate warning wording.) - #57040 (Fix feature gate to point to 1.32.0 for `path_from_str`) - #57049 (Stabilize #[repr(packed(N))]) - #57050 (Fixed typo in HashMap documentation) - #57052 (Fix stabilization version numbers (exhaustive_integer_patterns + macro_literal_matcher))
2018-12-23Rollup merge of #56989 - phansch:fix_compiletest_trim_deprecations, ↵kennytm-10/+10
r=Mark-Simulacrum Fix compiletest `trim` deprecation warnings None
2018-12-22Auto merge of #56680 - vakaras:issue56280, r=nagisabors-10/+16
Use compiletest timestamp to check if the tests should be rerun. An attempt to fix #56280 by checking if timestamps of compile test files are older than the timestamp of the stamp file. ?r nagisa
2018-12-19FIXME(9639) remove fixme and accept non-utf8 paths in compiletestNiv Kaminer-18/+18
2018-12-19Fix compiletest `trim` deprecation warningsPhilipp Hansch-10/+10
2018-12-19Rollup merge of #56947 - hsivonen:neon, r=alexcrichtonPietro Albini-1/+4
Add targets thumbv7neon-linux-androideabi and thumbv7neon-unknown-linux-gnueabihf These two targets enable both thumb-mode and NEON for ARMv7 CPUs. This another attempt at #49902, which cannot be reopened. Between that PR and this one, some subrepos with C code whose build systems were failing went away.
2018-12-17Address the pull request review comments.Vytautas Astrauskas-14/+12
2018-12-17Use compiletest timestamp to check if the tests should be rerun.Vytautas Astrauskas-10/+18
2018-12-15compiletest: unit test parse_normalization_stringPhilipp Hansch-0/+26
There is a FIXME inside that function and I think the unit tests can be helpful to resolve it without breaking anything else.
2018-12-15compiletest: Add some compiletest::util unittestsPhilipp Hansch-0/+28
2018-12-13Add targets thumbv7neon-linux-androideabi and ↵Henri Sivonen-1/+4
thumbv7neon-unknown-linux-gnueabihf These two targets enable both thumb-mode and NEON for ARMv7 CPUs.
2018-12-12Bump to 1.33.0Alex Crichton-1/+5
* Update bootstrap compiler * Update version to 1.33.0 * Remove some `#[cfg(stage0)]` annotations Actually updating the version number is blocked on updating Cargo
2018-12-08Auto merge of #56578 - alexreg:cosmetic-1, r=alexregbors-2/+2
Various minor/cosmetic improvements to code r? @Centril 😄
2018-12-07Various minor/cosmetic improvements to codeAlexander Regueiro-2/+2
2018-12-07use top level `fs` functions where appropriateAndy Russell-56/+22
This commit replaces many usages of `File::open` and reading or writing with `fs::read_to_string`, `fs::read` and `fs::write`. This reduces code complexity, and will improve performance for most reads, since the functions allocate the buffer to be the size of the file. I believe that this commit will not impact behavior in any way, so some matches will check the error kind in case the file was not valid UTF-8. Some of these cases may not actually care about the error.
2018-12-05Rollup merge of #56119 - frewsxcv:frewsxcv-option-carrier, r=TimNNPietro Albini-20/+5
Utilize `?` instead of `return None`. None
2018-12-04Utilize `?` instead of `return None`.Corey Farwell-20/+5
2018-12-04Report failing tests without `//~ ERROR` commentsOliver Scherer-6/+8
2018-11-30compiletest: don't pass -Clinker when `// force-host` was requested.Eduard-Mihai Burtescu-4/+4
2018-11-11Fix typos.Bruce Mitchener-1/+1
2018-11-08Fix compiletest support for wasm32-unknown-emscriptenNikita Popov-4/+2
2018-11-01Rollup merge of #55522 - matthiaskrgr:no_format, r=zackmdavisPietro Albini-1/+1
use String::from() instead of format!() macro to construct Strings.
2018-10-31use String::from() instead of format!() macro to construct Strings.Matthias Krüger-1/+1
2018-10-30Add legacy debuginfo testsTom Tromey-0/+23
The enum debuginfo patch includes a legacy mode that is used when building against LLVM 5 and LLVM 6. The main enum debuginfo tests have been updated to rely on the new approach and a new-enough gdb. This patch makes a copy of these tests so that the fallback mode will continue to be tested. Note that nil-enum.rs is not copied; it seemed not to provide enough value to bother. A new header directive is added, "ignore-llvm-version". I will send a patch to update the rustc documentation once this lands.
2018-10-21Remove the parse-fail test suiteVadim Petrochenkov-8/+5
2018-10-18Rollup merge of #54964 - tromey:run-both-gdb-and-lldb-tests, r=nikomatsakiskennytm-47/+176
Run both lldb and gdb tests Currently lldb tests are run only on macOS, and gdb tests are only run elsewhere. This patch changes this to run tests depending on what is available. One test is changed, as it was previously marked as failing on macOS, whereas really it is a generic failure with lldb. Closes #54721
2018-10-17Change NLL compare mode to borrowck=migrate.David Wood-1/+1
This commit changes the NLL compare mode to pass `-Z borrowck=migrate` rather than `-Z borrowck=nll` to better test what will be deployed. It does not include the test output updates, as separation of these commits makes reviewing simpler.
2018-10-10Run both lldb and gdb testsTom Tromey-47/+176
Currently lldb tests are run only on macOS, and gdb tests are only run elsewhere. This patch changes this to run tests depending on what is available. One test is changed, as it was previously marked as failing on macOS, whereas really it is a generic failure with lldb. Closes #54721
2018-10-08Run debuginfo tests against rust-enabled lldb, when possibleTom Tromey-7/+44
If the rust-enabled lldb was built, then use it when running the debuginfo tests. Updating the lldb submodule was necessary as this needed a way to differentiate the rust-enabled lldb, so I added a line to the --version output. This adds compiletest commands to differentiate between the rust-enabled and non-rust-enabled lldb, as is already done for gdb. A new "rust-lldb" header directive is also added, but not used in this patch; I plan to use it in #54004. This updates all the tests.
2018-09-29Rollup merge of #54645 - tromey:android-gdb-version, r=alexcrichtonkennytm-203/+225
Compute Android gdb version in compiletest compiletest has special code for running gdb for Android targets. In particular it computes a different path to gdb. However, this gdb is not used for the version test, which results in some tests being run when they should not be. You can see this in #54004. This patch moves the special case to analyze_gdb and a new helper function to decide whether the case applies. This causes the version check to work properly. Note that the bulk of the runtest.rs change is just reindentation caused by moving from a "match" to an "if" -- but there is a (small) change buried in there.
2018-09-29Rollup merge of #54567 - tromey:paths-in-stamp-hashes, r=Mark-Simulacrumkennytm-0/+13
Include path in stamp hash for debuginfo tests The debuginfo tests are exposed to the environment in a couple of ways: the path to the gdb executable matters, as does the Python path used when loading lldb. This patch incorporates these paths into the hash that is written to the stamp file, so that changing the path will cause the tests to be re-run.
2018-09-28Compute Android gdb version in compiletestTom Tromey-203/+225
compiletest has special code for running gdb for Android targets. In particular it computes a different path to gdb. However, this gdb is not used for the version test, which results in some tests being run when they should not be. You can see this in #54004. This patch moves the special case to analyze_gdb and a new helper function to decide whether the case applies. This causes the version check to work properly. Note that the bulk of the runtest.rs change is just reindentation caused by moving from a "match" to an "if" -- but there is a (small) change buried in there.
2018-09-27Auto merge of #52319 - tinco:issue_12590, r=pnkfelixbors-5/+25
Track whether module declarations are inline (fixes #12590) To track whether module declarations are inline I added a field `inline: bool` to `ast::Mod`. The main use case is for pretty to know whether it should render the items associated with the module, but perhaps there are use cases for this information to not be forgotten in the AST.
2018-09-25Include path in stamp hash for debuginfo testsTom Tromey-0/+13
The debuginfo tests are exposed to the environment in a couple of ways: the path to the gdb executable matters, as does the Python path used when loading lldb. This patch incorporates these paths into the hash that is written to the stamp file, so that changing the path will cause the tests to be re-run.
2018-09-21Added comment above `Mode::RunPass` noting that it now behaves like `Mode::Ui`.Felix S. Klock II-0/+1
2018-09-21Make the `// skip-codegen` property apply to ui tests too.Felix S. Klock II-3/+4
2018-09-21you can have `// compile-pass` markers in headers of `compile-fail/` tests.Felix S. Klock II-1/+1
(It seems only `compile-fail-fulldeps/` exercises this functionality, unfortunately.)
2018-09-21Similar to above, failed to notice that `Mode::Incremental` delegates to ↵Felix S. Klock II-0/+12
`run_{rpass,rfail,cfail}_test`. (Also, maybe we should revise the names to make it clear that sometimes "cfail" means "cpass"...)
2018-09-21Mark `ParseFail` as tests that are not expected to compile.Felix S. Klock II-1/+1
(I did not notice earlier that `ParseFail` delegates to `fn run_cfail_test`.)
2018-09-21Provide way for ui tests to opt out of having their output checked.Felix S. Klock II-2/+28
Namely, this adds support for: * `// dont-check-compiler-stdout`, and * `// dont-check-compiler-stderr`. Obviously almost all ui tests wont want to opt into these, since the whole point of a ui test is to check the compiler ui. However, since this PR is converting run-pass into (another set of) ui tests, these header options make sense in that context. (Also this puts us into a better position for eventually turning *every* test suite into a ui test suite, by making ui-ness the default and forcing tests to opt out explicitly.)
2018-09-21Support `// skip-codegen` in header of ui testsFelix S. Klock II-1/+1
(just like how they behaved under previous run-pass semantics)
2018-09-21Make `src/test/run-pass/` act like an alternative `ui` test suite.Felix S. Klock II-6/+22
2018-09-12Really make CGU names unique across crates.Michael Woerister-13/+21
2018-09-10refactor so that it's no longer possible to call print_source incorrectlyTinco Andringa-11/+14
2018-09-10dont pass in src if we are not reading from stdin in compiletestTinco Andringa-1/+6
2018-09-10Update `compiletest` so that the pretty tests only read from stdin when they ↵Felix S. Klock II-4/+16
*have* to. This allows us to test expansion of files that use `mod foo;` syntax.