Skip to content

Commit 8769b99

Browse files
committed
remove mention of ICEs/segfaults
1 parent 81412f1 commit 8769b99

File tree

1 file changed

+2
-2
lines changed
  • src/doc/unstable-book/src/library-features

1 file changed

+2
-2
lines changed

Diff for: src/doc/unstable-book/src/library-features/asm.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -367,11 +367,11 @@ unsafe {
367367

368368
## Labels
369369

370-
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:
370+
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:
371371

372372
- explicitly: using a label more than once in one `asm!` block, or multiple times across blocks
373373
- 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.
374-
- 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
374+
- 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
375375

376376
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.
377377

0 commit comments

Comments
 (0)