(toppers-users 3673) ASP sh7211.h のプリプロセッサディレクティブのインデント

Masaki Muranaka monamour @ monaka.org
2011年 10月 28日 (金) 15:00:06 JST


TOPPERS users MLのみなさま:
こんにちは.

ASPカーネルの sh12a_gcc ターゲット 1.7.1 をざっと読んでいました.

sh7211.h で
▼
#define STBCR2_b		UINT_C(0xfffe0018)
 #define STBCR2_HUDI	UINT_C(0x80)
▲
といったように,プリプロセッサディレクティブの # の前に空白がある行があります.
意図は判りますし,gcc はこれを警告無しで通すと思うのですが,
(手元に資料がないので調べていないので,記憶が正しければ)ANSI-Cのどれかの版では
# の前にホワイトスペースを置いてはいけないことになっていたように思います.
ここは無難に
▼
#define STBCR2_b		UINT_C(0xfffe0018)
# define STBCR2_HUDI	UINT_C(0x80)
▲
したほうが,他コンパイラへの移植や各種コーディングガイドラインへの抵触回避
などで有利と思うのですが,いかがでしょうか.

--
from もなか