構文エラーについて
extern void __byte_order_change(int, int, byte_t*, int) attribute_hidden ;
#define __byte_order_to_host(b,p,l) __byte_order_change(b, __STDF_HOST_BYTE_ORDER, p, l)
#define __byte_order_to_src(b,p,l) __byte_order_change(__STDF_HOST_BYTE_ORDER, b, p, l)
プロンプトでコンパイルしようとすると、上記プログラムの1行目で以下のようなエラーが出ます。
c:\users\10044709\desktop\ttプロジェクト\stdf\libstdf-0.4\src\dtc.h(19) : error
C2061: 構文エラー : 識別子 'attribute_hidden'
c:\users\10044709\desktop\ttプロジェクト\stdf\libstdf-0.4\src\dtc.h(19) : error
C2059: 構文エラー : ';'
また、VSで開いてみると、【attribute_hidden】は『'{'が必要です』と表示され、
extern voidの後の【__byte_order_change】には
『名前のないプロトタイプパラメータには、本体が存在する場合は使用することはできません』と
表示されます。
ちなみに【attribute_hidden】の定義先は以下の通りですが、VS上ではエラーは出ていません。
# if !defined(attribute_hidden)
# define attribute_hidden __attribute__ ((visibility ("hidden")))
# endif
#else
# define attribute_unused
# if !defined(attribute_hidden)
# define attribute_hidden
# endif
#endif
エラーNo.で検索しても原因がよく判らず、
是非とも教示頂きたく、何卒宜しくお願い申し上げます。
お礼
解決できました。 main()のまえにひとつ'}'が足りてませんでした。 ';'が足りないって言ってたのにへんですね。