#include <t2n_exception.hxx>
 #include <command.hxx>
 
-#ifdef __GCCXML__
+#ifdef __castxml__
 // used during parsing run with gccxml
 
 /** @brief mark a function to export it via libt2n
     }
     @endcode
 */
-#define LIBT2N_EXPORT __attribute((gccxml("libt2n-default")))
+#define LIBT2N_EXPORT __attribute__((annotate("libt2n-default")))
 
 
 /** @brief tell libt2n about a default argument
     @remarks Codegen gets default arguments via this define (gccxml-attribute) because gccxml
              does not correctly output them (e.g. the namespace is ambiguous)
 */
-#define LIBT2N_DEFAULT_ARG(type,value) __attribute((gccxml("libt2n-default-arg",#value))) type = value
+#define LIBT2N_DEFAULT_ARG(type,value) __attribute__((annotate("libt2n-default-arg,"#value))) type = value
 
 #else
 // used during regular compile
-
 #define LIBT2N_EXPORT
 #define LIBT2N_DEFAULT_ARG(type,value) type = value