summaryrefslogtreecommitdiff
path: root/gcc/system.h
diff options
context:
space:
mode:
authorSteven Bosscher <steven@gcc.gnu.org>2010-05-27 16:02:50 +0000
committerSteven Bosscher <steven@gcc.gnu.org>2010-05-27 16:02:50 +0000
commit7a3b4887987aa35fae3321ee76af17af1e79c215 (patch)
treedcbeeba8fae9dc7970adedeece8672f0c973b716 /gcc/system.h
parent753d358dbcf3dd3fe68e9fe1e0a5eea8188c5d9a (diff)
downloadgcc-7a3b4887987aa35fae3321ee76af17af1e79c215.tar.gz
Makefile.in (ALL_CFLAGS): Add file-specific CFLAGS.
gcc/ChangeLog: * Makefile.in (ALL_CFLAGS): Add file-specific CFLAGS. (ALL_HOST_FRONTEND_OBJS): New, for all front-end specific objects. (ALL_HOST_BACKEND_OBJS): New, for all backend and target objects. (ALL_HOST_OBJS): Now a union of the above two. <section "Language makefile fragments">: Add -DIN_GCC_FRONTEND for all files in ALL_HOST_FRONTEND_OBJS. * system.h: Poison GCC_RTL_H if IN_GCC_FRONTEND is defined. * c-common.c: Pretend to be a backend file by undefining IN_GCC_FRONTEND (still need rtl.h here). ada/ChangeLog: * gcc-interface/decl.c: Pretend to be a backend file by undefining IN_GCC_FRONTEND (still need rtl.h here). java/ChangeLog: * buildings.c: Pretend to be a backend file by undefining IN_GCC_FRONTEND (still need rtl.h here). From-SVN: r159927
Diffstat (limited to 'gcc/system.h')
-rw-r--r--gcc/system.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/system.h b/gcc/system.h
index e764e584c2d..b87cf0db0d9 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -789,6 +789,12 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
VA_FIXEDARG VA_CLOSE VA_START
#endif /* IN_GCC */
+/* Front ends should never have to include middle-end headers. Enforce
+ this by poisoning the header double-include protection defines. */
+#ifdef IN_GCC_FRONTEND
+#pragma GCC poison GCC_RTL_H
+#endif
+
/* Note: not all uses of the `index' token (e.g. variable names and
structure members) have been eliminated. */
#undef bcopy