-
Notifications
You must be signed in to change notification settings - Fork 493
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
Expand and clarify primitive alignment #1493
Conversation
These changes are intended to make the section more informative and readable, without making any new normative claims. * Specify that the alignment might be _less_ than the size, rather than just that it might be different. This is mandatory and stated in the previous section, but I think it's useful to reiterate here. * Mention `u128`/`i128` as another example of alignment less than size, so that this doesn't sound like a mainly 32-bit thing. * Add `usize`/`isize` to the size table, so it can be spotted at a glance.
Sorry, I'm not quite following this. Where is it stated that the alignment must be |
The previous section, “Size and Alignment”:
This means that either the alignment is less than or equal to the size, or the size is zero (which does not apply to any of the types in this list). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
Update books ## rust-lang/book 41 commits in 3131aa4642c627a24f523c82566b94a7d920f68c..d207d894cc5e1d496ab99beeacd1a420e5d4d238 2024-04-19 19:48:19 UTC to 2024-04-08 19:34:07 UTC - Ch. 2: intentionally use `{}` at first (rust-lang/book#3898) - Inline fmt lints for `redirects/` (rust-lang/book#3897) - ch12-03: `expect` is not used multitude times by this chapter (rust-lang/book#3287) - Inline format args to `tools/src` (rust-lang/book#3896) - Improve awkward phrasing around the kinds of closures (rust-lang/book#3290) - Ch. 14: clarify workspace dependency reuse (rust-lang/book#3890) - Edit on line no. 153. Replaced fn add_to_waitlist with fn eat_at_restaurant. (rust-lang/book#3281) - Ch. 2: less ambiguity about numbers (rust-lang/book#3895) - Clarified first slices paragraph (rust-lang/book#3363) - Inline all format arguments (rust-lang/book#3385) - Use v1.58 captured ident formatting in examples (rust-lang/book#3048) - Revert "ch18-03: Guarded match arm exhaustivness clarification" (rust-lang/book#3894) - Ch. 18: further clarify about irrefutable patterns (rust-lang/book#3893) - ch18-02: Minor corrections (rust-lang/book#3381) - Make style of listings 9-7 and 9-8 consistent with 9-6 (rust-lang/book#3217) - ch18-03: Guarded match arm exhaustivness clarification (rust-lang/book#3397) - ch11-03: Unnecessary import removal (rust-lang/book#3284) - Update ch20-01-single-threaded.md (rust-lang/book#3394) - In Appendix D, adds hyperlink to Appendix E (rust-lang/book#3418) - Chapter 13-03 fixed Iterator 'type' to 'trait' (rust-lang/book#3433) - Fix the expected substring in ch11-01 (rust-lang/book#3534) - Ch. 17: clarify 'in order to compile' (rust-lang/book#3892) - Revert "Chapter 15-05: Fix incorrect interpretation of compiler error" (rust-lang/book#3891) - Chapter 15-05: Fix incorrect interpretation of compiler error (rust-lang/book#3501) - Remove direction to authenticate with `cargo login {API token}` (rust-lang/book#3506) - Update syn dependencies in Chapter 19 to 2.0 (rust-lang/book#3888) - Chapter 3: Clarify `return` vs. `break`. (rust-lang/book#3889) - Fix "`Display` type" to "`Display` trait" in ch19-03 (rust-lang/book#3835) - Update listings in ch 11-01 to reflect current output from cargo new (rust-lang/book#3533) - Fix "`test` module" to "`tests` module" in ch11-03 (rust-lang/book#3579) - Ch. 2: fix wording about `cargo update` (rust-lang/book#3882) - Remove hebrew niqqud in 8-14 String::from example (rust-lang/book#3648) - Ch. 16: fix a grammar issue (rust-lang/book#3881) - Update MSVC instructions (rust-lang/book#3616) - Replace RLS with rust-analyzer in ch00 (rust-lang/book#3546) - Fix em dashes (rust-lang/book#3570) - Revert rust-lang#3711 (rust-lang/book#3880) - Procedure Macro: Update dependencies (rust-lang/book#3631) - Parity with rustup's help (rust-lang/book#3642) - Fix confusing sentence (rust-lang/book#3877) - Ch. 7: add a note about the need for `pub` in one more place (rust-lang/book#3879) ## rust-lang/edition-guide 2 commits in eb3eb80e106d03250c1fb7c5666b1c8c59672862..0c68e90acaae5a611f8f5098a3c2980de9845ab2 2024-04-16 21:23:55 UTC to 2024-04-15 16:05:32 UTC - Document RustcEncodable/RustcDecodable (rust-lang/edition-guide#298) - Flesh out detail behind disallowing refs to static mut (rust-lang/edition-guide#299) ## rust-lang/reference 5 commits in 55694913b1301cc809f9bf4a1ad1b3d6920efbd9..5854fcc286557ad3ab34d325073d11d8118096b6 2024-04-21 13:47:07 UTC to 2024-04-15 16:12:40 UTC - Stabilize Wasm target features that are in phase 4 and 5 (rust-lang/reference#1420) - Expand and clarify primitive alignment (rust-lang/reference#1493) - Update clone reference to include closures (rust-lang/reference#1492) - Document how `non_exhaustive` interacts with tuple and unit-like structs. (rust-lang/reference#1491) - Fix link to RISC-V Zkt spec; it was pointing to Zkr (rust-lang/reference#1490) ## rust-lang/rustc-dev-guide 4 commits in b77a34bd46399687b4ce6a17198e9f316c988794..07425fed36b00e60341c5e29e28d37d40cbd4451 2024-04-13 15:16:44 UTC to 2024-04-08 19:00:54 UTC - Add a note about checks with multiple revisions (rust-lang/rustc-dev-guide#1963) - compiletest: clarify that headers must be one header per line (rust-lang/rustc-dev-guide#1962) - chore: fix some typos in conments (rust-lang/rustc-dev-guide#1961) - compiletest: specify which special env var and which particular CI job (rust-lang/rustc-dev-guide#1960)
Rollup merge of rust-lang#124268 - rustbot:docs-update, r=ehuss Update books ## rust-lang/book 41 commits in 3131aa4642c627a24f523c82566b94a7d920f68c..d207d894cc5e1d496ab99beeacd1a420e5d4d238 2024-04-19 19:48:19 UTC to 2024-04-08 19:34:07 UTC - Ch. 2: intentionally use `{}` at first (rust-lang/book#3898) - Inline fmt lints for `redirects/` (rust-lang/book#3897) - ch12-03: `expect` is not used multitude times by this chapter (rust-lang/book#3287) - Inline format args to `tools/src` (rust-lang/book#3896) - Improve awkward phrasing around the kinds of closures (rust-lang/book#3290) - Ch. 14: clarify workspace dependency reuse (rust-lang/book#3890) - Edit on line no. 153. Replaced fn add_to_waitlist with fn eat_at_restaurant. (rust-lang/book#3281) - Ch. 2: less ambiguity about numbers (rust-lang/book#3895) - Clarified first slices paragraph (rust-lang/book#3363) - Inline all format arguments (rust-lang/book#3385) - Use v1.58 captured ident formatting in examples (rust-lang/book#3048) - Revert "ch18-03: Guarded match arm exhaustivness clarification" (rust-lang/book#3894) - Ch. 18: further clarify about irrefutable patterns (rust-lang/book#3893) - ch18-02: Minor corrections (rust-lang/book#3381) - Make style of listings 9-7 and 9-8 consistent with 9-6 (rust-lang/book#3217) - ch18-03: Guarded match arm exhaustivness clarification (rust-lang/book#3397) - ch11-03: Unnecessary import removal (rust-lang/book#3284) - Update ch20-01-single-threaded.md (rust-lang/book#3394) - In Appendix D, adds hyperlink to Appendix E (rust-lang/book#3418) - Chapter 13-03 fixed Iterator 'type' to 'trait' (rust-lang/book#3433) - Fix the expected substring in ch11-01 (rust-lang/book#3534) - Ch. 17: clarify 'in order to compile' (rust-lang/book#3892) - Revert "Chapter 15-05: Fix incorrect interpretation of compiler error" (rust-lang/book#3891) - Chapter 15-05: Fix incorrect interpretation of compiler error (rust-lang/book#3501) - Remove direction to authenticate with `cargo login {API token}` (rust-lang/book#3506) - Update syn dependencies in Chapter 19 to 2.0 (rust-lang/book#3888) - Chapter 3: Clarify `return` vs. `break`. (rust-lang/book#3889) - Fix "`Display` type" to "`Display` trait" in ch19-03 (rust-lang/book#3835) - Update listings in ch 11-01 to reflect current output from cargo new (rust-lang/book#3533) - Fix "`test` module" to "`tests` module" in ch11-03 (rust-lang/book#3579) - Ch. 2: fix wording about `cargo update` (rust-lang/book#3882) - Remove hebrew niqqud in 8-14 String::from example (rust-lang/book#3648) - Ch. 16: fix a grammar issue (rust-lang/book#3881) - Update MSVC instructions (rust-lang/book#3616) - Replace RLS with rust-analyzer in ch00 (rust-lang/book#3546) - Fix em dashes (rust-lang/book#3570) - Revert rust-lang#3711 (rust-lang/book#3880) - Procedure Macro: Update dependencies (rust-lang/book#3631) - Parity with rustup's help (rust-lang/book#3642) - Fix confusing sentence (rust-lang/book#3877) - Ch. 7: add a note about the need for `pub` in one more place (rust-lang/book#3879) ## rust-lang/edition-guide 2 commits in eb3eb80e106d03250c1fb7c5666b1c8c59672862..0c68e90acaae5a611f8f5098a3c2980de9845ab2 2024-04-16 21:23:55 UTC to 2024-04-15 16:05:32 UTC - Document RustcEncodable/RustcDecodable (rust-lang/edition-guide#298) - Flesh out detail behind disallowing refs to static mut (rust-lang/edition-guide#299) ## rust-lang/reference 5 commits in 55694913b1301cc809f9bf4a1ad1b3d6920efbd9..5854fcc286557ad3ab34d325073d11d8118096b6 2024-04-21 13:47:07 UTC to 2024-04-15 16:12:40 UTC - Stabilize Wasm target features that are in phase 4 and 5 (rust-lang/reference#1420) - Expand and clarify primitive alignment (rust-lang/reference#1493) - Update clone reference to include closures (rust-lang/reference#1492) - Document how `non_exhaustive` interacts with tuple and unit-like structs. (rust-lang/reference#1491) - Fix link to RISC-V Zkt spec; it was pointing to Zkr (rust-lang/reference#1490) ## rust-lang/rustc-dev-guide 4 commits in b77a34bd46399687b4ce6a17198e9f316c988794..07425fed36b00e60341c5e29e28d37d40cbd4451 2024-04-13 15:16:44 UTC to 2024-04-08 19:00:54 UTC - Add a note about checks with multiple revisions (rust-lang/rustc-dev-guide#1963) - compiletest: clarify that headers must be one header per line (rust-lang/rustc-dev-guide#1962) - chore: fix some typos in conments (rust-lang/rustc-dev-guide#1961) - compiletest: specify which special env var and which particular CI job (rust-lang/rustc-dev-guide#1960)
Update books ## rust-lang/book 41 commits in 3131aa4642c627a24f523c82566b94a7d920f68c..d207d894cc5e1d496ab99beeacd1a420e5d4d238 2024-04-19 19:48:19 UTC to 2024-04-08 19:34:07 UTC - Ch. 2: intentionally use `{}` at first (rust-lang/book#3898) - Inline fmt lints for `redirects/` (rust-lang/book#3897) - ch12-03: `expect` is not used multitude times by this chapter (rust-lang/book#3287) - Inline format args to `tools/src` (rust-lang/book#3896) - Improve awkward phrasing around the kinds of closures (rust-lang/book#3290) - Ch. 14: clarify workspace dependency reuse (rust-lang/book#3890) - Edit on line no. 153. Replaced fn add_to_waitlist with fn eat_at_restaurant. (rust-lang/book#3281) - Ch. 2: less ambiguity about numbers (rust-lang/book#3895) - Clarified first slices paragraph (rust-lang/book#3363) - Inline all format arguments (rust-lang/book#3385) - Use v1.58 captured ident formatting in examples (rust-lang/book#3048) - Revert "ch18-03: Guarded match arm exhaustivness clarification" (rust-lang/book#3894) - Ch. 18: further clarify about irrefutable patterns (rust-lang/book#3893) - ch18-02: Minor corrections (rust-lang/book#3381) - Make style of listings 9-7 and 9-8 consistent with 9-6 (rust-lang/book#3217) - ch18-03: Guarded match arm exhaustivness clarification (rust-lang/book#3397) - ch11-03: Unnecessary import removal (rust-lang/book#3284) - Update ch20-01-single-threaded.md (rust-lang/book#3394) - In Appendix D, adds hyperlink to Appendix E (rust-lang/book#3418) - Chapter 13-03 fixed Iterator 'type' to 'trait' (rust-lang/book#3433) - Fix the expected substring in ch11-01 (rust-lang/book#3534) - Ch. 17: clarify 'in order to compile' (rust-lang/book#3892) - Revert "Chapter 15-05: Fix incorrect interpretation of compiler error" (rust-lang/book#3891) - Chapter 15-05: Fix incorrect interpretation of compiler error (rust-lang/book#3501) - Remove direction to authenticate with `cargo login {API token}` (rust-lang/book#3506) - Update syn dependencies in Chapter 19 to 2.0 (rust-lang/book#3888) - Chapter 3: Clarify `return` vs. `break`. (rust-lang/book#3889) - Fix "`Display` type" to "`Display` trait" in ch19-03 (rust-lang/book#3835) - Update listings in ch 11-01 to reflect current output from cargo new (rust-lang/book#3533) - Fix "`test` module" to "`tests` module" in ch11-03 (rust-lang/book#3579) - Ch. 2: fix wording about `cargo update` (rust-lang/book#3882) - Remove hebrew niqqud in 8-14 String::from example (rust-lang/book#3648) - Ch. 16: fix a grammar issue (rust-lang/book#3881) - Update MSVC instructions (rust-lang/book#3616) - Replace RLS with rust-analyzer in ch00 (rust-lang/book#3546) - Fix em dashes (rust-lang/book#3570) - Revert #3711 (rust-lang/book#3880) - Procedure Macro: Update dependencies (rust-lang/book#3631) - Parity with rustup's help (rust-lang/book#3642) - Fix confusing sentence (rust-lang/book#3877) - Ch. 7: add a note about the need for `pub` in one more place (rust-lang/book#3879) ## rust-lang/edition-guide 2 commits in eb3eb80e106d03250c1fb7c5666b1c8c59672862..0c68e90acaae5a611f8f5098a3c2980de9845ab2 2024-04-16 21:23:55 UTC to 2024-04-15 16:05:32 UTC - Document RustcEncodable/RustcDecodable (rust-lang/edition-guide#298) - Flesh out detail behind disallowing refs to static mut (rust-lang/edition-guide#299) ## rust-lang/reference 5 commits in 55694913b1301cc809f9bf4a1ad1b3d6920efbd9..5854fcc286557ad3ab34d325073d11d8118096b6 2024-04-21 13:47:07 UTC to 2024-04-15 16:12:40 UTC - Stabilize Wasm target features that are in phase 4 and 5 (rust-lang/reference#1420) - Expand and clarify primitive alignment (rust-lang/reference#1493) - Update clone reference to include closures (rust-lang/reference#1492) - Document how `non_exhaustive` interacts with tuple and unit-like structs. (rust-lang/reference#1491) - Fix link to RISC-V Zkt spec; it was pointing to Zkr (rust-lang/reference#1490) ## rust-lang/rustc-dev-guide 4 commits in b77a34bd46399687b4ce6a17198e9f316c988794..07425fed36b00e60341c5e29e28d37d40cbd4451 2024-04-13 15:16:44 UTC to 2024-04-08 19:00:54 UTC - Add a note about checks with multiple revisions (rust-lang/rustc-dev-guide#1963) - compiletest: clarify that headers must be one header per line (rust-lang/rustc-dev-guide#1962) - chore: fix some typos in conments (rust-lang/rustc-dev-guide#1961) - compiletest: specify which special env var and which particular CI job (rust-lang/rustc-dev-guide#1960)
These changes are intended to make the section more informative and readable, without making any new normative claims.
u128
/i128
as another example of alignment less than size, so that this doesn't sound like a mainly 32-bit thing.usize
/isize
to the size table, so it can be spotted at a glance.