티스토리 뷰

컴파일 할 때 statement is unreachable 경고가 뜨는 이유

"Warning : statement is unreachable"이란 warning 메시지가 나왔다. 이런 경고는 어떤 때에 나오는지 기록해 놓는다.


결코 가지 못하는 구문이여..

아래 구문을 한번 보자. 뭔가 잘못된 부분이 하나 있다. 찾을 수 있을까? 바로 if 구문의 맨 끝에 세미콜론(;)이 엉뚱하게 붙어 있다. 원래는 if문의 조건을 판단해서 상태가 false이면 리턴값을 false로 넘겨야 하는데 항상 반환 값이 false가 되버렸다. 따라서 맨 마지막의 return 구문은 절대 실행할 수 없는 구문이 되버린다. 이 때에 컴파일하면 경고 메시지가 뜨는데 statement is unreachable. 즉 구문에 도달할 수 없다는 것이지. 이런 타이핑 오류는 간혹 일어나곤 하는데 그냥 넘어가면 정말 골치아프다. 흠흠..


bool function_a( void )

{

    if (g_status == false);

        return false;

    return true;