러스트에서 에러는 복구 가능한(recoverable) 에러와 복구 불가능한(unrecoverable) 에러 두 가지가 존재한다. 러스트는 다른 프로그래밍 언어에서 사용하는 예외처리 기능이 없고 Resut 타입과 panic! 매크로를 사용해 에러를 잡는다. 복구 불가능한 에러는 panic! 매크로를 사용해 해결한다. 패닉을 일으키는 방법은 다음과 같다. 1. 코드가 패닉을 일으키는 동작을 할 때 (예시: 배열의 마지막 인덱스를 넘어선 접근) 2. panic! 매크로를 명시적으로 호출할 때 패닉이 발생하면 실패 메시지를 출력하고 unwind한 뒤 스택을 청소하고 종료한다. 패닉의 근원을 찾기 위해 호출 스택을 볼 수도 있다. 참고로 패닉 발생 시 unwind가 시작되면 스택을 훑어가며 데이터를 청소하는 과정..