質問するログイン新規登録

回答編集履歴

1

MinGWとそれ以外とで分ける必要性がないため、単に

2016/03/14 11:53

投稿

yamma_ma
yamma_ma

スコア21

answer CHANGED
@@ -1,12 +1,6 @@
1
1
  いただいた回答を元に調べてみたところ、gcc_struct属性、ms_struct属性があるとわかりました。該当の構造体にのみgcc_struct属性をつけることでピンポイントで回避できるようです。
2
2
 
3
3
  ```C
4
- #ifdef __MINGW32__
5
- #define ATTR __attribute__ ((gcc_struct, packed))
6
- #else
7
- #define ATTR __attribute__ ((packed))
8
- #endif
9
-
10
4
  typedef struct _St1
11
5
  {
12
6
  guint32 v1;
@@ -17,5 +11,5 @@
17
11
  gint32 v5;
18
12
  gint16 v6;
19
13
  gint16 v7;
20
- } ATTR St1;
14
+ } __attribute__ ((gcc_struct, packed)) St1;
21
15
  ```