about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2024-12-31Unsafe binder support in rustdocMichael Goulet-12/+68
2024-12-30Auto merge of #134931 - matthiaskrgr:rollup-b47ly73, r=matthiaskrgrbors-18/+90
Rollup of 5 pull requests Successful merges: - #132477 (Add illumos target documentation) - #134871 (Add codegen test for issue 63646) - #134911 (chore: fix typos) - #134922 (Fix typos) - #134924 (ci: Cleanup docker build logs in CI) r? `@ghost` `@rustbot` modify labels: rollup
2024-12-30Rollup merge of #134924 - ranger-ross:cleanup-ci-output, r=KobzolMatthias Krüger-1/+2
ci: Cleanup docker build logs in CI Cleaning up the CI logs to make reviewing CI failures easier. This PR adds a `::group` around the docker tag hash input which is pretty large (250+ lines) and is probably not relevant for most people. Related to #134910 , see this [comment](https://github.com/rust-lang/rust/issues/134910#issuecomment-2565612463)
2024-12-30Rollup merge of #134922 - ericlehong:fix/typos, r=lqdMatthias Krüger-6/+6
Fix typos This PR fixes typos errors in comments, docs and logs. Thank you very much.
2024-12-30Rollup merge of #134911 - HigherOrderLogic:master, r=onur-ozkanMatthias Krüger-9/+9
chore: fix typos This PR fixes typos errors in docstring only, so functionality wise, it should stay the same.
2024-12-30Rollup merge of #134871 - clubby789:test-63646, r=compiler-errorsMatthias Krüger-0/+28
Add codegen test for issue 63646 Closes #63646
2024-12-30Rollup merge of #132477 - Noratrieb:illumos-oxide, r=workingjubileeMatthias Krüger-2/+45
Add illumos target documentation Fixes https://github.com/rust-lang/rust/pull/130132#issuecomment-2339055221 `@jclulow` `@pfmooney` I'm adding you as requested. The page is very barebones (as I do not know illumos well) and could use some improvements (for example in the "Cross-compilation toolchains and C code" section). Feel free to suggest improvements (or rewrite it from scratch) if you find something.
2024-12-30Auto merge of #134914 - lqd:polonius-next-episode-5, r=jackh726bors-210/+189
A couple datalog/borrowck cleanups As discussed on zulip, here's a chill one in between slightly more interesting PRs: - I hadn't noticed there still were a couple of datalog-related modules outside of their dedicated `polonius` module (go to horn-clause jail, bonk!). - there somehow was both a `diags` module and a `diagnostics` module. - a couple other tiny things being renamed -- let me know what you think. As requested I've tried to have somewhat granular commits to ease review, but the last two or three could be squashed together, since they're all related to the `diags` module (but moving its contents is less tedious to check in its own commit). r? `@jackh726`
2024-12-30Auto merge of #134906 - jieyouxu:multi-crate-type, r=lqd,fmeasebors-0/+67
tests: add basic test coverage for stable `--crate-type` flag I experimented locally with making the compiler panic if multiple crate types are passed to a single `--crate-type` flag, and it turns out not only does the compiler successfully bootstrap, only two ui tests failed: ``` failures: [ui] tests/ui/sepcomp/sepcomp-lib.rs [ui] tests/ui/sepcomp/sepcomp-lib-lto.rs test result: FAILED. 4 passed; 2 failed; 18181 ignored; 0 measured; 0 filtered out; finished in 364.55ms ``` These are not specific tests for the `--crate-type` flag, only their auxiliary *happens* to use a `--crate-type` with two crate types: ```rs //@ compile-flags: -C codegen-units=3 --crate-type=rlib,dylib -g ``` I was not able to find a specific test in run-make test suite either. So this PR tries to add some basic test coverage for the stable `--crate-type` flag's interface (including to check that `--crate-type` accepts multiple crate types), since I imagine it might be slightly awkward if we accidentally regressed this. r? compiler
2024-12-31ci: Cleanup docker build logs in CIranger-ross-1/+2
2024-12-30Add illumos target documentationNoratrieb-2/+45
2024-12-30Fix typosericlehong-6/+6
Signed-off-by: ericlehong <193237094+ericlehong@users.noreply.github.com>
2024-12-30Auto merge of #134885 - RalfJung:arm-soft-float, r=workingjubileebors-2/+2
make -Csoft-float have an effect on all ARM targets See the discussion [on Zulip](https://rust-lang.zulipchat.com/#narrow/channel/187780-t-compiler.2Fwg-llvm/topic/Softfloat.20ABI.2C.20hardfloat.20instructions): apparently `-float-abi=soft` is how one can force "use soffloat ABI but hardware FP instructions" on ARM-32. Our version of that is `-Csoft-float` but I made that one a NOP on all targets except for ARM eabihf (see https://github.com/rust-lang/rust/pull/129897)... which now make experimentation on what we actually want to do here a lot harder. So, let's unlock the flag on all ARM targets while we are still figuring out our long-term plans here. Cc `@workingjubilee`
2024-12-30tests: add basic test coverage for cli flag `--crate-type`许杰友 Jieyou Xu (Joe)-0/+67
2024-12-30chore: fix typosHoru-9/+9
2024-12-30Auto merge of #134865 - clubby789:proc-macro-tls, r=onur-ozkanbors-12/+171
bootstrap: Don't apply -Ztls-model=initial-exec to deps of proc-macros Fixes #134863 1. Checks if a crate name is in a static list before applying the flag 2. Adds a tidy check that gathers transitive deps of proc macros and ensures the list is up to date cc `@bjorn3` - the issue specifies `rustc_fluent_macro` but I assume this applies to all proc macro crates.
2024-12-30rename `diags` fieldRémy Rakic-19/+26
2024-12-30clean up `BorrowckDiags`Rémy Rakic-23/+13
- rename it to what it does, buffer diagnostics - remove single-use functions - use derives
2024-12-30merge `diags` module into `diagnostics`Rémy Rakic-149/+142
it's a more natural place for diagnostics-related structures and functions
2024-12-30move `facts` module to polonius legacy moduleRémy Rakic-22/+17
this is specific to the old datalog implementation and wasn't noticed in the previous module move
2024-12-30simplify `add_extra_drop_facts`Rémy Rakic-25/+20
this is mostly to remove imports of the polonius legacy module also what is going on in this function, what the...
2024-12-30move `location` module to polonius legacy moduleRémy Rakic-11/+11
this is specific to the old datalog implementation and wasn't noticed in the previous module move
2024-12-30fix a couple nitsRémy Rakic-7/+6
- remove unneeded type ascription - fix variable name - fix typo in comment - fix `var_origins` var and function name: these are `VarInfos`
2024-12-30Auto merge of #134866 - osiewicz:write-rlib-bufwriter, r=bjorn3bors-2/+5
rustc_codegen_ssa: Buffer file writes in link_rlib This makes this step take ~25ms on my machine (M3 Max 64GB) for Zed repo instead of ~150ms (on editor crate). Additionally it takes down the time needed for a clean cargo build of ripgrep from ~6.1s to 5.9s. This change is mostly relevant for dev builds of crates with multiple large CGUs. I imagine it could be quite relevant for dev scenarios on Windows, but sadly I have no way to measure that myself.
2024-12-30Auto merge of #134670 - lqd:polonius-next-episode-4, r=jackh726bors-128/+498
Compute liveness constraints in location-sensitive polonius This continues the location-sensitive prototype. In this episode, we build the liveness constraints. Reminder of the approach we're taking: we need variance data to create liveness edges in the forward/backward/both directions (respectively in the cases of covariance, contravariance, invariance) in the localized constraint graph. This PR: - introduces the holder for that, and for the liveness data in the correct shape: the transpose of what we're using today, "live regions per points". - records use/drop live region variance during tracing - records regular live region variance at the end of liveness - records the correctly shaped live region per point matrix - uses all of the above to compute the liveness constraints (There's still technically one tiny part of the liveness owl left to do, but I'll leave it for a future PR: we also need to disable the NLL optimization that avoids computing liveness for locals whose types contain a region outliving a free region -- the existing constraints make it effectively live at all points; this doesn't work under polonius) r? `@jackh726` cc `@matthewjasper`
2024-12-29Auto merge of #134901 - matthiaskrgr:rollup-b0wwuht, r=matthiaskrgrbors-5/+48
Rollup of 4 pull requests Successful merges: - #134870 (Fix sentence fragment in `pin` module docs) - #134884 (Fix typos) - #134892 (Added codegen test for elidings bounds check when indexes are manually checked) - #134894 (Document how to run the split Docker pipelines) r? `@ghost` `@rustbot` modify labels: rollup
2024-12-29bootstrap: Don't apply `-Ztls-model=initial-exec` to deps of proc-macrosclubby789-1/+4
2024-12-29Add tidy check for list of proc-macro crate transitive dependenciesclubby789-11/+167
2024-12-29review fixes: Adjust whitespacePiotr Osiewicz-0/+3
2024-12-29Rollup merge of #134894 - Kobzol:docker-ci-documentation, r=the8472Matthias Krüger-0/+6
Document how to run the split Docker pipelines r? `@the8472`
2024-12-29Rollup merge of #134892 - alex:codegen-55147, r=durin42Matthias Krüger-0/+37
Added codegen test for elidings bounds check when indexes are manually checked Closes #55147
2024-12-29Rollup merge of #134884 - calciumbe:patch1, r=jieyouxuMatthias Krüger-4/+4
Fix typos Hello, I fix some typos in docs and comments. Thank you very much.
2024-12-29Rollup merge of #134870 - geofft:patch-1, r=jhprattMatthias Krüger-1/+1
Fix sentence fragment in `pin` module docs Looks like this was inadvertently dropped in 8241ca60. Restore the words from before that commit.
2024-12-29Auto merge of #134765 - Noratrieb:linux-none-cant-unwind-silly, r=jieyouxubors-2/+8
Improve default target options for x86_64-unknown-linux-none Without a standard library, we cannot unwind, so it should be panic=abort by default. Additionally, it does not have std because while it is Linux, it cannot use libc, which std uses today for Linux. Using PIE by default may be surprising to users, as shown in #134763, so I've documented it explicitly. I'm not sure if we want to count that as fixing the issue or not. cc `@morr0ne,` as you added the target (and are the maintainer), and `@Noratrieb,` who reviewed that PR (:D).
2024-12-29address review commentsRémy Rakic-7/+24
- add a FIXME when looking for the region variance of unexpected regions - drive-by: fix a doc comment link - drive-by: simplify the variance match using exported variants instead
2024-12-29liveness constraints: draw the rest of the owlRémy Rakic-71/+180
2024-12-29finish filling polonius contextRémy Rakic-8/+40
transpose liveness matrix and record live regions at the end of MIR typeck
2024-12-29improve `bit_set` assertionRémy Rakic-1/+6
it missed the index and bounds info
2024-12-29record variance of regular live regionsRémy Rakic-3/+21
2024-12-29record variance of use/drop live regionsRémy Rakic-6/+12
records the variance of: - use live types - drop live generic args
2024-12-29add variance recordingRémy Rakic-0/+126
Following the Generalizer's structure, relating e.g. a type with itself will allow tracking the variance wrt the contained regions.
2024-12-29introduce polonius contextRémy Rakic-47/+104
This context struct will hold data to help creating localized constraints: - the live regions, with the shape matching a CFG walk, indexed per point - the variance of these live regions, represented as the direction we'll add the appropriate We also add this structure to the mir typeck to record liveness data, and make it responsible for localized constraint creation.
2024-12-29Document x86_64-unknown-linux-none is PIE by defaultNoratrieb-0/+5
2024-12-29Document how to run the split Docker pipelinesJakub Beránek-0/+6
2024-12-29Auto merge of #134891 - dxsullivan:fix-typo, r=GuillaumeGomezbors-4/+4
docs: fix typos Fix typos in docs. Thank you.
2024-12-29Added codegen test for elidings bounds check when indexes are manually checkedAlex Gaynor-0/+37
Closes #55147
2024-12-29docs: fix typosdxsullivan-4/+4
2024-12-29fix: typoscalciumbe-4/+4
Signed-off-by: calciumbe <192480234+calciumbe@users.noreply.github.com>
2024-12-29Auto merge of #134887 - Zalathar:rollup-ghpz7oy, r=Zalatharbors-123/+142
Rollup of 5 pull requests Successful merges: - #134799 (nits: Cleanups in `librustdoc::clean`) - #134851 (docs: inline `alloc::ffi::c_str` types to `alloc::ffi`) - #134869 (Bump compiler cc) - #134876 (bootstrap: Consolidate the macros for declaring compiletest test suites) - #134883 (bootstrap: Fix `./x check bootstrap` by moving `shared_helpers::tests`) r? `@ghost` `@rustbot` modify labels: rollup
2024-12-29Rollup merge of #134883 - Zalathar:shared-helpers, r=clubby789Stuart Cook-3/+14
bootstrap: Fix `./x check bootstrap` by moving `shared_helpers::tests` Running `./x check bootstrap` currently doesn't work, because it builds the bootstrap shim binaries with `cfg(test)`, and those binaries can't find a `tests` submodule when they include `shared_helpers.rs` via `#[path]`. This PR fixes that by taking the tests module and moving it to `super::tests::shared_helpers_tests` instead. (The extra `tests` submodule prevents tidy from complaining about unit tests that aren't in a dedicated tests module.) --- It would be nice to also run `./x check bootstrap compiletest` in CI, so that this and #134848 don't regress, but I didn't want to bundle that change with this fix.