システムヘッダファイルstdarg.hファイルが見つからない

Technical Note 181212J

Targets:
ARM

Component:
Compiler

Updated:
1/15/2019 6:43 AM

はじめに

Embedded Workbench for Arm 7.20から8.32までの間、stdarg.hで書かれている定義はコンパイラで持つようになり、Embedded Workbench for Arm 7.20からEmbedded Workbench for Arm 7.40の製品ではstdarg.hファイルがパッケージから削除されているため、外部の静的解析ツールを使用される場合、参照ファイルがなくエラーとなることがあります。

Embedded Workbench for Arm 7.40.4以降、そのようなエラーを回避するため、またstdarg.hファイルをパッケージに含んでおりますが、コンパイラはそのファイルは使用せずコンパイラ内部の定義を使用しています。

解説

Embedded Workbench for Arm 7.20から8.32までの間、stdarg.hで書かれている定義はコンパイラで持つようになりました。

コンパイラは、

#include <stdarg.h>

文に出会うと、コンパイラ内部にあるstdarg.hに相当する定義を読み込みますので、ソース互換性は保たれています。

なお、stdarg.hはすべて小文字で表記してください。

[良い例]

#include <stdarg.h>

 

[悪い例]

#include <Stdarg.h>

#include <StdArg.h>

など                                                                  

まとめ

外部の静的解析ツールをお使いでstdarg.hが見つからないとエラーが発生する場合は、以前のバージョンのstdarg.hをコピーしてお使いください。

 

全ての製品名は、それぞれの所有者の商標または登録商標です

© IAR Systems 1995-2020 - All rights reserved.

当ウェブサイトではユーザ利便性向上のためにCookieを利用しています。サイトの閲覧を継続するためにはCookieの使用について承諾する必要があります。 Cookies