From fff27923f3fec729111805b71ef8184e4ca59b7d Mon Sep 17 00:00:00 2001 From: nomicon-kr Date: Sat, 22 Jun 2024 21:54:17 +0900 Subject: [PATCH] Update what-unsafe-does.md --- src/what-unsafe-does.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/what-unsafe-does.md b/src/what-unsafe-does.md index 7efb99e..9bfe070 100644 --- a/src/what-unsafe-does.md +++ b/src/what-unsafe-does.md @@ -16,11 +16,9 @@ C와 다르게, 미정의 동작은 러스트에서는 꽤 제한되어 있습 * 달랑거리거나 정렬되어 있지 않은 포인터를 역참조하는 것 (`*` 연산자를 사용해서) (밑 참조) * [레퍼런스 규칙][alias] 을 지키지 않는 것 * 잘못된 호출 ABI를 이용해 함수를 호출하거나 잘못된 되감기 ABI를 가지고 있는 함수에서 되감는 것 -* [data race][race] 를 일으키는 것 +* [데이터 경합][race] 을 일으키는 것 +* 지금 실행하는 스레드가 지원하지 않는 [타겟 기능들][target] 로 컴파일된 코드를 실행하는 것 - -* Executing code compiled with [target features][] that the current thread of execution does - not support * Producing invalid values (either alone or as a field of a compound type such as `enum`/`struct`/array/tuple): * a `bool` that isn't 0 or 1 @@ -84,9 +82,9 @@ incorrect. Rust provides lots of tools to make these things rare, but these problems are considered impractical to categorically prevent. [alias]: references.html -[uninitialized memory]: uninitialized.html +[uninit]: uninitialized.html [race]: races.html -[target features]: ../reference/attributes/codegen.html#the-target_feature-attribute +[target]: ../reference/attributes/codegen.html#the-target_feature-attribute [`NonNull`]: ../std/ptr/struct.NonNull.html [behavior-considered-undefined]: ../reference/behavior-considered-undefined.html [behavior-not-considered-unsafe]: ../reference/behavior-not-considered-unsafe.html