Commit graph

271385 commits

Author SHA1 Message Date
Yoh Deadfall
13aa5fbd78 Added linux_like module 2024-11-25 22:31:53 +03:00
Yoh Deadfall
64f42a4107 Fixed test target
Co-authored-by: Ralf Jung <post@ralfj.de>
2024-11-25 22:31:53 +03:00
Yoh Deadfall
57c66159da Added epoll and eventfd for Android 2024-11-25 22:31:53 +03:00
Ralf Jung
d12594570a
Merge pull request #4037 from tiif/blockpipe
Refactor AnonSocket::read/write for blocking socketpair
2024-11-24 21:40:15 +00:00
Ralf Jung
0761f07dc8
Merge pull request #4053 from devnexen/sysconf_extend
sysconf adding few more constants.
2024-11-24 15:03:02 +00:00
David Carlier
1deb8f9ec1 sysconf: add _SC_OPEN_MAX 2024-11-24 15:36:59 +01:00
Ralf Jung
a221d506bc
Merge pull request #4054 from devnexen/strerror_r_chg
follow-up on #4052, making a miri evaluation context fn for strerror_r.
2024-11-24 09:57:49 +00:00
David Carlier
bb55f5239a
follow-up on #4052, making a miri evaluation context fn for strerror_r. 2024-11-24 09:22:58 +00:00
Ralf Jung
6a4aa9a36d
Merge pull request #4052 from devnexen/gh4050
sysconf interception fix for solarish systems.
2024-11-23 08:11:09 +00:00
David Carlier
004edb27cf sysconf interception fix for solarish systems.
also adding the `_SC_PAGESIZE` alias `_SC_PAGE_SIZE` supported by
Linux, macOS and FreeBSD.

close #4050
2024-11-23 06:46:00 +00:00
Ralf Jung
fa93f358d1
Merge pull request #4047 from RalfJung/eventfd-comments
eventfd: comment tweaks
2024-11-22 16:54:13 +00:00
Ralf Jung
76f27aaa6f
Merge pull request #4049 from rust-lang/rustup-2024-11-22
Automatic Rustup
2024-11-22 07:02:56 +00:00
Ralf Jung
7dcba03d28 disable solaris on CI for now 2024-11-22 07:37:38 +01:00
Ralf Jung
33f4d2ee61 epoll: fix comment typo 2024-11-22 07:35:53 +01:00
The Miri Cronjob Bot
69930dc963 Merge from rustc 2024-11-22 05:28:46 +00:00
Josh Stone
46cd0c5266 Also change an older $integer to {integer} 2024-11-22 16:00:16 -08:00
Josh Stone
c7195c4447
Change $float to {float} in relnotes
Co-authored-by: Urgau <3616612+Urgau@users.noreply.github.com>
2024-11-22 15:59:37 -08:00
Josh Stone
d3d334294a Add an empty line to fix markdown quoting 2024-11-22 14:21:16 -08:00
Josh Stone
3b8c0cccaa Reorder lang relnotes 2024-11-22 14:16:59 -08:00
Josh Stone
c14f0a1d51 Update relnotes from suggestions and issues sync 2024-11-22 14:15:50 -08:00
The Miri Cronjob Bot
f77817a701 Preparing for merge from rustc 2024-11-22 05:20:39 +00:00
Josh Stone
7426066bbc Add release notes for Rust 1.83.0 2024-11-21 18:04:31 -08:00
Ralf Jung
0267cbf672
Merge pull request #4046 from CraftSpider/windows-error-mapping
Fill out windows io error mapping table
2024-11-21 22:01:49 +00:00
bors
5d3c6ee9b3 Auto merge of #132362 - mustartt:aix-dylib-detection, r=jieyouxu
[AIX] change system dynamic library format

Historically on AIX, almost all dynamic libraries are distributed in `.a` Big Archive Format which can consists of both static and shared objects in the same archive (e.g. `libc++abi.a(libc++abi.so.1)`). During the initial porting process, the dynamic libraries are kept as `.a` to simplify the migration, but semantically having an XCOFF object under the archive extension is wrong. For crate type `cdylib` we want to be able to distribute the libraries as archives as well.

We are migrating to archives with the following format:
```
$ ar -t lib<name>.a
lib<name>.so
```
where each archive contains a single member that is a shared XCOFF object that can be loaded.
2024-11-21 21:36:47 +00:00
Rune Tynan
0a7e63a529 Add comment about multiple errors to one ErrorKind 2024-11-21 13:36:42 -08:00
Ralf Jung
7d38c51555 eventfd: comment tweaks 2024-11-21 22:27:43 +01:00
Rune Tynan
6af006e988 Fill out Windows error mapping table 2024-11-21 11:59:44 -08:00
bors
b19329a37c Auto merge of #133246 - MarcoIeni:debug-info-2-windows-disable, r=Kobzol
ci: Disable full `debuginfo-level=2` in windows alt job

try-job: dist-x86_64-msvc-alt
2024-11-21 18:46:51 +00:00
tiif
4400804072 Refactor AnonSocket::read/write 2024-11-22 01:20:18 +08:00
Henry Jiang
0db9059726 aix: fix archive format
fmt

fix cfg for windows

remove unused imports

address comments

update libc to 0.2.164

fmt

remove unused imports
2024-11-21 10:33:07 -05:00
bors
75703c1a78 Auto merge of #133287 - matthiaskrgr:rollup-ab9j3pu, r=matthiaskrgr
Rollup of 6 pull requests

Successful merges:

 - #130236 (unstable feature usage metrics)
 - #131544 (Make asm label blocks safe context)
 - #131586 (Support s390x z13 vector ABI)
 - #132489 (Fix closure arg extraction in `extract_callable_info`, generalize it to async closures)
 - #133078 (tests: ui/inline-consts: add issue number to a test, rename other tests)
 - #133283 (Don't exclude relnotes from `needs-triage` label)

r? `@ghost`
`@rustbot` modify labels: rollup
2024-11-21 14:08:40 +00:00
Matthias Krüger
df2413ce1c
Rollup merge of #133283 - jieyouxu:triage-relnotes, r=BoxyUwU
Don't exclude relnotes from `needs-triage` label

So initially we *didn't* exclude `needs-triage` label, then we did exclude them in #132825 as sometimes the `needs-triage` is redundant. However, I think they are probably worth double-checking because often some of the labels are only accurate/relevant for the *implementation* PR, but not for the purposes of the relnotes tracking issue. Furthermore, sometimes relevant team labels can be removed. So to make it less likely for relnotes to slip through, I think we should still label relnotes-tracking-issues with `needs-triage`.

cc https://rust-lang.zulipchat.com/#narrow/channel/241545-t-release/topic/Please.20CC.20lang

r? release
2024-11-21 11:58:41 +01:00
Matthias Krüger
825985981f
Rollup merge of #133078 - matthiaskrgr:uiuiui, r=davidtwco
tests: ui/inline-consts: add issue number to a test, rename other tests

rename other tests from a_b_c to a-b-c
2024-11-21 11:58:40 +01:00
Matthias Krüger
c064f6e1fc
Rollup merge of #132489 - compiler-errors:fn-sugg-tweaks, r=BoxyUwU
Fix closure arg extraction in `extract_callable_info`, generalize it to async closures

* Fix argument extraction in `extract_callable_info`
* FIx `extract_callable_info` to work for async closures
* Remove redundant `is_fn_ty` which is just a less general `extract_callable_info`
* More precisely name what is being called (i.e. call it a "closure" not a "function")

Review this without whitespace -- I ended up reformatting `extract_callable_info` because some pesky `//` comments were keeping the let-chains from being formatted.
2024-11-21 11:58:39 +01:00
Matthias Krüger
379b22123c
Rollup merge of #131586 - taiki-e:s390x-vector-abi, r=compiler-errors,uweigand
Support s390x z13 vector ABI

cc #130869

This resolves the following fixmes:
- 58420a065b/compiler/rustc_target/src/abi/call/s390x.rs (L1-L2)
- 58420a065b/compiler/rustc_target/src/spec/targets/s390x_unknown_linux_gnu.rs (L9-L11)

Refs: Section 1.2.3 "Parameter Passing" and section 1.2.5 "Return Values" in ELF Application Binary Interface s390x Supplement, Version 1.6.1 (lzsabi_s390x.pdf in https://github.com/IBM/s390x-abi/releases/tag/v1.6.1)

This PR extends ~~https://github.com/rust-lang/rust/pull/127731~~ https://github.com/rust-lang/rust/pull/132173 (merged) 's ABI check to handle cases where `vector` target feature is disabled.
If we do not do ABI check, we run into the ABI problems as described in https://github.com/rust-lang/rust/issues/116558 and https://github.com/rust-lang/rust/issues/130869#issuecomment-2408268044, and the problem of the compiler generating strange code (https://github.com/rust-lang/rust/pull/131586#discussion_r1799003554).

cc `@uweigand`

`@rustbot` label +O-SystemZ +A-ABI
2024-11-21 11:58:38 +01:00
Matthias Krüger
395649558a
Rollup merge of #131544 - nbdd0121:asm_goto_safe_block, r=petrochenkov
Make asm label blocks safe context

Tracking issue: https://github.com/rust-lang/rust/issues/119364

`asm!()` is forced to be wrapped inside unsafe. If there's no special treatment, the label blocks would also always be unsafe with no way of opting out. It was suggested that a simple fix is to make asm label blocks safe: https://github.com/rust-lang/rust/issues/119364#issuecomment-2316037703.

`@rustbot` labels: +A-inline-assembly +F-asm
2024-11-21 11:58:37 +01:00
Matthias Krüger
fe5403f517
Rollup merge of #130236 - yaahc:unstable-feature-usage, r=estebank
unstable feature usage metrics

example output

```
test-lib on  master [?] is 📦 v0.1.0 via 🦀 v1.80.1
❯ cat src/lib.rs
───────┬───────────────────────────────────────────────────────
       │ File: src/lib.rs
───────┼───────────────────────────────────────────────────────
   1   │ #![feature(unix_set_mark)]
   2   │ pub fn add(left: u64, right: u64) -> u64 {
   3   │     left + right
   4   │ }
   5   │
   6   │ #[cfg(test)]
   7   │ mod tests {
   8   │     use super::*;
   9   │
  10   │     #[test]
  11   │     fn it_works() {
  12   │         let result = add(2, 2);
  13   │         assert_eq!(result, 4);
  14   │     }
  15   │ }
───────┴───────────────────────────────────────────────────────

test-lib on  master [?] is 📦 v0.1.0 via 🦀 v1.80.1
❯ cargo +stage1 rustc -- -Zmetrics-dir=$PWD/metrics
   Compiling test-lib v0.1.0 (/home/yaahc/tmp/test-lib)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.08s

test-lib on  master [?] is 📦 v0.1.0 via 🦀 v1.80.1
❯ cat metrics/unstable_feature_usage.json
───────┬─────────────────────────────────────────────────────────────────────
       │ File: metrics/unstable_feature_usage.json
───────┼─────────────────────────────────────────────────────────────────────
   1   │ {"lib_features":[{"symbol":"unix_set_mark"}],"lang_features":[]}
   ```

   related to https://github.com/rust-lang/rust/issues/129485
2024-11-21 11:58:36 +01:00
bors
717f5df2c3 Auto merge of #132629 - nnethercote:124141-preliminaries, r=petrochenkov
#124141 preliminaries

Preliminary changes required to start removing `Nonterminal` (https://github.com/rust-lang/rust/pull/124141).

r? `@petrochenkov`
2024-11-21 10:57:22 +00:00
Jieyou Xu
61a03fa98f Don't exclude relnotes from needs-triage label 2024-11-21 17:20:37 +08:00
bors
0b1bf71a71 Auto merge of #133280 - matthiaskrgr:rollup-8keusum, r=matthiaskrgr
Rollup of 5 pull requests

Successful merges:

 - #131736 (Emscripten: link with -sWASM_BIGINT)
 - #132207 (Store resolution for self and crate root module segments)
 - #133153 (Add visits to nodes that already have flat_maps in ast::MutVisitor)
 - #133218 (Implement `~const` item bounds in RPIT)
 - #133228 (Rewrite `show_md_content_with_pager`)

r? `@ghost`
`@rustbot` modify labels: rollup
2024-11-21 07:41:22 +00:00
Ralf Jung
12ac750f9b
Merge pull request #4044 from RalfJung/rustup
Rustup
2024-11-21 07:25:52 +00:00
Ralf Jung
ec6fe118d9 fmt 2024-11-21 07:59:07 +01:00
Ralf Jung
f5fd967283 Merge from rustc 2024-11-21 07:58:50 +01:00
Matthias Krüger
c83b6a3d0e
Rollup merge of #133228 - nnethercote:rewrite-show_md_content_with_pager, r=tgross35
Rewrite `show_md_content_with_pager`

`show_md_content_with_pager` is complex and has a couple of bugs. This PR improves it.

r? ``@tgross35``
2024-11-21 07:56:13 +01:00
Matthias Krüger
920092531f
Rollup merge of #133218 - compiler-errors:const-opaque, r=fee1-dead
Implement `~const` item bounds in RPIT

an RPIT in a `const fn` is allowed to be conditionally const itself :)

r? fee1-dead or reroll
2024-11-21 07:56:13 +01:00
Matthias Krüger
9d70af54e4
Rollup merge of #133153 - maxcabrajac:flat_maps, r=petrochenkov
Add visits to nodes that already have flat_maps in ast::MutVisitor

This PR aims to add `visit_` methods for every node that has a `flat_map_` in MutVisitor, giving implementers free choice over overriding `flat_map` for 1-to-n conversions or `visit` for a 1-to-1.

There is one major problem: `flat_map_stmt`.
While all other default implementations of `flat_map`s are 1-to-1 conversion, as they either only call visits or a internal 1-to-many conversions are natural, `flat_map_stmt` doesn't follow this pattern.

`flat_map_stmt`'s default implementation is a 1-to-n conversion that panics if n > 1 (effectively being a 1-to-[0;1]). This means that it cannot be used as is for a default `visit_stmt`, which would be required to be a 1-to-1.

Implementing `visit_stmt` without runtime checks would require it to reach over a potential `flat_map_item` or `filter_map_expr` overrides and call for their `visit` counterparts directly.
Other than that, if we want to keep the behavior of `flat_map_stmt` it cannot call `visit_stmt` internally.

To me, it seems reasonable to make all default implementations 1-to-1 conversions and let implementers handle `visit_stmt` if they need it, but I don't know if calling `visit` directly when a 1-to-1 is required is ok or not.

related to #128974 & #127615

r? ``@petrochenkov``
2024-11-21 07:56:12 +01:00
Matthias Krüger
b1008d1370
Rollup merge of #132207 - compiler-errors:tweak-res-mod-segment, r=petrochenkov
Store resolution for self and crate root module segments

Let's make sure to record the segment resolution for `self::`, `crate::` and `$crate::`.

I'm actually somewhat surprised that the only diagnostic that uses this is the one that errors on invalid generics on a module segment... but seems strictly more correct regardless, and there may be other diagnostics using these segments resolutions that just haven't been tested for `self`. Also includes a drive-by on `report_prohibit_generics_error`.
2024-11-21 07:56:12 +01:00
Matthias Krüger
61878ec254
Rollup merge of #131736 - hoodmane:emscripten-wasm-bigint, r=workingjubilee
Emscripten: link with -sWASM_BIGINT

When linking an executable without dynamic linking, this is a pure improvement. It significantly reduces code size and avoids a lot of buggy behaviors. It is supported in all browsers for many years and in all maintained versions of Node.

It does change the ABI, so people who are dynamically linking with a library or executable that uses the old ABI may need to turn it off. It can be disabled if needed by passing `-Clink-arg -sWASM_BIGINT=0` to `rustc`. But few people will want to turn it off.

Note this includes a libc bump to 0.2.162!
2024-11-21 07:56:11 +01:00
Ralf Jung
09ef8ece28 Preparing for merge from rustc 2024-11-21 07:45:20 +01:00
bors
318f96a8cf Auto merge of #133254 - Earlopain:llvm-19.1.4, r=DianQK
Update LLVM to 19.1.4

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

r? `@DianQK`
2024-11-21 04:34:11 +00:00