Index: src/prelude/Makefile.am
===================================================================
--- src/prelude/Makefile.am	(revision 6ce3ae922b111327cd3ac420a940851d0e653550)
+++ src/prelude/Makefile.am	(revision 807ce84f225be4233a74a86eb9f23d721f903d71)
@@ -20,5 +20,5 @@
 # put into lib for now
 cfalibdir = ${CFA_LIBDIR}
-cfalib_DATA = gcc-builtins.cf extras.cf prelude.cf bootloader.c
+cfalib_DATA = gcc-builtins.cf builtins.cf extras.cf prelude.cf bootloader.c
 noinst_DATA = ../libcfa/libcfa-prelude.c
 
@@ -38,9 +38,13 @@
 prototypes.awk :
 
-../libcfa/libcfa-prelude.c : prelude.cf extras.cf gcc-builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
+# create forward declarations for cfa builtins
+builtins.cf : builtins.c
+	${AM_V_GEN}@BACKEND_CC@ -E -P ${<} -o ${@}
+
+../libcfa/libcfa-prelude.c : prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
 	${AM_V_GEN}${abs_top_srcdir}/src/driver/cfa-cpp -l prelude.cf $@  # use src/cfa-cpp as not in lib until after install
 
-bootloader.c : bootloader.cf prelude.cf extras.cf gcc-builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
+bootloader.c : bootloader.cf prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
 	${AM_V_GEN}${abs_top_srcdir}/src/driver/cfa-cpp -tpmL bootloader.cf $@  # use src/cfa-cpp as not in lib until after install
 
-MAINTAINERCLEANFILES = gcc-builtins.c gcc-builtins.cf extras.cf bootloader.c ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
+MAINTAINERCLEANFILES = gcc-builtins.c gcc-builtins.cf builtins.cf extras.cf bootloader.c ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
Index: src/prelude/Makefile.in
===================================================================
--- src/prelude/Makefile.in	(revision 6ce3ae922b111327cd3ac420a940851d0e653550)
+++ src/prelude/Makefile.in	(revision 807ce84f225be4233a74a86eb9f23d721f903d71)
@@ -211,7 +211,7 @@
 # put into lib for now
 cfalibdir = ${CFA_LIBDIR}
-cfalib_DATA = gcc-builtins.cf extras.cf prelude.cf bootloader.c
+cfalib_DATA = gcc-builtins.cf builtins.cf extras.cf prelude.cf bootloader.c
 noinst_DATA = ../libcfa/libcfa-prelude.c
-MAINTAINERCLEANFILES = gcc-builtins.c gcc-builtins.cf extras.cf bootloader.c ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
+MAINTAINERCLEANFILES = gcc-builtins.c gcc-builtins.cf builtins.cf extras.cf bootloader.c ${addprefix ${libdir}/,${cfalib_DATA}} ${addprefix ${libdir}/,${lib_LIBRARIES}}
 all: all-am
 
@@ -435,8 +435,12 @@
 prototypes.awk :
 
-../libcfa/libcfa-prelude.c : prelude.cf extras.cf gcc-builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
+# create forward declarations for cfa builtins
+builtins.cf : builtins.c
+	${AM_V_GEN}@BACKEND_CC@ -E -P ${<} -o ${@}
+
+../libcfa/libcfa-prelude.c : prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
 	${AM_V_GEN}${abs_top_srcdir}/src/driver/cfa-cpp -l prelude.cf $@  # use src/cfa-cpp as not in lib until after install
 
-bootloader.c : bootloader.cf prelude.cf extras.cf gcc-builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
+bootloader.c : bootloader.cf prelude.cf extras.cf gcc-builtins.cf builtins.cf ${abs_top_srcdir}/src/driver/cfa-cpp
 	${AM_V_GEN}${abs_top_srcdir}/src/driver/cfa-cpp -tpmL bootloader.cf $@  # use src/cfa-cpp as not in lib until after install
 
Index: src/prelude/builtins.c
===================================================================
--- src/prelude/builtins.c	(revision 807ce84f225be4233a74a86eb9f23d721f903d71)
+++ src/prelude/builtins.c	(revision 807ce84f225be4233a74a86eb9f23d721f903d71)
@@ -0,0 +1,1 @@
+typedef unsigned long long __cfaabi_exception_type_t;
