저는 emacs cedet 사용자입니다. 나는 큰의 도움을 cedet에서 얻었다.#ifdef에서 cedet 구문 분석 문제가 발생했습니다.
하지만 cedet에서 #ifdef 처리 오류를 발견했습니다. 내부 또는 내부 구성이 잘못된 것일 수 있습니다. Curl에서이 문제가 발생하는 일부 코드를 인용합니다.
#ifdef CURL_DO_LINEEND_CONV
if((data->set.crlf) || (data->set.prefer_ascii)) {
#else
if(data->set.crlf) {
#endif /* CURL_DO_LINEEND_CONV */
endofline_native = "\n";
이 코드를 사용하면 잘못된 괄호 일치가 있어야합니다. (eassist-list-methods) 또는 다른 cedet-semantic 함수 (정의로 건너 뛰기)를 사용하여 오류가 발생했기 때문입니다.
#ifdef .. #endif 블록에있는 두 개의 중괄호에서 쉽게 추측 할 수 있습니다. 나는 이것을 좋아하기로 계약했다.
#ifdef CURL_DO_LINEEND_CONV
if((data->set.crlf) || (data->set.prefer_ascii))
#else
if(data->set.crlf)
#endif /* CURL_DO_LINEEND_CONV */
{
endofline_native = "\n";
다음에 cedet 의미 론적 기능이 잘 작동합니다.
이것에 대한 아이디어가 있으십니까? cedet 파서 문제 때문입니까?
내가 설정해야 할 부분이 있다면, 통찰력을 좀 주시겠습니까?
감사
버그 리포트를 제출 고려하시기 바랍니다 :'MX 보고서 - 이맥스 -bug'. Emacs 개발자는 문제가 있는지 여부를 결정합니다. – Drew
cedet-devel 메일 링리스트에 문제를보고하십시오. –