Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

const_eval: update for const-fn float stabilization #1566

Merged
merged 2 commits into from
Aug 26, 2024

Conversation

RalfJung
Copy link
Member

@RalfJung RalfJung commented Aug 10, 2024

Accompanying reference update for rust-lang/rust#128596.

The float semantics RFC decided that this is not a guarantee we actually provide (and I am surprised to see that this was ever documented here, since we have other plans that will make this even less true):

Calling a const function at compile-time
will always yield the same result as calling it at runtime, even when called
multiple times.

Therefore, I removed this paragraph. I am not sure what its purpose was.

Also fixes #1581.

@RalfJung
Copy link
Member Author

Seems like this guarantee was added a long time ago, in #440. Cc @oli-obk

@oli-obk
Copy link
Contributor

oli-obk commented Aug 10, 2024

I am not sure what its purpose was.

the purpose was to be able to land the reference change and doing any work, as there was resistance to breaking that "guarantee" that we accidentally had

Comment on lines 64 to 66
Const contexts that are used as parts of types (array type and repeat length
expressions as well as const generic arguments) can only make restricted use of
surrounding generic type and lifetime parameters.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you happen to know what the restrictions are?

Also, just to verify, there are no restrictions for const generic parameters now?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know, I just copied this text to a place where I think it makes more sense.
Cc @BoxyUwU

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

type system const expressions can either be arbitrary expressions not making using of any generics, or a single bare const parameter, e.g. { N }

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! I've added this to the PR.

It's not related to "const fn float" at all, but I don't want to make this a separate PR as those would conflict...

@joshtriplett
Copy link
Member

joshtriplett commented Aug 14, 2024

Accompanying reference update for rust-lang/rust#128596.

The float semantics RFC decided that this is not a guarantee we actually provide (and I am surprised to see that this was ever documented here, since we have other plans that will make this even less true):

Calling a const function at compile-time
will always yield the same result as calling it at runtime, even when called
multiple times.

Therefore, I removed this paragraph. I am not sure what its purpose was.

Would it be feasible, rather than deleting this paragraph, to document exceptions to it (e.g. NaN bit patterns, calls to some floating-point functions)? It still seems to generally be true with the current set of things we've accepted.

(This is not an objection or a blocker, just a question.)

@RalfJung
Copy link
Member Author

RalfJung commented Aug 14, 2024

Yes, it is feasible. Currently, the NaN bit patterns returned by some float operations are the only case. However, I'm not very fond of the idea that we'll have to update the reference each time we add a new source of potential non-determinism or other kinds of difference between compiletime and runtime behavior...

@chorman0773
Copy link
Contributor

Also sounds like a stability nightmare.

@ehuss ehuss added the S-waiting-on-stabilization Waiting for a stabilization PR to be merged in the main Rust repository label Aug 20, 2024
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Aug 24, 2024
…rithmetic, r=nnethercote

stabilize const_fn_floating_point_arithmetic

Part of rust-lang#128288
Fixes rust-lang#57241

The existing test `tests/ui/consts/const_let_eq_float.rs`  ([link](https://github.com/RalfJung/rust/blob/const_fn_floating_point_arithmetic/tests/ui/consts/const_let_eq_float.rs)) covers the basics, and also Miri has extensive tests covering the interpreter's float machinery. Also, that machinery can already be used on stable inside `const`/`static` initializers, just not inside `const fn`.

This was explicitly called out in rust-lang/rfcs#3514 so in a sense t-lang just recently already FCP'd this, but let's hear from them whether they want another FCP for the stabilization here or whether that was covered by the FCP for the RFC.
Cc `@rust-lang/lang`

### Open items

- [x] Update the Reference: rust-lang/reference#1566
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Aug 24, 2024
…rithmetic, r=nnethercote

stabilize const_fn_floating_point_arithmetic

Part of rust-lang#128288
Fixes rust-lang#57241

The existing test `tests/ui/consts/const_let_eq_float.rs`  ([link](https://github.com/RalfJung/rust/blob/const_fn_floating_point_arithmetic/tests/ui/consts/const_let_eq_float.rs)) covers the basics, and also Miri has extensive tests covering the interpreter's float machinery. Also, that machinery can already be used on stable inside `const`/`static` initializers, just not inside `const fn`.

This was explicitly called out in rust-lang/rfcs#3514 so in a sense t-lang just recently already FCP'd this, but let's hear from them whether they want another FCP for the stabilization here or whether that was covered by the FCP for the RFC.
Cc ``@rust-lang/lang``

### Open items

- [x] Update the Reference: rust-lang/reference#1566
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Aug 25, 2024
Rollup merge of rust-lang#128596 - RalfJung:const_fn_floating_point_arithmetic, r=nnethercote

stabilize const_fn_floating_point_arithmetic

Part of rust-lang#128288
Fixes rust-lang#57241

The existing test `tests/ui/consts/const_let_eq_float.rs`  ([link](https://github.com/RalfJung/rust/blob/const_fn_floating_point_arithmetic/tests/ui/consts/const_let_eq_float.rs)) covers the basics, and also Miri has extensive tests covering the interpreter's float machinery. Also, that machinery can already be used on stable inside `const`/`static` initializers, just not inside `const fn`.

This was explicitly called out in rust-lang/rfcs#3514 so in a sense t-lang just recently already FCP'd this, but let's hear from them whether they want another FCP for the stabilization here or whether that was covered by the FCP for the RFC.
Cc ``@rust-lang/lang``

### Open items

- [x] Update the Reference: rust-lang/reference#1566
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Aug 26, 2024
…, r=nnethercote

stabilize const_fn_floating_point_arithmetic

Part of rust-lang/rust#128288
Fixes rust-lang/rust#57241

The existing test `tests/ui/consts/const_let_eq_float.rs`  ([link](https://github.com/RalfJung/rust/blob/const_fn_floating_point_arithmetic/tests/ui/consts/const_let_eq_float.rs)) covers the basics, and also Miri has extensive tests covering the interpreter's float machinery. Also, that machinery can already be used on stable inside `const`/`static` initializers, just not inside `const fn`.

This was explicitly called out in rust-lang/rfcs#3514 so in a sense t-lang just recently already FCP'd this, but let's hear from them whether they want another FCP for the stabilization here or whether that was covered by the FCP for the RFC.
Cc ``@rust-lang/lang``

### Open items

- [x] Update the Reference: rust-lang/reference#1566
Copy link
Contributor

@ehuss ehuss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@ehuss ehuss added this pull request to the merge queue Aug 26, 2024
Merged via the queue into rust-lang:master with commit f0f6155 Aug 26, 2024
4 checks passed
@RalfJung RalfJung deleted the const-fn-float branch August 27, 2024 19:04
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Aug 28, 2024
Update books

## rust-lang/book

4 commits in 04bc1396bb857f35b5dda1d773c9571e1f253304..e7d217be2a75ef1753f0988d6ccaba4d7e376259
2024-08-14 01:19:47 UTC to 2024-08-13 16:51:00 UTC

- Backport/forward port ch12 (rust-lang/book#4008)
- Found some more things to fix in ch7; I forgot to update the snapshot (rust-lang/book#4007)
- Remove redundant sentence. Send to nostarch (rust-lang/book#4006)
- Fix: typo (rust-lang/book#4003)

## rust-lang/edition-guide

5 commits in aeeb287d41a0332c210da122bea8e0e91844ab3e..eeba2cb9c37ab74118a4fb5e5233f7397e4a91f8
2024-08-19 23:28:06 UTC to 2024-08-15 15:12:33 UTC

- 2024: Add rustdoc combined doctests (rust-lang/edition-guide#320)
- Update for unsafe attributes stabilization (rust-lang/edition-guide#319)
- 2024: Add macro-fragment-specifiers. (rust-lang/edition-guide#312)
- Fix deprecated_safe_2024 link (rust-lang/edition-guide#317)
- Add 2024 unsafe functions (rust-lang/edition-guide#304)

## rust-embedded/book

1 commits in 019f3928d8b939ec71b63722dcc2e46330156441..ff5d61d56f11e1986bfa9652c6aff7731576c37d
2024-08-20 07:26:19 UTC to 2024-08-20 07:26:19 UTC

- Use aligned address to demonstrate HardFault (rust-embedded/book#374)

## rust-lang/nomicon

1 commits in 6ecf95c5f2bfa0e6314dfe282bf775fd1405f7e9..14649f15d232d509478206ee9ed5105641aa60d0
2024-08-14 14:49:09 UTC to 2024-08-14 14:49:09 UTC

- CI: Switch to merge queue (rust-lang/nomicon#459)

## rust-lang/reference

14 commits in 62cd0df95061ba0ac886333f5cd7f3012f149da1..0668397076da350c404dadcf07b6cbc433ad3743
2024-08-11 21:06:12 +0000 to 2024-08-27 21:47:20 +0000
- Update enum.md (rust-lang/reference#1354)
- Be consistent about how "Edition differences" is capitalized (rust-lang/reference#1586)
- Sync denied lints with upstream (rust-lang/reference#1589)
- const_eval: update for const-fn float stabilization (rust-lang/reference#1566)
- Add spec identifier syntax to destructors.md (rust-lang/reference#1571)
- Say that `pub(in path)` can't depend on `use` statements (rust-lang/reference#1559)
- bytes inside implicitly const-promoted expressions are immutable (rust-lang/reference#1554)
- Tweak `repr(transparent)` to mention requiring *at most* one non-1-ZST (rust-lang/reference#1568)
- operator expressions: add &raw (rust-lang/reference#1567)
- Rewrite the automatic std link translation, and switch to automatic links (rust-lang/reference#1578)
- Add some basic docs for unsafe attrs (rust-lang/reference#1539)
- don't capitalize Undefined Behavior (rust-lang/reference#1575)
- add the `const` operand to docs for inline assembly (rust-lang/reference#1556)
- Typo: 'a' to 'an' in type-coercions.md (rust-lang/reference#1572)

## rust-lang/rust-by-example

1 commits in 8f94061936e492159f4f6c09c0f917a7521893ff..859786c5bc99301bbc22fc631a5c2b341860da08
2024-08-26 10:30:48 UTC to 2024-08-26 10:30:48 UTC

- Update primitives.md with examples (rust-lang/rust-by-example#1878)

## rust-lang/rustc-dev-guide

7 commits in 43d83780db545a1ed6d45773312fc578987e3968..fa928a6d19e1666d8d811dfe3fd35cdad3b4e459
2024-08-26 14:46:50 UTC to 2024-08-12 21:07:49 UTC

- Fix x.py reference (rust-lang/rustc-dev-guide#2049)
- Update `stabilization_guide.md` (rust-lang/rustc-dev-guide#2034)
- Explain the internal `#[rustc_*]` TEST attributes used for debugging and inside tests (rust-lang/rustc-dev-guide#2046)
- missing char (rust-lang/rustc-dev-guide#2047)
- Replace direct http links to rustc-dev-guide.rust-lang.org (rust-lang/rustc-dev-guide#2044)
- Update index.html, 39. The MIR: fix typo (rust-lang/rustc-dev-guide#2043)
- Update LLVM docs (rust-lang/rustc-dev-guide#2039)
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request Aug 29, 2024
Update books

## rust-lang/book

4 commits in 04bc1396bb857f35b5dda1d773c9571e1f253304..e7d217be2a75ef1753f0988d6ccaba4d7e376259
2024-08-14 01:19:47 UTC to 2024-08-13 16:51:00 UTC

- Backport/forward port ch12 (rust-lang/book#4008)
- Found some more things to fix in ch7; I forgot to update the snapshot (rust-lang/book#4007)
- Remove redundant sentence. Send to nostarch (rust-lang/book#4006)
- Fix: typo (rust-lang/book#4003)

## rust-lang/edition-guide

5 commits in aeeb287d41a0332c210da122bea8e0e91844ab3e..eeba2cb9c37ab74118a4fb5e5233f7397e4a91f8
2024-08-19 23:28:06 UTC to 2024-08-15 15:12:33 UTC

- 2024: Add rustdoc combined doctests (rust-lang/edition-guide#320)
- Update for unsafe attributes stabilization (rust-lang/edition-guide#319)
- 2024: Add macro-fragment-specifiers. (rust-lang/edition-guide#312)
- Fix deprecated_safe_2024 link (rust-lang/edition-guide#317)
- Add 2024 unsafe functions (rust-lang/edition-guide#304)

## rust-embedded/book

1 commits in 019f3928d8b939ec71b63722dcc2e46330156441..ff5d61d56f11e1986bfa9652c6aff7731576c37d
2024-08-20 07:26:19 UTC to 2024-08-20 07:26:19 UTC

- Use aligned address to demonstrate HardFault (rust-embedded/book#374)

## rust-lang/nomicon

1 commits in 6ecf95c5f2bfa0e6314dfe282bf775fd1405f7e9..14649f15d232d509478206ee9ed5105641aa60d0
2024-08-14 14:49:09 UTC to 2024-08-14 14:49:09 UTC

- CI: Switch to merge queue (rust-lang/nomicon#459)

## rust-lang/reference

14 commits in 62cd0df95061ba0ac886333f5cd7f3012f149da1..0668397076da350c404dadcf07b6cbc433ad3743
2024-08-11 21:06:12 +0000 to 2024-08-27 21:47:20 +0000
- Update enum.md (rust-lang/reference#1354)
- Be consistent about how "Edition differences" is capitalized (rust-lang/reference#1586)
- Sync denied lints with upstream (rust-lang/reference#1589)
- const_eval: update for const-fn float stabilization (rust-lang/reference#1566)
- Add spec identifier syntax to destructors.md (rust-lang/reference#1571)
- Say that `pub(in path)` can't depend on `use` statements (rust-lang/reference#1559)
- bytes inside implicitly const-promoted expressions are immutable (rust-lang/reference#1554)
- Tweak `repr(transparent)` to mention requiring *at most* one non-1-ZST (rust-lang/reference#1568)
- operator expressions: add &raw (rust-lang/reference#1567)
- Rewrite the automatic std link translation, and switch to automatic links (rust-lang/reference#1578)
- Add some basic docs for unsafe attrs (rust-lang/reference#1539)
- don't capitalize Undefined Behavior (rust-lang/reference#1575)
- add the `const` operand to docs for inline assembly (rust-lang/reference#1556)
- Typo: 'a' to 'an' in type-coercions.md (rust-lang/reference#1572)

## rust-lang/rust-by-example

1 commits in 8f94061936e492159f4f6c09c0f917a7521893ff..859786c5bc99301bbc22fc631a5c2b341860da08
2024-08-26 10:30:48 UTC to 2024-08-26 10:30:48 UTC

- Update primitives.md with examples (rust-lang/rust-by-example#1878)

## rust-lang/rustc-dev-guide

7 commits in 43d83780db545a1ed6d45773312fc578987e3968..fa928a6d19e1666d8d811dfe3fd35cdad3b4e459
2024-08-26 14:46:50 UTC to 2024-08-12 21:07:49 UTC

- Fix x.py reference (rust-lang/rustc-dev-guide#2049)
- Update `stabilization_guide.md` (rust-lang/rustc-dev-guide#2034)
- Explain the internal `#[rustc_*]` TEST attributes used for debugging and inside tests (rust-lang/rustc-dev-guide#2046)
- missing char (rust-lang/rustc-dev-guide#2047)
- Replace direct http links to rustc-dev-guide.rust-lang.org (rust-lang/rustc-dev-guide#2044)
- Update index.html, 39. The MIR: fix typo (rust-lang/rustc-dev-guide#2043)
- Update LLVM docs (rust-lang/rustc-dev-guide#2039)
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request Aug 29, 2024
Update books

## rust-lang/book

4 commits in 04bc1396bb857f35b5dda1d773c9571e1f253304..e7d217be2a75ef1753f0988d6ccaba4d7e376259
2024-08-14 01:19:47 UTC to 2024-08-13 16:51:00 UTC

- Backport/forward port ch12 (rust-lang/book#4008)
- Found some more things to fix in ch7; I forgot to update the snapshot (rust-lang/book#4007)
- Remove redundant sentence. Send to nostarch (rust-lang/book#4006)
- Fix: typo (rust-lang/book#4003)

## rust-lang/edition-guide

5 commits in aeeb287d41a0332c210da122bea8e0e91844ab3e..eeba2cb9c37ab74118a4fb5e5233f7397e4a91f8
2024-08-19 23:28:06 UTC to 2024-08-15 15:12:33 UTC

- 2024: Add rustdoc combined doctests (rust-lang/edition-guide#320)
- Update for unsafe attributes stabilization (rust-lang/edition-guide#319)
- 2024: Add macro-fragment-specifiers. (rust-lang/edition-guide#312)
- Fix deprecated_safe_2024 link (rust-lang/edition-guide#317)
- Add 2024 unsafe functions (rust-lang/edition-guide#304)

## rust-embedded/book

1 commits in 019f3928d8b939ec71b63722dcc2e46330156441..ff5d61d56f11e1986bfa9652c6aff7731576c37d
2024-08-20 07:26:19 UTC to 2024-08-20 07:26:19 UTC

- Use aligned address to demonstrate HardFault (rust-embedded/book#374)

## rust-lang/nomicon

1 commits in 6ecf95c5f2bfa0e6314dfe282bf775fd1405f7e9..14649f15d232d509478206ee9ed5105641aa60d0
2024-08-14 14:49:09 UTC to 2024-08-14 14:49:09 UTC

- CI: Switch to merge queue (rust-lang/nomicon#459)

## rust-lang/reference

14 commits in 62cd0df95061ba0ac886333f5cd7f3012f149da1..0668397076da350c404dadcf07b6cbc433ad3743
2024-08-11 21:06:12 +0000 to 2024-08-27 21:47:20 +0000
- Update enum.md (rust-lang/reference#1354)
- Be consistent about how "Edition differences" is capitalized (rust-lang/reference#1586)
- Sync denied lints with upstream (rust-lang/reference#1589)
- const_eval: update for const-fn float stabilization (rust-lang/reference#1566)
- Add spec identifier syntax to destructors.md (rust-lang/reference#1571)
- Say that `pub(in path)` can't depend on `use` statements (rust-lang/reference#1559)
- bytes inside implicitly const-promoted expressions are immutable (rust-lang/reference#1554)
- Tweak `repr(transparent)` to mention requiring *at most* one non-1-ZST (rust-lang/reference#1568)
- operator expressions: add &raw (rust-lang/reference#1567)
- Rewrite the automatic std link translation, and switch to automatic links (rust-lang/reference#1578)
- Add some basic docs for unsafe attrs (rust-lang/reference#1539)
- don't capitalize Undefined Behavior (rust-lang/reference#1575)
- add the `const` operand to docs for inline assembly (rust-lang/reference#1556)
- Typo: 'a' to 'an' in type-coercions.md (rust-lang/reference#1572)

## rust-lang/rust-by-example

1 commits in 8f94061936e492159f4f6c09c0f917a7521893ff..859786c5bc99301bbc22fc631a5c2b341860da08
2024-08-26 10:30:48 UTC to 2024-08-26 10:30:48 UTC

- Update primitives.md with examples (rust-lang/rust-by-example#1878)

## rust-lang/rustc-dev-guide

7 commits in 43d83780db545a1ed6d45773312fc578987e3968..fa928a6d19e1666d8d811dfe3fd35cdad3b4e459
2024-08-26 14:46:50 UTC to 2024-08-12 21:07:49 UTC

- Fix x.py reference (rust-lang/rustc-dev-guide#2049)
- Update `stabilization_guide.md` (rust-lang/rustc-dev-guide#2034)
- Explain the internal `#[rustc_*]` TEST attributes used for debugging and inside tests (rust-lang/rustc-dev-guide#2046)
- missing char (rust-lang/rustc-dev-guide#2047)
- Replace direct http links to rustc-dev-guide.rust-lang.org (rust-lang/rustc-dev-guide#2044)
- Update index.html, 39. The MIR: fix typo (rust-lang/rustc-dev-guide#2043)
- Update LLVM docs (rust-lang/rustc-dev-guide#2039)
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Aug 29, 2024
Rollup merge of rust-lang#129617 - rustbot:docs-update, r=ehuss

Update books

## rust-lang/book

4 commits in 04bc1396bb857f35b5dda1d773c9571e1f253304..e7d217be2a75ef1753f0988d6ccaba4d7e376259
2024-08-14 01:19:47 UTC to 2024-08-13 16:51:00 UTC

- Backport/forward port ch12 (rust-lang/book#4008)
- Found some more things to fix in ch7; I forgot to update the snapshot (rust-lang/book#4007)
- Remove redundant sentence. Send to nostarch (rust-lang/book#4006)
- Fix: typo (rust-lang/book#4003)

## rust-lang/edition-guide

5 commits in aeeb287d41a0332c210da122bea8e0e91844ab3e..eeba2cb9c37ab74118a4fb5e5233f7397e4a91f8
2024-08-19 23:28:06 UTC to 2024-08-15 15:12:33 UTC

- 2024: Add rustdoc combined doctests (rust-lang/edition-guide#320)
- Update for unsafe attributes stabilization (rust-lang/edition-guide#319)
- 2024: Add macro-fragment-specifiers. (rust-lang/edition-guide#312)
- Fix deprecated_safe_2024 link (rust-lang/edition-guide#317)
- Add 2024 unsafe functions (rust-lang/edition-guide#304)

## rust-embedded/book

1 commits in 019f3928d8b939ec71b63722dcc2e46330156441..ff5d61d56f11e1986bfa9652c6aff7731576c37d
2024-08-20 07:26:19 UTC to 2024-08-20 07:26:19 UTC

- Use aligned address to demonstrate HardFault (rust-embedded/book#374)

## rust-lang/nomicon

1 commits in 6ecf95c5f2bfa0e6314dfe282bf775fd1405f7e9..14649f15d232d509478206ee9ed5105641aa60d0
2024-08-14 14:49:09 UTC to 2024-08-14 14:49:09 UTC

- CI: Switch to merge queue (rust-lang/nomicon#459)

## rust-lang/reference

14 commits in 62cd0df95061ba0ac886333f5cd7f3012f149da1..0668397076da350c404dadcf07b6cbc433ad3743
2024-08-11 21:06:12 +0000 to 2024-08-27 21:47:20 +0000
- Update enum.md (rust-lang/reference#1354)
- Be consistent about how "Edition differences" is capitalized (rust-lang/reference#1586)
- Sync denied lints with upstream (rust-lang/reference#1589)
- const_eval: update for const-fn float stabilization (rust-lang/reference#1566)
- Add spec identifier syntax to destructors.md (rust-lang/reference#1571)
- Say that `pub(in path)` can't depend on `use` statements (rust-lang/reference#1559)
- bytes inside implicitly const-promoted expressions are immutable (rust-lang/reference#1554)
- Tweak `repr(transparent)` to mention requiring *at most* one non-1-ZST (rust-lang/reference#1568)
- operator expressions: add &raw (rust-lang/reference#1567)
- Rewrite the automatic std link translation, and switch to automatic links (rust-lang/reference#1578)
- Add some basic docs for unsafe attrs (rust-lang/reference#1539)
- don't capitalize Undefined Behavior (rust-lang/reference#1575)
- add the `const` operand to docs for inline assembly (rust-lang/reference#1556)
- Typo: 'a' to 'an' in type-coercions.md (rust-lang/reference#1572)

## rust-lang/rust-by-example

1 commits in 8f94061936e492159f4f6c09c0f917a7521893ff..859786c5bc99301bbc22fc631a5c2b341860da08
2024-08-26 10:30:48 UTC to 2024-08-26 10:30:48 UTC

- Update primitives.md with examples (rust-lang/rust-by-example#1878)

## rust-lang/rustc-dev-guide

7 commits in 43d83780db545a1ed6d45773312fc578987e3968..fa928a6d19e1666d8d811dfe3fd35cdad3b4e459
2024-08-26 14:46:50 UTC to 2024-08-12 21:07:49 UTC

- Fix x.py reference (rust-lang/rustc-dev-guide#2049)
- Update `stabilization_guide.md` (rust-lang/rustc-dev-guide#2034)
- Explain the internal `#[rustc_*]` TEST attributes used for debugging and inside tests (rust-lang/rustc-dev-guide#2046)
- missing char (rust-lang/rustc-dev-guide#2047)
- Replace direct http links to rustc-dev-guide.rust-lang.org (rust-lang/rustc-dev-guide#2044)
- Update index.html, 39. The MIR: fix typo (rust-lang/rustc-dev-guide#2043)
- Update LLVM docs (rust-lang/rustc-dev-guide#2039)
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Aug 30, 2024
Update books

## rust-lang/book

4 commits in 04bc1396bb857f35b5dda1d773c9571e1f253304..e7d217be2a75ef1753f0988d6ccaba4d7e376259
2024-08-14 01:19:47 UTC to 2024-08-13 16:51:00 UTC

- Backport/forward port ch12 (rust-lang/book#4008)
- Found some more things to fix in ch7; I forgot to update the snapshot (rust-lang/book#4007)
- Remove redundant sentence. Send to nostarch (rust-lang/book#4006)
- Fix: typo (rust-lang/book#4003)

## rust-lang/edition-guide

5 commits in aeeb287d41a0332c210da122bea8e0e91844ab3e..eeba2cb9c37ab74118a4fb5e5233f7397e4a91f8
2024-08-19 23:28:06 UTC to 2024-08-15 15:12:33 UTC

- 2024: Add rustdoc combined doctests (rust-lang/edition-guide#320)
- Update for unsafe attributes stabilization (rust-lang/edition-guide#319)
- 2024: Add macro-fragment-specifiers. (rust-lang/edition-guide#312)
- Fix deprecated_safe_2024 link (rust-lang/edition-guide#317)
- Add 2024 unsafe functions (rust-lang/edition-guide#304)

## rust-embedded/book

1 commits in 019f3928d8b939ec71b63722dcc2e46330156441..ff5d61d56f11e1986bfa9652c6aff7731576c37d
2024-08-20 07:26:19 UTC to 2024-08-20 07:26:19 UTC

- Use aligned address to demonstrate HardFault (rust-embedded/book#374)

## rust-lang/nomicon

1 commits in 6ecf95c5f2bfa0e6314dfe282bf775fd1405f7e9..14649f15d232d509478206ee9ed5105641aa60d0
2024-08-14 14:49:09 UTC to 2024-08-14 14:49:09 UTC

- CI: Switch to merge queue (rust-lang/nomicon#459)

## rust-lang/reference

14 commits in 62cd0df95061ba0ac886333f5cd7f3012f149da1..0668397076da350c404dadcf07b6cbc433ad3743
2024-08-11 21:06:12 +0000 to 2024-08-27 21:47:20 +0000
- Update enum.md (rust-lang/reference#1354)
- Be consistent about how "Edition differences" is capitalized (rust-lang/reference#1586)
- Sync denied lints with upstream (rust-lang/reference#1589)
- const_eval: update for const-fn float stabilization (rust-lang/reference#1566)
- Add spec identifier syntax to destructors.md (rust-lang/reference#1571)
- Say that `pub(in path)` can't depend on `use` statements (rust-lang/reference#1559)
- bytes inside implicitly const-promoted expressions are immutable (rust-lang/reference#1554)
- Tweak `repr(transparent)` to mention requiring *at most* one non-1-ZST (rust-lang/reference#1568)
- operator expressions: add &raw (rust-lang/reference#1567)
- Rewrite the automatic std link translation, and switch to automatic links (rust-lang/reference#1578)
- Add some basic docs for unsafe attrs (rust-lang/reference#1539)
- don't capitalize Undefined Behavior (rust-lang/reference#1575)
- add the `const` operand to docs for inline assembly (rust-lang/reference#1556)
- Typo: 'a' to 'an' in type-coercions.md (rust-lang/reference#1572)

## rust-lang/rust-by-example

1 commits in 8f94061936e492159f4f6c09c0f917a7521893ff..859786c5bc99301bbc22fc631a5c2b341860da08
2024-08-26 10:30:48 UTC to 2024-08-26 10:30:48 UTC

- Update primitives.md with examples (rust-lang/rust-by-example#1878)

## rust-lang/rustc-dev-guide

7 commits in 43d83780db545a1ed6d45773312fc578987e3968..fa928a6d19e1666d8d811dfe3fd35cdad3b4e459
2024-08-26 14:46:50 UTC to 2024-08-12 21:07:49 UTC

- Fix x.py reference (rust-lang/rustc-dev-guide#2049)
- Update `stabilization_guide.md` (rust-lang/rustc-dev-guide#2034)
- Explain the internal `#[rustc_*]` TEST attributes used for debugging and inside tests (rust-lang/rustc-dev-guide#2046)
- missing char (rust-lang/rustc-dev-guide#2047)
- Replace direct http links to rustc-dev-guide.rust-lang.org (rust-lang/rustc-dev-guide#2044)
- Update index.html, 39. The MIR: fix typo (rust-lang/rustc-dev-guide#2043)
- Update LLVM docs (rust-lang/rustc-dev-guide#2039)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-stabilization Waiting for a stabilization PR to be merged in the main Rust repository
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Document restrictions on use of generics in const contexts in type position
7 participants