Поделитесь, пожалуйста, способами красивой работы, а то ручками смертельно надоело
Сишный хедер для совместного использования с асмом
Код
#ifndef __ASSEMBLER__
typedef struct
{
int16_t fld1;
uint8_t fld2;
} record_t;
/**************/
record_t var1,var2;
#else
#define fld1 0
#define fld2 2
.extern var1,var2
#endif
typedef struct
{
int16_t fld1;
uint8_t fld2;
} record_t;
/**************/
record_t var1,var2;
#else
#define fld1 0
#define fld2 2
.extern var1,var2
#endif
Проблема в том, что препроцессор ведь работает только на уровне текста, он ничего не вычисляет. Поэтому всякие там offsetof() не пойдут. Только ручками. Кто боролся с такой задачей?