@@ -59,9 +59,6 @@ Please read the [Rustonomicon] before writing unsafe code.
59
59
* Executing code compiled with platform features that the current platform
60
60
does not support (see [ ` target_feature ` ] ), * except* if the platform explicitly documents this to be safe.
61
61
* Calling a function with the wrong [ call ABI] [ abi ] .
62
- * Deallocating a Rust stack frame without executing destructors
63
- for local variables owned by the stack frame. This can occur
64
- with C functions like ` longjmp ` .
65
62
* Producing an [ invalid value] [ invalid-values ] . "Producing" a
66
63
value happens any time a value is assigned to or read from a place, passed to
67
64
a function/primitive operation or returned from a function/primitive
@@ -75,8 +72,11 @@ Please read the [Rustonomicon] before writing unsafe code.
75
72
cast, e.g. by doing raw pointer casts or using a union.
76
73
* Violating assumptions of the Rust runtime. This is only possible using
77
74
mechanisms outside Rust. Most assumptions of the Rust runtime are currently
78
- not explicitly documented. For assumptions specifically related to unwinding,
79
- see [ unwinding-ub] .
75
+ not explicitly documented.
76
+ * For assumptions specifically related to unwinding, see [ unwinding-ub] .
77
+ * Deallocating a Rust stack frame without executing destructors for local
78
+ variables owned by the stack frame is always undefined. This can occur with
79
+ C functions like ` longjmp ` .
80
80
81
81
> ** Note** : Undefined behavior affects the entire program. For example, calling
82
82
> a function in C that exhibits undefined behavior of C means your entire
0 commit comments