7.xx 버전에서 빌드된 라이브러리를 8.11에 사용할 경우 경고 메시지

기술노트 20171003






2018-02-28 오전 1:58


Because both the size and the internal encoding of wchar_t are different between IAR Embedded Workbench for Arm version 7.xx and version 8.11 or later, the linker message “Warning [Lt009]: Inconsistent wchar_t size” will be generated when a library built with version 7.xx is used in version 8.11 or later.


In IAR Embedded Workbench for Arm version 7.80 and earlier, the size of wchar_t was two bytes and in version 8.11 the size of wchar_t is four bytes. Moreover the internal encoding of wchar_t objects between these versions objects is different.

This means that combining object files built with versions7.80 and 8.11 will generate a linker warning if the application uses wchar_t, the behavior will be unpredictable. In general, we strongly recommend using object code from one version only, and for a major upgrade such as 7.8 to 8.11, all code should be rebuilt.

If you choose to not to rebuilt, you should at least do following actions:

  • a)    Rebuild an object code build with version 7.xx and written in C++.
  • b)    If the library does include wchar_t, rebuild the library with version 8.11.
  • c)    If a library built with version 7.xx does not include wchar_t, and an application built with version 8.11 (or later) in fact works as expected, you might want to ignore the warning message. To suppress the warning message, do this:
      1. Choose Project>Options>Linker>Diagnostics>
      2. Select Suppress these diagnostics  and specify “Lt009
      3. Click OK.

Note1: If you later add another 7.xx library to your 8.11(or later) project, please remove the suppress diagnostic option described above (“Lt009”) and go through steps a-c again.


A library that uses wchar_t built with IAR Embedded Workbench for Arm version 7.xx must be rebuilt to be used with version 8.11.

죄송하지만, 당사 사이트에서는 Internet Explorer를 지원하지 않습니다.보다 편안한 사이트를 위해 Chrome, Edge, Firefox 등과 같은 최신 브라우저를 사용해 주시길 부탁드립니다.