Commit graph

2479 commits

Author SHA1 Message Date
Ralf Jung
4eeaa92366 update miri 2020-02-07 15:04:44 +01:00
Mark Mansi
5e086c842f some cleanup/fixes 2020-02-03 13:45:46 -06:00
mark
0c0c31b11c implement proper linkchecker hardening 2020-02-03 10:44:23 -06:00
bors
f43c34a134 Auto merge of #68774 - RalfJung:miri, r=RalfJung
bump Miri

Fixes https://github.com/rust-lang/rust/issues/68757

Cc @oli-obk r? @ghost
2020-02-02 16:58:49 +00:00
Ralf Jung
8c5bec103f bump Miri 2020-02-02 14:51:30 +01:00
Mazdak Farrokhzad
3a7f1edd81
Rollup merge of #68760 - Tyg13:compile_fail_ui_test, r=Centril
Issue error on `compile-fail` header in UI test

Fixes #68732

r? @Centril
2020-02-02 14:15:49 +01:00
Tyler Lanphear
f6c3894724 compiletest: error if compile-fail header in ui test. 2020-02-02 02:08:30 -05:00
Yuki Okushi
632d75e057 Update Clippy 2020-02-02 08:38:28 +09:00
Dylan DPC
4af33a9c26
Rollup merge of #68626 - Zoxc:termize, r=estebank
Use termize instead of term_size

`termize` is a fork of `term_size` which uses `winapi` 0.3 instead of 0.2. This is a step towards removing the `winapi` 0.2 dependency.

r? @Mark-Simulacrum
2020-01-30 01:46:43 +01:00
Yuki Okushi
0464692bb3 Update Clippy 2020-01-29 18:41:09 +09:00
John Kåre Alsaker
b0b11d31a2 Use termize instead of term_size 2020-01-29 01:13:48 +01:00
bors
ac2f3fa41a Auto merge of #68533 - tmiasko:compiletest, r=nikomatsakis
compiletest: Unit tests for `EarlyProps` (+ small cleanup)

* Parse `EarlyProps` from a reader
* Add unit tests for `EarlyProps`
* Remove unused `llvm-cxxflags` option
* Remove unnecessary memory allocations in `iter_header`
* Update mode list displayed in `--help`
2020-01-28 16:25:35 +00:00
Mark Rousskov
b0f5f670b3
Rollup merge of #68579 - ehuss:update-cargo, r=Mark-Simulacrum
Update cargo

2 commits in b68b0978ab8012f871c80736fb910d14b89c4498..9d32b7b01409024b165545c568b1525d86e2b7cb
2020-01-24 18:26:23 +0000 to 2020-01-26 18:27:29 +0000
- Polish code to clarify meaning (rust-lang/cargo#7836)
- Store maximum queue length (rust-lang/cargo#7829)
2020-01-27 13:42:03 -05:00
Eric Huss
e1a837c08f Update cargo 2020-01-27 10:30:44 -08:00
Jon Gjengset
98724074d7
Bump miri for rust-lang/miri#1150 2020-01-27 12:47:51 -05:00
comet
9a78c2b11d
update 2020-01-26 22:52:13 -06:00
Tomasz Miąsko
3c02afe965 compiletest: Don't load TestProps from a directories 2020-01-27 00:00:00 +00:00
Tomasz Miąsko
db7ee95345 compiletest: Derive Default for EarlyProps 2020-01-27 00:00:00 +00:00
Tomasz Miąsko
9a154a94b3 compiletest: Remove unused llvm-cxxflags option 2020-01-27 12:08:53 +01:00
Tomasz Miąsko
d857f6f1ab compiletest: Add unit tests for EarlyProps 2020-01-27 12:08:53 +01:00
Tomasz Miąsko
bb6aac3813 compiletest: Update mode list displayed in --help 2020-01-27 12:08:53 +01:00
Tomasz Miąsko
5ebec91abb compiletest: Parse EarlyProps from a reader 2020-01-27 12:08:53 +01:00
Tomasz Miąsko
a6137fb730 compiletest: Remove unnecessary memory allocation in iter_header
Replace `BufRead::lines` with `BuRead::read_line` to reduce memory allocations.
2020-01-27 12:08:53 +01:00
Eduard-Mihai Burtescu
a7b0aa0675 rustc_span: move pretty syntax from macro_backtrace to ExpnKind::descr. 2020-01-26 17:18:55 +02:00
Eduard-Mihai Burtescu
787c458eeb Don't use ExpnKind::descr to get the name of a bang macro. 2020-01-26 17:18:54 +02:00
bors
41f41b2354 Auto merge of #68391 - tmiasko:compiletest-debuginfo, r=alexcrichton
compiletest: Simplify multi-debugger support

Previous implementation used a single mode type to store various pieces
of otherwise loosely related information:

* Whether debuginfo mode is in use or not.
* Which debuggers should run in general.
* Which debuggers are enabled for particular test case.

The new implementation introduces a separation between those aspects.
There is a single debuginfo mode parametrized by a debugger type.
The debugger detection is performed first and a separate configuration
is created for each detected debugger. The test cases are gathered
independently for each debugger which makes it trivial to implement
support for `ignore` / `only` conditions.

Functional changes:

* A single `debuginfo` entry point (rather than `debuginfo-cdb`, `debuginfo-gdb+lldb`, etc.).
* Debugger name is included in the test name.
* Test outputs are placed in per-debugger directory.
* Fixed spurious hash mismatch. Previously, the config mode would change
  from `DebugInfoGdbLldb` (when collecting tests) to `DebugInfoGdb` or
  `DebugInfoLldb` (when running them) which would affect hash computation.
* PYTHONPATH is additionally included in gdb hash.
* lldb-python and lldb-python-dir are additionally included in lldb hash.
2020-01-23 19:39:07 +00:00
Tomasz Miąsko
5c384ab00c compiletest: Do not run debuginfo tests with gdb on msvc targets 2020-01-23 11:41:55 +01:00
Tyler Mandry
9246b3056c
Rollup merge of #68253 - japaric:bare-metal-cortex-a, r=alexcrichton
add bare metal ARM Cortex-A targets to rustc

-> `rustc --target armv7a-none-eabi` will work

also build rust-std (rustup) components for them

-> `rustup target add armv7a-none-eabi` will work

this completes our bare-metal support of ARMv7 cores on stable Rust (by 1.42 or 1.43)

(these target specifications have been tested on a real (no emulation / QEMU) [Cortex-A7 core](https://github.com/iqlusioninc/usbarmory.rs/))
2020-01-22 16:02:09 -08:00
bors
f5abfb1569 Auto merge of #68194 - jonas-schievink:fix-thumb-ci, r=alexcrichton
Fix CI for embedded ARM targets

Closes https://github.com/rust-lang/rust/issues/67018

It would be better to move the `thumb-none-cortex-m` test into the `cargotest` suite, but it doesn't seem to support cross-compilation.
2020-01-22 09:49:03 +00:00
Mazdak Farrokhzad
2a3627d6b4
Rollup merge of #68439 - JohnTitor:clippy-up, r=JohnTitor
Update Clippy

Fixes #68431

r? @ghost
2020-01-22 01:50:12 +01:00
Mazdak Farrokhzad
06029c4498
Rollup merge of #68421 - ehuss:update-cargo-books, r=alexcrichton
Update cargo, books

## cargo

9 commits in ad3dbe10e1e654fb1f032a5dd9481d7cbaa00d65..f6449ba236db31995255ac5e4cad4ab88296a7c6
2020-01-13 21:37:15 +0000 to 2020-01-21 16:15:39 +0000
- Fix wrong directories in host_libdir. (rust-lang/cargo#7798)
- Update humantime requirement from 1.2.0 to 2.0.0 (rust-lang/cargo#7815)
- Fix doc_target test which no longer works on stable/beta. (rust-lang/cargo#7817)
- Fix some erroneous em-dashes in man pages. (rust-lang/cargo#7814)
- fix some clippy warnings (rust-lang/cargo#7808)
- Don't assume iowait always increases on Linux (rust-lang/cargo#7803)
- Add and update some doc comments. (rust-lang/cargo#7800)
- Consistently use em-dash in environment documentation page. (rust-lang/cargo#7799)
- Load credentials only when needed (rust-lang/cargo#7774)

## reference

3 commits in e1157538e86d83df0cf95d5e33bd943f80d0248f..11e893fc1357bc688418ddf1087c2b7aa25d154d
2019-12-22 13:13:14 +0100 to 2020-01-18 21:24:08 +0100
- Small improvements to types/pointer.md (rust-lang-nursery/reference#726)
- repr(transparent): mention align=1 requirement (rust-lang-nursery/reference#737)
- Elaborate on how to use an extern static correctly (rust-lang-nursery/reference#736)

## book

4 commits in 5c5cfd2e94cd42632798d9bd3d1116133e128ac9..87dd6843678575f8dda962f239d14ef4be14b352
2019-12-16 09:27:21 -0600 to 2020-01-20 15:20:40 -0500
- Fix listing numbers (rust-lang/book#2227)
- Move `async` and `await` keywords to 'Currently in Use' (rust-lang/book#2140)
- More cleanup - remove unneeded files (rust-lang/book#2213)
- Small cleanups extracted from the bigger pr i'm working on (rust-lang/book#2212)

## rust-by-example

1 commits in 1d59403cb5269c190cc52a95584ecc280345495a..1c2bd024d13f8011307e13386cf1fea2180352b5
2019-12-27 08:27:05 -0300 to 2020-01-20 12:18:36 -0300
- CamelCase -> UpperCamelCase (rust-lang/rust-by-example#1302)

## embedded-book

1 commits in 9493b7d4dc97eda439bd8780f05ad7b234cd1cd7..4d78994915af1bde9a95c04a8c27d8dca066232a
2019-12-27 20:05:00 +0000 to 2020-01-14 08:25:25 +0000
- Update .gitattributes  (rust-embedded/book#221)
2020-01-22 01:50:09 +01:00
Yuki Okushi
c7b23e2752 Update Clippy 2020-01-22 08:53:31 +09:00
Jonas Schievink
ef5f929471 Account for run-make tests in is_up_to_date 2020-01-21 19:01:56 +01:00
Eric Huss
d45d8b1c7b Update cargo, books 2020-01-21 09:55:43 -08:00
Jorge Aparicio
8abbd0beae for now, do not build rust-std for the armv7a-none-eabihf target
it needs some upstream changes in the build script of the compiler-builtins
crate
2020-01-21 17:18:37 +01:00
Matthias Krüger
14c002edb6 tidy: fix most clippy warnings 2020-01-21 15:33:17 +01:00
Yuki Okushi
67b87c8ba8
Rollup merge of #68339 - msizanoen1:patch-1, r=pietroalbini
Add `riscv64gc-unknown-linux-gnu` into target list in build-manifest

Missed in #68037

r? @alexcrichton
2020-01-21 07:32:47 +09:00
Tomasz Miąsko
6d218db26d compiletest: Simplify multi-debugger support
Previous implementation used a single mode type to store various pieces
of otherwise loosely related information:

* Whether debuginfo mode is in use or not.
* Which debuggers should run in general.
* Which debuggers are enabled for particular test case.

The new implementation introduces a separation between those aspects.
There is a single debuginfo mode parametrized by a debugger type.
The debugger detection is performed first and a separate configuration
is created for each detected debugger. The test cases are gathered
independently for each debugger which makes it trivial to implement
support for `ignore` / `only` conditions.

Functional changes:

* A single `debuginfo` entry point (rather than `debuginfo-cdb`, `debuginfo-gdb+lldb`, etc.).
* Debugger name is included in the test name.
* Test outputs are placed in per-debugger directory.
* Fixed spurious hash mismatch. Previously, the config mode would change
  from `DebugInfoGdbLldb` (when collecting tests) to `DebugInfoGdb` or
  `DebugInfoLldb` (when running them) which would affect hash computation.
* PYTHONPATH is additionally included in gdb hash.
* lldb-python and lldb-python-dir are additionally included in lldb hash.
2020-01-20 16:58:24 +01:00
Jorge Aparicio
a3a0776100
Merge branch 'master' into bare-metal-cortex-a 2020-01-20 07:50:32 +00:00
Matthias Krüger
188f0bbe7f submodules: update clippy from a8d90f6a to fd0428f6
Changes:
````
Treat more strange pattern
Split up `if_same_then_else` ui test
Apply review comments
Run `update_lints`
Reduce span range
Rename `ok_if_let` to `if_let_some_result`
Apply review comments
Add suggestion in `if_let_some_result`
rustup https://github.com/rust-lang/rust/pull/67712
Allow `unused_self` lint at the function level
Downgrade range_plus_one to pedantic
Rustup to rust-lang/rust#68204
Add lifetimes to `LateLintPass`
Fix rustc lint import paths generated by `new_lint`
Add lint for default lint description
Update documentation for adding new lints
Generate new lints easily
Split up `booleans` ui test
Fix the ordering on `nonminimal_bool`
````
2020-01-19 14:01:52 +01:00
msizanoen1
45dd44c0e1
Add riscv64gc-unknown-linux-gnu into target list in build-manifest
Missed in #68037 

r? @alexcrichton
2020-01-18 18:59:51 +07:00
bors
ecbc222855 Auto merge of #68287 - flip1995:clippyup, r=oli-obk
Update Clippy

cc rust-lang/rust-clippy#5054

No issue were opened for this.

r? @Manishearth
2020-01-16 20:59:57 +00:00
flip1995
25f1bf9a66
Update Clippy 2020-01-16 16:07:54 +01:00
bors
117ceeba40 Auto merge of #68258 - RalfJung:miri, r=RalfJung
update miri

Fixes https://github.com/rust-lang/rust/issues/68081

r? @ghost Cc @oli-obk
2020-01-16 14:16:54 +00:00
Ralf Jung
d9d7877f0e update miri 2020-01-15 20:03:22 +01:00
Dylan DPC
6270e49ce7
Rollup merge of #68232 - Mark-Simulacrum:unicode-tables, r=joshtriplett
Optimize size/speed of Unicode datasets

The overall implementation has the same general idea as the prior approach,
which was based on a compressed trie structure, but modified to use less space
(and, coincidentally, be an overall performance improvement).

Sizes | Old | New | New/current
-- | -- | -- | --
Alphabetic | 4616 | 2982 | 64.60%
Case_Ignorable | 3144 | 2112 | 67.18%
Cased | 2376 | 934 | 39.31%
Cc | 19 | 43 | 226.32%
Grapheme_Extend | 3072 | 1734 | 56.45%
Lowercase | 2328 | 985 | 42.31%
N | 2648 | 1239 | 46.79%
Uppercase | 1978 | 934 | 47.22%
White_Space | 241 | 140 | 58.09%
  |   |   |
Total | 20422 | 11103 | 54.37%

This table shows the size of the old and new tables in bytes. The most important
of these tables is "Grapheme_Extend", as it is present in essentially all Rust
programs due to being called from `str`'s Debug impl (`char::escape_debug`). In
a representative case given by this [blog post] for the embedded world, the
shrinking in this PR shrinks the final binary by 1,604 bytes, from 14,440 to
12,836.

The performance of these new tables, based on the (rough) benchmark of linearly
scanning the entire valid set of chars, querying for each `is_*`, is roughly
~50% better, though in some cases is either on par or slightly (3-5%) worse. In
practice, I believe the size benefits of this PR are the main concern. The new
implementation has been tested to be equivalent to the current nightly in terms
of returned values on the set of valid chars.

A (relatively) high-level explanation of the specific compression scheme used
can be found [in the generator].

This is split into three commits -- the first adds the generator which produces
the Rust code for the tables, the second adds support code for the lookup, and
the third actually swaps the current implementation out for the new one.

[blog post]: https://jamesmunns.com/blog/fmt-unreasonably-expensive/
[in the generator]: https://github.com/Mark-Simulacrum/rust/blob/unicode-tables/src/tools/unicode-table-generator/src/raw_emitter.rs
2020-01-15 22:49:27 +05:30
Jorge Aparicio
470cdf54ac add bare metal ARM Cortex-A targets to rustc
-> `rustc --target armv7-none-eabi` will work

also build rust-std (rustup) components for them

-> `rustup target add armv7-none-eabi` will work
2020-01-15 18:05:06 +01:00
bors
6d0bb91bcb Auto merge of #68248 - JohnTitor:rollup-x0kml5f, r=JohnTitor
Rollup of 12 pull requests

Successful merges:

 - #67784 (Reset Formatter flags on exit from pad_integral)
 - #67914 (Don't run const propagation on items with inconsistent bounds)
 - #68141 (use winapi for non-stdlib Windows bindings)
 - #68211 (Add failing example for E0170 explanation)
 - #68219 (Untangle ZST validation from integer validation and generalize it to all zsts)
 - #68222 (Update the wasi-libc bundled with libstd)
 - #68226 (Avoid calling tcx.hir().get() on CRATE_HIR_ID)
 - #68227 (Update to a version of cmake with windows arm64 support)
 - #68229 (Update iovec to a version with no winapi dependency)
 - #68230 (Update libssh2-sys to a version that can build for aarch64-pc-windows…)
 - #68231 (Better support for cross compilation on Windows.)
 - #68233 (Update compiler_builtins with changes to fix 128 bit integer remainder for aarch64 windows.)

Failed merges:

r? @ghost
2020-01-15 13:00:43 +00:00
Yuki Okushi
be1ecce01f
Rollup merge of #68141 - euclio:replace-bindings-with-winapi, r=alexcrichton
use winapi for non-stdlib Windows bindings
2020-01-15 21:51:45 +09:00
Mark Rousskov
064f8885d5 Add unicode table generator 2020-01-14 19:11:15 -05:00