| Age | Commit message (Collapse) | Author | Lines |
|
Save quite a few syscalls and avoiding pushing in a loop.
|
|
Found with `git grep -P '\b([a-z]+)\s+\1\b'`
|
|
|
|
address some FIXME whose associated issues were marked as closed
part of #44366
|
|
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))
|
|
r=Mark-Simulacrum
Fix compiletest `trim` deprecation warnings
None
|
|
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
|
|
|
|
|
|
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.
|
|
|
|
|
|
There is a FIXME inside that function and I think the unit tests can be
helpful to resolve it without breaking anything else.
|
|
|
|
thumbv7neon-unknown-linux-gnueabihf
These two targets enable both thumb-mode and NEON for ARMv7 CPUs.
|
|
* Update bootstrap compiler
* Update version to 1.33.0
* Remove some `#[cfg(stage0)]` annotations
Actually updating the version number is blocked on updating Cargo
|
|
Various minor/cosmetic improvements to code
r? @Centril 😄
|
|
|
|
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.
|
|
Utilize `?` instead of `return None`.
None
|
|
|
|
|
|
|
|
|
|
|
|
use String::from() instead of format!() macro to construct Strings.
|
|
|
|
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.
|
|
|
|
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
|
|
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.
|
|
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
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
|
|
|
|
(It seems only `compile-fail-fulldeps/` exercises this functionality,
unfortunately.)
|
|
`run_{rpass,rfail,cfail}_test`.
(Also, maybe we should revise the names to make it clear that sometimes "cfail" means "cpass"...)
|
|
(I did not notice earlier that `ParseFail` delegates to `fn run_cfail_test`.)
|
|
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.)
|
|
(just like how they behaved under previous run-pass semantics)
|
|
|
|
|
|
|
|
|
|
*have* to.
This allows us to test expansion of files that use `mod foo;` syntax.
|