The breakpoint will not currently be hit. No executable code is associated with this line. Possible causes include: conditional compilation or complier optimizations.
디버깅 중에 이런 메시지가 뜨면서 breakpoint가 잡히지 않았다.
그래서 원하는 동작을 하지 않고 프로그램이 이상하게 동작했다.
Debug 모드는 괜찮은데 Release 모드에서만 왜 이렇지? 하고 Property pages에서 하나 하나 검토해봤다.
그 중 의심스러웠던 Optimization!
사실 지난 번에도 한 번 이것 때문에 고생했었다. 이젠 좀 잊지 말자.
Project Property Pages > Configuration Properties > C/C++ > Optimization 에서 가장 위 Optimization 칸에
Maximum Optimization (Favor Speed) (/O2) 라고 되어있는 걸 볼 수 있다.
지난 번에 이해한 바로는 최적화를 활성화하면 컴파일러가 생각하기에 굳이 컴파일 안 해도 될 것 같은 건 skip하고 진행한다는 것 같았다.
역시 이걸 disable로 바꾸니 원하는 대로 디버깅이 되었다.
프로그램도 잘 돌아갔다.
'etc.' 카테고리의 다른 글
LNK2001 링크 에러 해결 방법 (0) | 2021.01.11 |
---|---|
Sigrok libserialport library 사용 시 port configuration 2가지 방법 (0) | 2020.12.02 |
Sourcetrail 사용하기 - 소스파일 전체 flow 그래프 보기 (feat. Visual Studio) (0) | 2020.11.13 |
[OpenGL 3] 그림이 왼쪽 아래에만 그려질 때 해결 방법 / viewport 위치 이상할 때 (0) | 2020.11.09 |
git push가 안 될 때 / detached HEAD 문제 해결 방법 (4) | 2020.11.09 |