Commit Graph

220708 Commits

Author SHA1 Message Date
nils
82dc127d7b
Rollup merge of #108326 - tmiasko:read-buf, r=thomcc
Implement read_buf for a few more types

Implement read_buf for TcpStream, Stdin, StdinLock, ChildStdout,
ChildStderr (and internally for AnonPipe, Handle, Socket), so
that it skips buffer initialization.

The other provided methods like read_to_string and read_to_end are
implemented in terms of read_buf and so benefit from the optimization
as well.

This commit also implements read_vectored and is_read_vectored where
applicable.
2023-03-21 13:00:21 +01:00
nils
caae551ecb
Rollup merge of #106434 - clubby789:document-sum-result, r=the8472
Document `Iterator::sum/product` for Option/Result

Closes #105266

We already document the similar behavior for `collect()` so I believe it makes sense to add this too. The Option/Result implementations *are* documented on their respective pages and the page for `Sum`, but buried amongst many other trait impls which doesn't make it very discoverable.

`````@rustbot````` label +A-docs
2023-03-21 13:00:21 +01:00
Oli Scherer
a00413f680 Also check function items' signatures for Fn* trait compatibility 2023-03-21 11:50:14 +00:00
Oli Scherer
91d913168c Deduplicate fn trait compatibility checks 2023-03-21 11:38:13 +00:00
Oli Scherer
fb9e171ab7 Only implement Fn* traits for extern "Rust" safe function pointers. 2023-03-21 11:11:32 +00:00
Oli Scherer
f066d6785d Detect uninhabited types early in const eval. 2023-03-21 11:09:27 +00:00
Martin Gammelsæter
54f55efb9a Use hex literal for INDEX_MASK 2023-03-21 09:59:47 +01:00
lcnr
b8541eb767 use the correct param env 2023-03-21 09:57:22 +01:00
lcnr
c63861b9d5 evaluate: improve and fix recursion depth handling 2023-03-21 09:57:22 +01:00
lcnr
5810f1fe3c remove some trait solver helpers
they add more complexity then they are worth. It's confusing
which of these helpers should be used in which context.
2023-03-21 09:57:20 +01:00
lcnr
791ce0b7b5 remove some trait solver helpers
they add more complexity then they are worth. It's confusing
which of these helpers should be used in which context.
2023-03-21 09:57:20 +01:00
Oli Scherer
83dec62b26 Add a layout argument to enforce_validity.
This is in preparation of checking the validity only of certain types.
2023-03-21 08:52:31 +00:00
Pietro Albini
01771762cd
change default to fast for everyone but the user profile 2023-03-21 09:44:42 +01:00
bors
ef03fda339 Auto merge of #106967 - saethlin:remove-vec-as-ptr-assume, r=thomcc
Remove the assume(!is_null) from Vec::as_ptr

At a guess, this code is leftover from LLVM was worse at keeping track of the niche information here. In any case, we don't need this anymore: Removing this `assume` doesn't get rid of the `nonnull` attribute on the return type.
2023-03-21 08:44:17 +00:00
yukang
8126ccb77d Return equal for two identical projections 2023-03-21 15:28:11 +08:00
Michael Howell
cae43859d3 doc: add generics improvements to rustdoc book 2023-03-20 22:41:58 -07:00
Michael Howell
e600c0ba0e rustdoc: add support for type filters in arguments and generics
This makes sense, since the search index has the information in it,
and it's more useful for function signature searches since a
function signature search's item type is, by definition, some type
of function (there's more than one, but not very many).
2023-03-20 22:41:57 -07:00
bors
84c47b8279 Auto merge of #108717 - TDecki:dec2flt-inline, r=thomcc
Add inlining annotations in `dec2flt`.

Currently, the combination of `dec2flt` being generic and the `FromStr` implementaions
containing inline anttributes causes massive amounts of assembly to be generated whenever
these implementation are used. In addition, the assembly has calls to function which ought to
be inlined, but they are not (even when using lto).

This Pr fixes this.
2023-03-21 04:55:02 +00:00
John Kåre Alsaker
ced33ad289 Refactor try_execute_query 2023-03-21 03:29:19 +01:00
bors
3ff4d56650 Auto merge of #108262 - ChrisDenton:libntdll, r=Mark-Simulacrum
Distribute libntdll.a with windows-gnu toolchains

This allows the OS loader to load essential functions (e.g. read/write file) at load time instead of lazily doing so at runtime.

r? libs
2023-03-21 02:23:27 +00:00
Chris Denton
154f5d7f71
Add ntdll to run-make-fulldeps extraflags 2023-03-21 00:08:30 +00:00
bors
822c10feb7 Auto merge of #109046 - Zoxc:split-execute-job, r=cjgillot,michaelwoerister
Split `execute_job` into `execute_job_incr` and `execute_job_non_incr`

`execute_job` was a bit large, so this splits it in 2. Performance was neutral locally, but this may affect bootstrap times.
2023-03-20 23:53:09 +00:00
Michael Goulet
720cc40fa7 Enforce non-lifetime-binders in supertrait preds are not object safe 2023-03-20 22:38:57 +00:00
Nicholas Nethercote
93eeb12724 Refactor handle_missing_lit. 2023-03-21 09:28:52 +11:00
bors
44f5180584 Auto merge of #106610 - euclio:windows-rs, r=ChrisDenton
migrate compiler, bootstrap and compiletest to windows-rs

This PR migrates the compiler, bootstrap, and compiletest to use [windows-rs](https://github.com/microsoft/windows-rs) instead of winapi-rs. windows-rs is the bindings crate provided by Microsoft, and is actively maintained compared to winapi-rs. Not all ecosystem crates have migrated over yet, so there will be a period of time where both crates are used.

windows-rs also provides some nice ergonomics over winapi-rs to convert return values to `Result`s (which found a case where we forgot to check the return value of `CreateFileW`).
2023-03-20 20:05:45 +00:00
Guillaume Gomez
ab1573a887 Add GUI test for "Auto-hide item contents for large items" setting 2023-03-20 20:25:35 +01:00
Guillaume Gomez
12c138531f Update browser-ui-test version to 0.14.5 2023-03-20 20:25:35 +01:00
Ralf Jung
5058cc8e62 not *all* retags might be explicit in Runtime MIR 2023-03-20 19:36:01 +01:00
Maybe Waffle
c513c3b9a5 Remove outdated comments 2023-03-20 17:42:04 +00:00
bors
febd59e122 Auto merge of #109384 - matthiaskrgr:rollup-hu348gs, r=matthiaskrgr
Rollup of 8 pull requests

Successful merges:

 - #109170 (Set `CMAKE_SYSTEM_NAME` for Linux targets)
 - #109266 (rustdoc: Correctly merge import's and its target's docs in one more case)
 - #109267 (Add tests for configure.py)
 - #109273 (Make `slice::is_sorted_by` implementation nicer)
 - #109277 (Fix generics_of for impl's RPITIT synthesized associated type)
 - #109307 (Ignore `Inlined` spans when computing caller location.)
 - #109364 (Only expect a GAT const param for `type_of` of GAT const arg)
 - #109365 (Update mdbook)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2023-03-20 17:33:20 +00:00
yukang
cbb8066321 Avoid ICE of attempt to add with overflow in emitter 2023-03-21 01:23:28 +08:00
Andy Russell
bb7c373fdf
migrate compiler, bootstrap, and compiletest to windows-rs 2023-03-20 13:19:35 -04:00
clubby789
f321144a56 Add example for Option::product and Result::product 2023-03-20 16:11:59 +00:00
Vadim Petrochenkov
4d55affc12 rustdoc: Optimize impl sorting during rendering 2023-03-20 19:43:00 +04:00
Krasimir Georgiev
e4a4064480 adapt tests/codegen/vec-shrink-panik for LLVM 17
After 0d4a709bb8
LLVM now doesn't generate references to panic_cannot_unwind:

@nikic:
https://rust-lang.zulipchat.com/#narrow/stream/187780-t-compiler.2Fwg-llvm/topic/a.20couple.20codegen.20test.20failures.20after.20llvm.200d4a709bb876824a/near/342664944
>Okay, so LLVM now realizes that double panic is not possible, so that's fine.
2023-03-20 15:33:57 +00:00
Andy Wang
f404f33c21
Use builtin_index instead of match
Co-authored-by: Oli Scherer <github35764891676564198441@oli-obk.de>
2023-03-20 16:27:44 +01:00
Evgenii Zheltonozhskii
009ed88789 Add known-bug test for typeid unsoundness issue 2023-03-20 16:38:38 +02:00
Andy Wang
e24f5ac56b
Fix off-by-one in mir syntax doc 2023-03-20 15:27:40 +01:00
Andy Wang
8e4e55e524
Support aggregate expressions 2023-03-20 15:25:11 +01:00
Andy Wang
9dc275bb54
Add documentation for type RET = ... 2023-03-20 15:23:27 +01:00
bors
13b7aa4d7f Auto merge of #108524 - Zoxc:node-backtrace, r=cjgillot
Optimize dep node backtrace and ignore fatal errors

This attempts to optimize https://github.com/rust-lang/rust/pull/91742 while also passing through fatal errors.

r? `@cjgillot`
2023-03-20 11:54:00 +00:00
Andy Wang
9da1da94ef
Allow optional RET type annotation 2023-03-20 12:21:19 +01:00
the8472
a3e41b5759 Apply suggestions from code review
Co-authored-by: Josh Stone <cuviper@gmail.com>
2023-03-20 12:15:17 +01:00
The 8472
db5dfd2373 Add block-based mutex unlocking example 2023-03-20 12:15:17 +01:00
Scott McMurray
48011e2aa4 Also move the auxiliary file 2023-03-20 10:25:29 +00:00
Scott McMurray
5dfe37a504 mv tests/codegen/issue-* tests/codegen/issues/ 2023-03-20 10:25:29 +00:00
Michael Woerister
40fc42371f Limited the number of parallel link jobs during LLVM build for mingw.
This is an attempt to fix the spurious build error tracked by
https://github.com/rust-lang/rust/issues/108227.
2023-03-20 10:51:04 +01:00
lcnr
5b4fa5bf98 fix typo 2023-03-20 10:46:43 +01:00
Matthias Krüger
58ffabbb90
Rollup merge of #109365 - ehuss:update-mdbook, r=Mark-Simulacrum
Update mdbook

This updates mdbook from 0.4.25 to 0.4.28.
Changelog: https://github.com/rust-lang/mdBook/blob/master/CHANGELOG.md#mdbook-0428

The primary changes are some interaction fixes for Mobile Safari and removing custom scrollbars on webkit browsers, along with a few other fixes.
2023-03-20 09:46:55 +01:00
Matthias Krüger
f21c435801
Rollup merge of #109364 - compiler-errors:gat-const-arg, r=BoxyUwU
Only expect a GAT const param for `type_of` of GAT const arg

IDK why we were account for both `is_ty_or_const` instead of just for a const param, since we're computing the `type_of` a const param specifically.

Fixes #109300
2023-03-20 09:46:54 +01:00