2011-12-14 3 views
11

해피를 사용하여 파서를 생성하고 있습니다."내부 해피 오류"무시 - notHappyAtAll

최상위 레벨보다 낮은 레벨에서 문법의 일부와 일치하는 토큰을 제공하면 (예 : 자체에 표현식을 부여하는 것과 같이 문에 포함되지 않음) 구문 분석 오류가 아닌 "내부 해피 오류"

notHappyAtAll을 재정 의하여 "내부 해피 오류"보다 우수한 오류 메시지를 인쇄 할 수 있습니까? 당연히 자동 생성 파서 파일을 변경하는 것 이외에는 문법을 업데이트 할 때마다해야 할 것입니다.

+1

[행복한 문서] (http://haskell.org/happy/doc/html/sec-monads.html#sec-exception) 도움이 될까요? 면책 조항 : 어쩌면 그들은하지 않습니다. –

+0

항상 문법의 최상위 레벨이 아닌 "조각"을 찾으려면 여러 시작 기호가 필요합니다 - 해피 매뉴얼 2.7 절을 참조하십시오. –

+0

문법의 맨 위에 오류 지시문을 정의 했습니까? 이것은'% error {parseError}'형식이어야합니다 -'parseError'는 사용자가 정의한 함수입니다. 설명서 2 장을 참조하십시오. –

답변

1

이 문제는 Happy 1.18.7에서 수정 된 것으로 보입니다.