_-Wlong-long
_ gcc警告の理由は何ですか?
Gccのmanページから:
_-Wlong-long
Warn if long long type is used. This is enabled by either -Wpedantic or -Wtraditional in ISO C90 and C++98 modes. To inhibit the warning messages, use -Wno-long-long.
_
私が理解しているように、_long long
_は少なくとも64ビットである必要があります(実際には、少なくとも今日のコンパイラでは常に64ビットです)。これはISO C90またはC++ 98には当てはまりませんでしたか、それとも_long long
_を使用しない理由が他にありますか?
_<stdint.h>
_やその類のような_int64_t
_型については知っていますが、一部のそれほど古くないコンパイラ(VS2005やGreen Hills ARM 3.5)など)は_<stdint.h>
_、そして私は_long long
_がそれらと新しいツールチェーンでは(少なくとも)64ビットになると考えました。
ISO C90およびC++ 98にはlong long
タイプはまだありませんでした。 ISO C99およびC++ 11でのみ追加されました。
GCCは、標準化前の拡張機能として提供していました。