C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[74625] Re:C++Builder 10.2 Tokyo버전에서 LLVM 컴파일러 사용하면, 디버깅 모든 기능을 사용할수 없나요?
빌더(TWx) [builder] 3590 읽음    2017-10-21 10:41
뽀뽀중 님이 쓰신 글 :
: Use 'classic' Borland compiler 를 false 하면
: CLANG/LLVM 를 사용하는 것으로 알고 있습니다.
:
: Borland 컴파일러를 사용여 디버깅 할 경우, 변수위에 마우스를 올려놓고 기다리면, 값을 알수 있어 유용하게 사용을 하였습니다.
: 공개된 c++ 소스를 사용하다 보니, Borland 컴파일러는 경고 및 에러가 발생하여 CLANG/LLVM 를 사용하고 있습니다.
:
: 그런데, 디버깅 모드에서 변수 위에 마우스를 올려 놓아도 변수값을 알수가 없습니다.
: 원래 이런 것인가요???
:
:
: 또 다른문제...
:
: pair 와 vector를 사용해서 자료를 저장해서 사용하려, 아래와 같이 작성을 하였습니다.
:
: vector<pair<AnsiString, int>>vpRainData
:
: CLANG/LLVM에서는 경고나 에러없이 잘 컴파일 되는데, Borland 컴파일러를 사용하면, 에러가 발생합니다.
: Borland 컴파일러는 위와 같은 구문을 컴파일 할수 없나요??
:
: 너무도 불편하네요..



답변:


1.
엠바툴이 워낙에 IDE, 디버거 환경이 부실해요.
변수 정보가 안나타나는 것은 그나마 양호한 겁니다.
원인을 모르게 코드컴플리트가 일어날 때, IDE가 먹통이 되는 경우가 자주 발생하는데
IDE 를 킬하고 다시 시작하지 않으면 꼼짝도 안하거든요.


2.
vector<pair<AnsiString, int>>vpRainData

위 구문이 clang 포팅 컴파일러에서는 에러 없이 컴파일 되는데...
Borland C++ 컴파일러를 사용하면 에러가 발생하는 이유는

Borland C++ 컴파일러가 템플릿코드를 파싱할 때, 오른쪽 끝의 ">>" 가 공백없이 붙어 있을 경우
템플릿 파싱을 제대로 하지 못해서 입니다.

Borland C++ 컴파일러로 컴파일 하려면...

vector< pair<AnsiString, int> >vpRainData

와 같은 식으로 오른쪽 끝의 ">>"를 공백을 넣어서 "> >" 로 해줘야 파싱을 정상적으로 합니다.

Borland C++ 컴파일러가...
오퍼레이터로 사용되는 ">>"와 템플릿에서 T 파라미터 인수를 지정하는 ">>"를
구분해서 파싱하지 못해서 일어나는 문제 입니다.





+ -

관련 글 리스트
74624 C++Builder 10.2 Tokyo버전에서 LLVM 컴파일러 사용하면, 디버깅 모든 기능을 사용할수 없나요? 뽀뽀중 3355 2017/10/20
74625     Re:C++Builder 10.2 Tokyo버전에서 LLVM 컴파일러 사용하면, 디버깅 모든 기능을 사용할수 없나요? 빌더(TWx) 3590 2017/10/21
74626         Re:Re:C++Builder 10.2 Tokyo버전에서 LLVM 컴파일러 사용하면, 디버깅 모든 기능을 사용할수 없나요? 뽀뽀중 3387 2017/10/23
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.