&pass_info);
}
-/**
- * InterAspect calls this function after all compilation is finished
- * and before GCC and InterAspect data structures are destroyed. It
- * is provided so that InterAspect plug-ins can override it (by
- * providing their own version), giving them a last chance to clean up
- * data structures or free up other resources.
- *
- * The best place to output an automatic header (using
- * aop_write_c_header()) is in aop_finish().
- */
+/* Provided for overriding in the client plug-in. See aop.h. */
__attribute__((weak)) __attribute__((noinline)) void
aop_finish ()
{
*/
extern void aop_main ();
+/**
+ * InterAspect calls this function after all compilation is finished
+ * and before GCC and InterAspect data structures are destroyed. It
+ * is provided so that InterAspect plug-ins can override it (by
+ * providing their own version), giving them a last chance to clean up
+ * data structures or free up other resources.
+ *
+ * The best place to output an automatic header (using
+ * aop_write_c_header()) is in aop_finish().
+ */
+extern void aop_finish ();
+
/**
* \cond HIDDEN_SYMBOLS
*/