diff options
| author | asquared31415 <34665709+asquared31415@users.noreply.github.com> | 2021-08-25 00:19:22 -0400 |
|---|---|---|
| committer | asquared31415 <34665709+asquared31415@users.noreply.github.com> | 2021-08-25 00:19:22 -0400 |
| commit | 8769b99ef098f3e7e899800f9dcf5accd5e1320a (patch) | |
| tree | 593e88996057f7a9c4cb00c604bc915b0608ee07 | |
| parent | 81412f1af6da5cb3653c23ec02b3627494ebf0c1 (diff) | |
| download | rust-8769b99ef098f3e7e899800f9dcf5accd5e1320a.tar.gz rust-8769b99ef098f3e7e899800f9dcf5accd5e1320a.zip | |
remove mention of ICEs/segfaults
| -rw-r--r-- | src/doc/unstable-book/src/library-features/asm.md | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/doc/unstable-book/src/library-features/asm.md b/src/doc/unstable-book/src/library-features/asm.md index 2bb7e4ec266..4715388408f 100644 --- a/src/doc/unstable-book/src/library-features/asm.md +++ b/src/doc/unstable-book/src/library-features/asm.md @@ -367,11 +367,11 @@ unsafe { ## Labels -Any reuse of a named label, local or otherwise, can result in a assembler or linker error in the best case, ICEs or segfaults in the compiler in other cases, and generally unexpected behavior. Reuse of a named label can happen in a variety of ways including: +Any reuse of a named label, local or otherwise, can result in a assembler or linker error or may cause other strange behavior. Reuse of a named label can happen in a variety of ways including: - explicitly: using a label more than once in one `asm!` block, or multiple times across blocks - implicitly via inlining: the compiler is allowed to instantiate multiple copies of an `asm!` block, for example when the function containing it is inlined in multiple places. -- implicitly via LTO: LTO can cause code from _other crates_ to be placed in the same codegen unit, and so could bring in arbitrary labels +- implicitly via LTO: LTO can cause code from *other crates* to be placed in the same codegen unit, and so could bring in arbitrary labels As a consequence, you should only use GNU assembler **numeric** [local labels] inside inline assembly code. Defining symbols in assembly code may lead to assembler and/or linker errors due to duplicate symbol definitions. |
