зачем засорять код?
Код
*(&(flash->_dataFlash))
эквивалентно
Код
flash->_dataFlash
пользовательские типы данных в СИ общепринято называть так:
Код
typedef struct
{
...
} data_flash_t;
typedef struct
{
...
} flash_t;
и ещё функция performAction:
Код
void (*performAction)();
лучше и грамотнее с точки зрения СИ так
Код
void (*performAction)(void);
получает и возвращает void, а Вы ей аргументы передавать пытаетесь.
То, что Вы тут продемонстрировали - говнокод редкостный и никаких чудес.
Вам стоит почитать букварь по СИ прежде чем что-либо калякать - сэкономите массу времени.