#ifndef _MY_EDATA
#define _MY_EDATA

#ifdef __cplusplus
#define EXTERNC extern "C"
#else
#define EXTERNC
#include <stdbool.h>
#endif

/** @brief struct that carries all information about experimental data */
typedef struct edata {
    /** observed data */
    double *am_my; 
    /** standard deviation of observed data */
    double *am_ysigma; 
    
    /** observed events */
    double *am_mz; 
    /** standard deviation of observed events */
    double *am_zsigma;
    
    /** boolean indicating whether experimental data was provided */
    bool am_bexpdata;
    
} ExpData;

EXTERNC void freeExpData(ExpData *edata);

#endif /* _MY_EDATA */

#ifndef _MY_EDATA
#define _MY_EDATA

#ifdef __cplusplus
#define EXTERNC extern "C"
#else
#define EXTERNC
#endif

/** @brief struct that carries all information about experimental data */
typedef struct edata {
    /** observed data */
    double *am_my; 
    /** standard deviation of observed data */
    double *am_ysigma; 
    
    /** observed events */
    double *am_mz; 
    /** standard deviation of observed events */
    double *am_zsigma;
    
    /** boolean indicating whether experimental data was provided */
    bool am_bexpdata;
    
	} ExpData;

EXTERNC void freeExpData(ExpData *edata);

#endif /* _MY_EDATA */

--- 
+++ 
@@ -5,6 +5,7 @@
 #define EXTERNC extern "C"
 #else
 #define EXTERNC
+#include <stdbool.h>
 #endif
 
 /** @brief struct that carries all information about experimental data */
@@ -22,7 +23,7 @@
     /** boolean indicating whether experimental data was provided */
     bool am_bexpdata;
     
-	} ExpData;
+} ExpData;
 
 EXTERNC void freeExpData(ExpData *edata);
 
Fix type bool for C
