yus1108 / mcf

This is a toy compiler project named as mcf (making compiler is fun) aiming to make a compiler specialized for game development.
MIT License
1 stars 0 forks source link

[문자열] C4566 유니코드 컴파일 경고 #12

Closed yus1108 closed 2 months ago

yus1108 commented 2 months ago

3 에서 파생된 이슈입니다.

yus1108 commented 2 months ago

"" ansi literal (local machine 에 따라 다름) u8"" utf8 literal (현재까지 테스트시 모든 환경에서 일관적임, 다만 locale 설정을 코딩에 넣어줘야함) L"" wide string literal (utf8 과 같음)

yus1108 commented 2 months ago

위의 경우에는 코드 페이지가 고정으로 설정되어도 로컬 머신의 환경에 따라 글자가 깨지는 현상이 있어 command line arguments 를 이용하여: --CodePage=<unsigned_integer> 위와 같은 값을 받아 처리하도록 함

예제: github action 과 집에서는 65001 로 설정 시 한글 문자 보임 회사 컴퓨터 (시스템 로케일 설정이 영어로 되어있음) 는 65001로 설정 하면 한글 문자가 깨져보이고 949로 설정해야 보임.

yus1108 commented 2 months ago

static_assert 같은 경우 ansi 이외의 문자열을 이용 시 글자가 깨져보이기 때문에 영어만 사용하기로 결정