aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/f/ChangeLog66
-rw-r--r--gcc/f/Make-lang.in2
-rw-r--r--gcc/f/Makefile.in293
-rw-r--r--gcc/f/ansify.c8
-rw-r--r--gcc/f/bad.c8
-rw-r--r--gcc/f/bld.c11
-rw-r--r--gcc/f/bld.h6
-rw-r--r--gcc/f/com.c6
-rw-r--r--gcc/f/com.h2
-rw-r--r--gcc/f/equiv.c2
-rw-r--r--gcc/f/equiv.h2
-rw-r--r--gcc/f/expr.c3
-rw-r--r--gcc/f/fini.c6
-rw-r--r--gcc/f/g77spec.c14
-rw-r--r--gcc/f/implic.c3
-rw-r--r--gcc/f/intdoc.c16
-rw-r--r--gcc/f/intrin.c9
-rw-r--r--gcc/f/lex.c21
-rw-r--r--gcc/f/lex.h3
-rw-r--r--gcc/f/parse.c2
-rw-r--r--gcc/f/proj.c3
-rw-r--r--gcc/f/proj.h22
-rw-r--r--gcc/f/src.c1
-rw-r--r--gcc/f/src.h4
-rw-r--r--gcc/f/sta.c4
-rw-r--r--gcc/f/stb.c29
-rw-r--r--gcc/f/ste.c2
-rw-r--r--gcc/f/stt.c12
-rw-r--r--gcc/f/stt.h12
-rw-r--r--gcc/f/symbol.c6
-rw-r--r--gcc/f/symbol.h4
-rw-r--r--gcc/f/system.j27
-rw-r--r--gcc/f/target.c9
-rw-r--r--gcc/f/top.c4
-rw-r--r--gcc/f/toplev.j27
35 files changed, 405 insertions, 244 deletions
diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog
index 8678e79..4f9a056 100644
--- a/gcc/f/ChangeLog
+++ b/gcc/f/ChangeLog
@@ -1,3 +1,69 @@
+Mon Jun 15 22:21:57 1998 Craig Burley <burley@gnu.org>
+
+ Cutover to system.h:
+ * Make-lang.in:
+ * Makefile.in:
+ * ansify.c:
+ * bad.c:
+ * bld.c:
+ * com.c:
+ * com.h:
+ * expr.c:
+ * fini.c:
+ * g77spec.c:
+ * implic.c:
+ * intdoc.c:
+ * intrin.c:
+ * lex.c:
+ * lex.h:
+ * parse.c:
+ * proj.c:
+ * proj.h:
+ * src.c:
+ * src.h:
+ * stb.c:
+ * ste.c:
+ * target.c:
+ * top.c:
+ * system.j: New file.
+
+ Use toplev.h where appropriate:
+ * Make-lang.in:
+ * Makefile.in:
+ * bad.c:
+ * bld.c:
+ * com.c:
+ * lex.c:
+ * ste.c:
+ * top.c:
+ * toplev.j: New file.
+
+ Conditionalize all dumping/reporting routines so they don't
+ get built for gcc/egcs:
+ * bld.c:
+ * bld.h:
+ * com.c:
+ * equiv.c:
+ * equiv.h:
+ * sta.c:
+ * stt.c:
+ * stt.h:
+ * symbol.c:
+ * symbol.h:
+
+ Use hconfig.h instead of config.h where appropriate:
+ * Makefile.in (proj-h.o): Compile with -DUSE_HCONFIG.
+ * fini.c: Define USE_HCONFIG before including proj.h.
+
+ * Makefile.in (deps-kinda): Redirect stderr to stdout,
+ to eliminate diagnostics vis-a-vis g77spec.c.
+
+ * Makefile.in: Regenerate dependencies via deps-kinda.
+
+ * lex.c (ffelex_file_fixed, ffelex_file_free): Eliminate
+ apparently spurious warnings about uninitialized variables
+ `c', `column', and so on.
+
Sat Jun 13 03:13:18 1998 Craig Burley <burley@gnu.org>
* g77spec.c (lang_specific_driver): Print out egcs
diff --git a/gcc/f/Make-lang.in b/gcc/f/Make-lang.in
index b199b1a..1b4f5d0 100644
--- a/gcc/f/Make-lang.in
+++ b/gcc/f/Make-lang.in
@@ -204,12 +204,14 @@ F77_SRCS = \
$(srcdir)/f/symbol.c \
$(srcdir)/f/symbol.def \
$(srcdir)/f/symbol.h \
+ $(srcdir)/f/system.j \
$(srcdir)/f/target.c \
$(srcdir)/f/target.h \
$(srcdir)/f/tconfig.j \
$(srcdir)/f/tm.j \
$(srcdir)/f/top.c \
$(srcdir)/f/top.h \
+ $(srcdir)/f/toplev.j \
$(srcdir)/f/tree.j \
$(srcdir)/f/type.c \
$(srcdir)/f/type.h \
diff --git a/gcc/f/Makefile.in b/gcc/f/Makefile.in
index 3d48685..fff69b3 100644
--- a/gcc/f/Makefile.in
+++ b/gcc/f/Makefile.in
@@ -245,8 +245,10 @@ INPUT_H = $(srcdir)/input.j $(srcdir)/../input.h
OUTPUT_H = $(srcdir)/output.j $(srcdir)/../output.h
RTL_H = $(srcdir)/rtl.j $(srcdir)/../rtl.h $(srcdir)/../rtl.def \
$(srcdir)/../machmode.h $(srcdir)/../machmode.def
+SYSTEM_H = $(srcdir)/system.j $(srcdir)/../system.h
TCONFIG_H = $(srcdir)/tconfig.j ../tconfig.h
TM_H = $(srcdir)/tm.j ../tm.h
+TOPLEV_H = $(srcdir)/toplev.j $(srcdir)/../toplev.h
TREE_H = $(srcdir)/tree.j $(srcdir)/../tree.h $(srcdir)/../real.h \
$(srcdir)/../tree.def $(srcdir)/../machmode.h $(srcdir)/../machmode.def
@@ -255,176 +257,177 @@ TREE_H = $(srcdir)/tree.j $(srcdir)/../tree.h $(srcdir)/../real.h \
#Note that this command uses the host C compiler;
# use HOST_CC="./xgcc -B./" to use GCC in the build directory, for example.
#Also note that this particular build file seems to want to use
-# substitions: $(CONFIG_H) for config.h; $(TREE_H) for tree.h; and
-# $(RTL_H) for rtl.h. deps-kinda uses a sed script to do those
+# substitions: $(CONFIG_H) for config.h; $(TREE_H) for tree.h;
+# $(RTL_H) for rtl.h; etc.. deps-kinda uses a sed script to do those
# substitutions, plus others for elegance.
-ansify.o: ansify.c $(ASSERT_H)
-bad.o: bad.c proj.h $(CONFIG_H) $(ASSERT_H) bad.h bad.def where.h $(GLIMITS_H) \
- top.h malloc.h $(FLAGS_H) com.h com-rt.def $(TREE_H) bld.h bld-op.def bit.h \
- info.h info-b.def info-k.def info-w.def target.h lex.h type.h \
- intrin.h intrin.def lab.h symbol.h symbol.def equiv.h storag.h \
- global.h name.h $(RTL_H)
-bit.o: bit.c proj.h $(CONFIG_H) $(ASSERT_H) $(GLIMITS_H) bit.h malloc.h
-bld.o: bld.c proj.h $(CONFIG_H) $(ASSERT_H) bld.h bld-op.def bit.h malloc.h \
- com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def info-w.def \
- target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h type.h lab.h \
- storag.h symbol.h symbol.def equiv.h global.h name.h intrin.h \
- intrin.def $(RTL_H)
-com.o: com.c proj.h $(CONFIG_H) $(ASSERT_H) $(FLAGS_H) $(RTL_H) $(TREE_H) $(OUTPUT_H) \
- $(CONVERT_H) com.h com-rt.def bld.h bld-op.def bit.h malloc.h info.h \
- info-b.def info-k.def info-w.def target.h bad.h bad.def where.h \
- $(GLIMITS_H) top.h lex.h type.h intrin.h intrin.def lab.h symbol.h \
- symbol.def equiv.h storag.h global.h name.h expr.h implic.h src.h \
- st.h
-data.o: data.c proj.h $(CONFIG_H) $(ASSERT_H) data.h bld.h bld-op.def bit.h \
+ansify.o: ansify.c $(HCONFIG_H) $(SYSTEM_H) $(ASSERT_H)
+bad.o: bad.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) bad.h bad.def where.h \
+ $(GLIMITS_H) top.h malloc.h $(FLAGS_H) com.h com-rt.def $(TREE_H) bld.h \
+ bld-op.def bit.h info.h info-b.def info-k.def info-w.def target.h \
+ lex.h type.h intrin.h intrin.def lab.h symbol.h symbol.def equiv.h \
+ storag.h global.h name.h $(TOPLEV_H)
+bit.o: bit.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) $(GLIMITS_H) bit.h \
+ malloc.h
+bld.o: bld.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) bld.h bld-op.def bit.h \
malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
type.h lab.h storag.h symbol.h symbol.def equiv.h global.h name.h \
- intrin.h intrin.def $(RTL_H) expr.h st.h
-equiv.o: equiv.c proj.h $(CONFIG_H) $(ASSERT_H) equiv.h bld.h bld-op.def \
- bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
- info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
- type.h lab.h storag.h symbol.h symbol.def global.h name.h intrin.h \
- intrin.def $(RTL_H) data.h
-expr.o: expr.c proj.h $(CONFIG_H) $(ASSERT_H) expr.h bld.h bld-op.def bit.h \
- malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
- info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
- type.h lab.h storag.h symbol.h symbol.def equiv.h global.h name.h \
- intrin.h intrin.def $(RTL_H) implic.h src.h st.h stamp-str
-fini.o: fini.c proj.h $(CONFIG_H) $(ASSERT_H) malloc.h
-global.o: global.c proj.h $(CONFIG_H) $(ASSERT_H) global.h info.h info-b.def \
- info-k.def info-w.def target.h $(TREE_H) bad.h bad.def where.h $(GLIMITS_H) \
- top.h malloc.h lex.h type.h name.h symbol.h symbol.def bld.h \
- bld-op.def bit.h com.h com-rt.def lab.h storag.h $(RTL_H) intrin.h \
- intrin.def equiv.h
-implic.o: implic.c proj.h $(CONFIG_H) $(ASSERT_H) implic.h info.h info-b.def \
- info-k.def info-w.def target.h $(TREE_H) bad.h bad.def where.h $(GLIMITS_H) \
- top.h malloc.h lex.h type.h symbol.h symbol.def bld.h bld-op.def \
- bit.h com.h com-rt.def lab.h storag.h $(RTL_H) intrin.h intrin.def \
- equiv.h global.h name.h src.h
-info.o: info.c proj.h $(CONFIG_H) $(ASSERT_H) info.h info-b.def info-k.def \
- info-w.def target.h $(TREE_H) bad.h bad.def where.h $(GLIMITS_H) top.h \
- malloc.h lex.h type.h
-intdoc.o: intdoc.c $(ASSERT_H) intrin.h intrin.def intdoc.h0 intdoc.h0
-intrin.o: intrin.c proj.h $(CONFIG_H) $(ASSERT_H) intrin.h intrin.def bld.h \
+ intrin.h intrin.def
+com.o: com.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) $(FLAGS_H) $(RTL_H) $(TOPLEV_H) \
+ $(TREE_H) $(OUTPUT_H) $(CONVERT_H) com.h com-rt.def bld.h bld-op.def bit.h \
+ malloc.h info.h info-b.def info-k.def info-w.def target.h bad.h \
+ bad.def where.h $(GLIMITS_H) top.h lex.h type.h intrin.h intrin.def \
+ lab.h symbol.h symbol.def equiv.h storag.h global.h name.h expr.h \
+ implic.h src.h st.h
+data.o: data.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) data.h bld.h \
bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def \
info-k.def info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h \
lex.h type.h lab.h storag.h symbol.h symbol.def equiv.h global.h \
- name.h $(RTL_H) expr.h src.h
-lab.o: lab.c proj.h $(CONFIG_H) $(ASSERT_H) lab.h com.h com-rt.def $(TREE_H) \
- bld.h bld-op.def bit.h malloc.h info.h info-b.def info-k.def \
+ name.h intrin.h intrin.def expr.h st.h
+equiv.o: equiv.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) equiv.h bld.h \
+ bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def \
+ info-k.def info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h \
+ lex.h type.h lab.h storag.h symbol.h symbol.def global.h name.h \
+ intrin.h intrin.def data.h
+expr.o: expr.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) expr.h bld.h \
+ bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def \
+ info-k.def info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h \
+ lex.h type.h lab.h storag.h symbol.h symbol.def equiv.h global.h \
+ name.h intrin.h intrin.def implic.h src.h st.h stamp-str
+fini.o: fini.c proj.h $(HCONFIG_H) $(SYSTEM_H) $(ASSERT_H) malloc.h
+global.o: global.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) global.h info.h \
+ info-b.def info-k.def info-w.def target.h $(TREE_H) bad.h bad.def \
+ where.h $(GLIMITS_H) top.h malloc.h lex.h type.h name.h symbol.h \
+ symbol.def bld.h bld-op.def bit.h com.h com-rt.def lab.h storag.h \
+ intrin.h intrin.def equiv.h
+implic.o: implic.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) implic.h info.h \
+ info-b.def info-k.def info-w.def target.h $(TREE_H) bad.h bad.def \
+ where.h $(GLIMITS_H) top.h malloc.h lex.h type.h symbol.h symbol.def \
+ bld.h bld-op.def bit.h com.h com-rt.def lab.h storag.h intrin.h \
+ intrin.def equiv.h global.h name.h src.h
+info.o: info.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) info.h info-b.def \
+ info-k.def info-w.def target.h $(TREE_H) bad.h bad.def where.h $(GLIMITS_H) \
+ top.h malloc.h lex.h type.h
+intdoc.o: intdoc.c $(HCONFIG_H) $(SYSTEM_H) $(ASSERT_H) intrin.h intrin.def \
+ intdoc.h0 intdoc.h0
+intrin.o: intrin.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) intrin.h \
+ intrin.def bld.h bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) \
+ info.h info-b.def info-k.def info-w.def target.h bad.h bad.def \
+ where.h $(GLIMITS_H) top.h lex.h type.h lab.h storag.h symbol.h \
+ symbol.def equiv.h global.h name.h expr.h src.h
+lab.o: lab.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) lab.h com.h com-rt.def \
+ $(TREE_H) bld.h bld-op.def bit.h malloc.h info.h info-b.def info-k.def \
info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
type.h intrin.h intrin.def symbol.h symbol.def equiv.h storag.h \
- global.h name.h $(RTL_H)
-lex.o: lex.c proj.h $(CONFIG_H) $(ASSERT_H) top.h malloc.h where.h $(GLIMITS_H) \
- bad.h bad.def com.h com-rt.def $(TREE_H) bld.h bld-op.def bit.h info.h \
- info-b.def info-k.def info-w.def target.h lex.h type.h intrin.h \
- intrin.def lab.h symbol.h symbol.def equiv.h storag.h global.h name.h \
- $(RTL_H) src.h $(FLAGS_H) $(INPUT_H) $(OUTPUT_H)
-malloc.o: malloc.c proj.h $(CONFIG_H) $(ASSERT_H) malloc.h
-name.o: name.c proj.h $(CONFIG_H) $(ASSERT_H) bad.h bad.def where.h \
+ global.h name.h
+lex.o: lex.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) top.h malloc.h where.h \
+ $(GLIMITS_H) bad.h bad.def com.h com-rt.def $(TREE_H) bld.h bld-op.def \
+ bit.h info.h info-b.def info-k.def info-w.def target.h lex.h type.h \
+ intrin.h intrin.def lab.h symbol.h symbol.def equiv.h storag.h \
+ global.h name.h src.h $(FLAGS_H) $(INPUT_H) $(TOPLEV_H) $(OUTPUT_H)
+malloc.o: malloc.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) malloc.h
+name.o: name.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) bad.h bad.def where.h \
$(GLIMITS_H) top.h malloc.h name.h global.h info.h info-b.def info-k.def \
info-w.def target.h $(TREE_H) lex.h type.h symbol.h symbol.def bld.h \
- bld-op.def bit.h com.h com-rt.def lab.h storag.h $(RTL_H) intrin.h \
- intrin.def equiv.h src.h
-parse.o: parse.c proj.h $(CONFIG_H) $(ASSERT_H) top.h malloc.h where.h \
- $(GLIMITS_H) com.h com-rt.def $(TREE_H) bld.h bld-op.def bit.h info.h \
- info-b.def info-k.def info-w.def target.h bad.h bad.def lex.h type.h \
- intrin.h intrin.def lab.h symbol.h symbol.def equiv.h storag.h \
- global.h name.h $(RTL_H) version.h $(FLAGS_H)
-proj.o: proj.c proj.h $(CONFIG_H) $(ASSERT_H) $(GLIMITS_H)
-src.o: src.c proj.h $(CONFIG_H) $(ASSERT_H) src.h bad.h bad.def where.h \
- $(GLIMITS_H) top.h malloc.h
-st.o: st.c proj.h $(CONFIG_H) $(ASSERT_H) st.h bad.h bad.def where.h \
- $(GLIMITS_H) top.h malloc.h lex.h symbol.h symbol.def bld.h bld-op.def \
- bit.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def info-w.def \
- target.h type.h lab.h storag.h $(RTL_H) intrin.h intrin.def equiv.h \
+ bld-op.def bit.h com.h com-rt.def lab.h storag.h intrin.h intrin.def \
+ equiv.h src.h
+parse.o: parse.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) top.h malloc.h \
+ where.h $(GLIMITS_H) com.h com-rt.def $(TREE_H) bld.h bld-op.def bit.h \
+ info.h info-b.def info-k.def info-w.def target.h bad.h bad.def lex.h \
+ type.h intrin.h intrin.def lab.h symbol.h symbol.def equiv.h storag.h \
+ global.h name.h version.h $(FLAGS_H)
+proj.o: proj.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) $(GLIMITS_H)
+src.o: src.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) src.h bad.h bad.def \
+ where.h $(GLIMITS_H) top.h malloc.h
+st.o: st.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) st.h bad.h bad.def \
+ where.h $(GLIMITS_H) top.h malloc.h lex.h symbol.h symbol.def bld.h \
+ bld-op.def bit.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
+ info-w.def target.h type.h lab.h storag.h intrin.h intrin.def equiv.h \
global.h name.h sta.h stamp-str stb.h expr.h stp.h stt.h stc.h std.h \
stv.h stw.h ste.h sts.h stu.h
-sta.o: sta.c proj.h $(CONFIG_H) $(ASSERT_H) sta.h bad.h bad.def where.h \
- $(GLIMITS_H) top.h malloc.h lex.h stamp-str symbol.h symbol.def bld.h \
- bld-op.def bit.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
- info-w.def target.h type.h lab.h storag.h $(RTL_H) intrin.h intrin.def \
- equiv.h global.h name.h implic.h stb.h expr.h stp.h stt.h stc.h std.h \
- stv.h stw.h
-stb.o: stb.c proj.h $(CONFIG_H) $(ASSERT_H) stb.h bad.h bad.def where.h \
- $(GLIMITS_H) top.h malloc.h expr.h bld.h bld-op.def bit.h com.h \
+sta.o: sta.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) sta.h bad.h bad.def \
+ where.h $(GLIMITS_H) top.h malloc.h lex.h stamp-str symbol.h symbol.def \
+ bld.h bld-op.def bit.h com.h com-rt.def $(TREE_H) info.h info-b.def \
+ info-k.def info-w.def target.h type.h lab.h storag.h intrin.h \
+ intrin.def equiv.h global.h name.h implic.h stb.h expr.h stp.h stt.h \
+ stc.h std.h stv.h stw.h
+stb.o: stb.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) stb.h bad.h bad.def \
+ where.h $(GLIMITS_H) top.h malloc.h expr.h bld.h bld-op.def bit.h com.h \
com-rt.def $(TREE_H) info.h info-b.def info-k.def info-w.def target.h \
lex.h type.h lab.h storag.h symbol.h symbol.def equiv.h global.h \
- name.h intrin.h intrin.def $(RTL_H) stp.h stt.h stamp-str src.h sta.h stc.h
-stc.o: stc.c proj.h $(CONFIG_H) $(ASSERT_H) stc.h bad.h bad.def where.h \
- $(GLIMITS_H) top.h malloc.h bld.h bld-op.def bit.h com.h com-rt.def \
- $(TREE_H) info.h info-b.def info-k.def info-w.def target.h lex.h type.h \
- lab.h storag.h symbol.h symbol.def equiv.h global.h name.h intrin.h \
- intrin.def $(RTL_H) expr.h stp.h stt.h stamp-str data.h implic.h src.h sta.h \
- std.h stv.h stw.h
-std.o: std.c proj.h $(CONFIG_H) $(ASSERT_H) std.h bld.h bld-op.def bit.h \
- malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
+ name.h intrin.h intrin.def stp.h stt.h stamp-str src.h sta.h stc.h
+stc.o: stc.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) stc.h bad.h bad.def \
+ where.h $(GLIMITS_H) top.h malloc.h bld.h bld-op.def bit.h com.h \
+ com-rt.def $(TREE_H) info.h info-b.def info-k.def info-w.def target.h \
+ lex.h type.h lab.h storag.h symbol.h symbol.def equiv.h global.h \
+ name.h intrin.h intrin.def expr.h stp.h stt.h stamp-str data.h implic.h \
+ src.h sta.h std.h stv.h stw.h
+std.o: std.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) std.h bld.h bld-op.def \
+ bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
type.h lab.h storag.h symbol.h symbol.def equiv.h global.h name.h \
- intrin.h intrin.def $(RTL_H) stp.h stt.h stamp-str stv.h stw.h sta.h ste.h \
- sts.h
-ste.o: ste.c proj.h $(CONFIG_H) $(ASSERT_H) $(RTL_H) $(TREE_H) $(OUTPUT_H) ste.h \
- bld.h bld-op.def bit.h malloc.h com.h com-rt.def info.h info-b.def \
+ intrin.h intrin.def stp.h stt.h stamp-str stv.h stw.h sta.h ste.h sts.h
+ste.o: ste.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) $(RTL_H) $(TOPLEV_H) ste.h \
+ bld.h bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) info.h \
+ info-b.def info-k.def info-w.def target.h bad.h bad.def where.h \
+ $(GLIMITS_H) top.h lex.h type.h lab.h storag.h symbol.h symbol.def \
+ equiv.h global.h name.h intrin.h intrin.def stp.h stt.h stamp-str sts.h \
+ stv.h stw.h expr.h sta.h
+storag.o: storag.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) storag.h bld.h \
+ bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def \
info-k.def info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h \
- lex.h type.h lab.h storag.h symbol.h symbol.def equiv.h global.h \
- name.h intrin.h intrin.def stp.h stt.h stamp-str sts.h stv.h stw.h expr.h \
- sta.h
-storag.o: storag.c proj.h $(CONFIG_H) $(ASSERT_H) storag.h bld.h bld-op.def \
+ lex.h type.h lab.h symbol.h symbol.def equiv.h global.h name.h \
+ intrin.h intrin.def data.h
+stp.o: stp.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) stp.h bld.h bld-op.def \
bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
- type.h lab.h symbol.h symbol.def equiv.h global.h name.h intrin.h \
- intrin.def $(RTL_H) data.h
-stp.o: stp.c proj.h $(CONFIG_H) $(ASSERT_H) stp.h bld.h bld-op.def bit.h \
- malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
- info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
type.h lab.h storag.h symbol.h symbol.def equiv.h global.h name.h \
- intrin.h intrin.def $(RTL_H) stt.h
-str.o: str.c proj.h $(CONFIG_H) $(ASSERT_H) src.h bad.h bad.def where.h \
- $(GLIMITS_H) top.h malloc.h stamp-str lex.h
-sts.o: sts.c proj.h $(CONFIG_H) $(ASSERT_H) sts.h malloc.h com.h com-rt.def \
- $(TREE_H) bld.h bld-op.def bit.h info.h info-b.def info-k.def info-w.def \
- target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h type.h intrin.h \
- intrin.def lab.h symbol.h symbol.def equiv.h storag.h global.h name.h \
- $(RTL_H)
-stt.o: stt.c proj.h $(CONFIG_H) $(ASSERT_H) stt.h top.h malloc.h where.h \
- $(GLIMITS_H) bld.h bld-op.def bit.h com.h com-rt.def $(TREE_H) info.h \
- info-b.def info-k.def info-w.def target.h bad.h bad.def lex.h type.h \
- lab.h storag.h symbol.h symbol.def equiv.h global.h name.h intrin.h \
- intrin.def $(RTL_H) stp.h expr.h sta.h stamp-str
-stu.o: stu.c proj.h $(CONFIG_H) $(ASSERT_H) bld.h bld-op.def bit.h malloc.h \
- com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def info-w.def \
- target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h type.h lab.h \
- storag.h symbol.h symbol.def equiv.h global.h name.h intrin.h \
- intrin.def $(RTL_H) implic.h stu.h sta.h stamp-str
-stv.o: stv.c proj.h $(CONFIG_H) $(ASSERT_H) stv.h lab.h com.h com-rt.def \
- $(TREE_H) bld.h bld-op.def bit.h malloc.h info.h info-b.def info-k.def \
+ intrin.h intrin.def stt.h
+str.o: str.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) src.h bad.h bad.def \
+ where.h $(GLIMITS_H) top.h malloc.h stamp-str lex.h
+sts.o: sts.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) sts.h malloc.h com.h \
+ com-rt.def $(TREE_H) bld.h bld-op.def bit.h info.h info-b.def info-k.def \
info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
- type.h intrin.h intrin.def symbol.h symbol.def equiv.h storag.h \
- global.h name.h $(RTL_H)
-stw.o: stw.c proj.h $(CONFIG_H) $(ASSERT_H) stw.h bld.h bld-op.def bit.h \
+ type.h intrin.h intrin.def lab.h symbol.h symbol.def equiv.h storag.h \
+ global.h name.h
+stt.o: stt.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) stt.h top.h malloc.h \
+ where.h $(GLIMITS_H) bld.h bld-op.def bit.h com.h com-rt.def $(TREE_H) \
+ info.h info-b.def info-k.def info-w.def target.h bad.h bad.def lex.h \
+ type.h lab.h storag.h symbol.h symbol.def equiv.h global.h name.h \
+ intrin.h intrin.def stp.h expr.h sta.h stamp-str
+stu.o: stu.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) bld.h bld-op.def bit.h \
malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
type.h lab.h storag.h symbol.h symbol.def equiv.h global.h name.h \
- intrin.h intrin.def $(RTL_H) stv.h sta.h stamp-str
-symbol.o: symbol.c proj.h $(CONFIG_H) $(ASSERT_H) symbol.h symbol.def bld.h \
- bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def \
+ intrin.h intrin.def implic.h stu.h sta.h stamp-str
+stv.o: stv.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) stv.h lab.h com.h \
+ com-rt.def $(TREE_H) bld.h bld-op.def bit.h malloc.h info.h info-b.def \
info-k.def info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h \
- lex.h type.h lab.h storag.h $(RTL_H) intrin.h intrin.def equiv.h \
- global.h name.h src.h st.h
-target.o: target.c proj.h $(CONFIG_H) $(ASSERT_H) $(GLIMITS_H) target.h $(TREE_H) \
- bad.h bad.def where.h top.h malloc.h info.h info-b.def info-k.def \
- info-w.def type.h lex.h
-top.o: top.c proj.h $(CONFIG_H) $(ASSERT_H) top.h malloc.h where.h $(GLIMITS_H) \
- bad.h bad.def bit.h bld.h bld-op.def com.h com-rt.def $(TREE_H) info.h \
- info-b.def info-k.def info-w.def target.h lex.h type.h lab.h storag.h \
- symbol.h symbol.def equiv.h global.h name.h intrin.h intrin.def $(RTL_H) \
- data.h expr.h implic.h src.h st.h $(FLAGS_H)
-type.o: type.c proj.h $(CONFIG_H) $(ASSERT_H) type.h malloc.h
+ lex.h type.h intrin.h intrin.def symbol.h symbol.def equiv.h storag.h \
+ global.h name.h
+stw.o: stw.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) stw.h bld.h bld-op.def \
+ bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def info-k.def \
+ info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
+ type.h lab.h storag.h symbol.h symbol.def equiv.h global.h name.h \
+ intrin.h intrin.def stv.h sta.h stamp-str
+symbol.o: symbol.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) symbol.h \
+ symbol.def bld.h bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) \
+ info.h info-b.def info-k.def info-w.def target.h bad.h bad.def \
+ where.h $(GLIMITS_H) top.h lex.h type.h lab.h storag.h intrin.h \
+ intrin.def equiv.h global.h name.h src.h st.h
+target.o: target.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) $(GLIMITS_H) \
+ target.h $(TREE_H) bad.h bad.def where.h top.h malloc.h info.h \
+ info-b.def info-k.def info-w.def type.h lex.h
+top.o: top.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) top.h malloc.h where.h \
+ $(GLIMITS_H) bad.h bad.def bit.h bld.h bld-op.def com.h com-rt.def \
+ $(TREE_H) info.h info-b.def info-k.def info-w.def target.h lex.h type.h \
+ lab.h storag.h symbol.h symbol.def equiv.h global.h name.h intrin.h \
+ intrin.def data.h expr.h implic.h src.h st.h $(FLAGS_H) $(TOPLEV_H)
+type.o: type.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) type.h malloc.h
version.o: version.c
-where.o: where.c proj.h $(CONFIG_H) $(ASSERT_H) where.h $(GLIMITS_H) top.h \
- malloc.h lex.h
+where.o: where.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) where.h $(GLIMITS_H) \
+ top.h malloc.h lex.h
# The rest of this list (Fortran 77 language-specific files) is hand-generated.
@@ -462,7 +465,7 @@ fini.o:
`echo $(srcdir)/fini.c | sed 's,^\./,,'` -o $@
proj-h.o: proj.o
- $(HOST_CC) -c $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) \
+ $(HOST_CC) -c -DUSE_HCONFIG $(HOST_CFLAGS) $(HOST_CPPFLAGS) $(INCLUDES) \
`echo $(srcdir)/proj.c | sed 's,^\./,,'` -o $@
# Other than str-*.j, the *.j files are dummy #include files
@@ -484,7 +487,7 @@ proj-h.o: proj.o
# as will be the case with proj.h in a clean directory.
MG=-MG
deps-kinda:
- $(HOST_CC) -DMAKING_DEPENDENCIES -MM $(MG) *.c | \
+ $(HOST_CC) -DMAKING_DEPENDENCIES -MM $(MG) *.c 2>&1 | \
sed -e 's: \([.]/\)*assert[.]j: $$(ASSERT_H):g' \
-e 's: \([.]/\)*config[.]j: $$(CONFIG_H):g' \
-e 's: \([.]/\)*convert[.]j: $$(CONVERT_H):g' \
@@ -494,8 +497,10 @@ deps-kinda:
-e 's: \([.]/\)*input[.]j: $$(INPUT_H):g' \
-e 's: \([.]/\)*output[.]j: $$(OUTPUT_H):g' \
-e 's: \([.]/\)*rtl[.]j: $$(RTL_H):g' \
+ -e 's: \([.]/\)*system[.]j: $$(SYSTEM_H):g' \
-e 's: \([.]/\)*tconfig[.]j: $$(TCONFIG_H):g' \
-e 's: \([.]/\)*tm[.]j: $$(TM_H):g' \
+ -e 's: \([.]/\)*toplev[.]j: $$(TOPLEV_H):g' \
-e 's: \([.]/\)*tree[.]j: $$(TREE_H):g' \
-e 's: \([.]/\)*str[.]h: stamp-str:g' \
-e 's:.*g77spec.*::g' \
diff --git a/gcc/f/ansify.c b/gcc/f/ansify.c
index 2e2615c..b1838c1 100644
--- a/gcc/f/ansify.c
+++ b/gcc/f/ansify.c
@@ -22,12 +22,10 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* From f/proj.h, which uses #error -- not all C compilers
support that, and we want *this* program to be compilable
by pretty much any C compiler. */
-
-#include "assert.j" /* Use gcc's assert.h. */
-#include <stdio.h>
+#include "hconfig.j"
+#include "system.j"
+#include "assert.j"
#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
typedef enum
{
diff --git a/gcc/f/bad.c b/gcc/f/bad.c
index ec250eb..a2a4832 100644
--- a/gcc/f/bad.c
+++ b/gcc/f/bad.c
@@ -37,10 +37,10 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* Include files. */
#include "proj.h"
-#include <ctype.h>
#include "bad.h"
#include "flags.j"
#include "com.h"
+#include "toplev.j"
#include "where.h"
/* Externals defined here. */
@@ -457,7 +457,7 @@ ffebad_finish ()
if (ffebad_places_ == 0)
{
/* Didn't output "warning:" string, capitalize it for message. */
- if ((s[0] != '\0') && isalpha (s[0]) && islower (s[0]))
+ if ((s[0] != '\0') && ISALPHA (s[0]) && ISLOWER (s[0]))
{
char c;
@@ -486,7 +486,7 @@ ffebad_finish ()
if (c == '%')
{
c = ffebad_message_[++i];
- if (isalpha (c) && isupper (c))
+ if (ISALPHA (c) && ISUPPER (c))
{
index = c - 'A';
@@ -504,7 +504,7 @@ ffebad_finish ()
bufi = ffebad_bufputs_ (buf, bufi, s);
}
}
- else if (isdigit (c))
+ else if (ISDIGIT (c))
{
index = c - '0';
diff --git a/gcc/f/bld.c b/gcc/f/bld.c
index 814c18c..e8002b8 100644
--- a/gcc/f/bld.c
+++ b/gcc/f/bld.c
@@ -36,7 +36,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* Include files. */
#include "proj.h"
-#include <ctype.h>
#include "bld.h"
#include "bit.h"
#include "info.h"
@@ -446,6 +445,7 @@ ffebld_constant_cmp (ffebldConstant c1, ffebldConstant c2)
Displays the constant in summary form. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffebld_constant_dump (ffebldConstant c)
{
@@ -863,6 +863,7 @@ ffebld_constant_dump (ffebldConstant c)
break;
}
}
+#endif
/* ffebld_constant_is_magical -- Determine if integer is "magical"
@@ -2002,6 +2003,7 @@ ffebld_constant_new_typeless_val (ffebldConst type, ffetargetTypeless val)
supplied, is an ffebit object that is consulted as to whether the
constant at a particular offset is valid. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffebld_constantarray_dump (ffebldConstantArray array, ffeinfoBasictype bt,
ffeinfoKindtype kt, ffetargetOffset size, ffebit bits)
@@ -2057,6 +2059,7 @@ ffebld_constantarray_dump (ffebldConstantArray array, ffeinfoBasictype bt,
fprintf (dmpout, "\\)");
}
+#endif
/* ffebld_constantarray_get -- Get a value from an array of constants
@@ -4409,6 +4412,7 @@ ffebld_constantarray_put (ffebldConstantArray array, ffeinfoBasictype bt,
See prototype. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffebld_constantunion_dump (ffebldConstantUnion u, ffeinfoBasictype bt,
ffeinfoKindtype kt)
@@ -4737,12 +4741,14 @@ ffebld_constantunion_dump (ffebldConstantUnion u, ffeinfoBasictype bt,
break;
}
}
+#endif
/* ffebld_dump -- Dump expression tree in concise form
ffebld b;
ffebld_dump(b); */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffebld_dump (ffebld b)
{
@@ -4870,12 +4876,14 @@ ffebld_dump (ffebld b)
}
}
}
+#endif
/* ffebld_dump_prefix -- Dump the prefix for a constant of a given type
ffebld_dump_prefix(dmpout,FFEINFO_basictypeINTEGER,
FFEINFO_kindtypeINTEGER1); */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffebld_dump_prefix (FILE *out, ffeinfoBasictype bt, ffeinfoKindtype kt)
{
@@ -5172,6 +5180,7 @@ ffebld_dump_prefix (FILE *out, ffeinfoBasictype bt, ffeinfoKindtype kt)
break;
}
}
+#endif
/* ffebld_init_0 -- Initialize the module
diff --git a/gcc/f/bld.h b/gcc/f/bld.h
index cb6e1ab..406ac58 100644
--- a/gcc/f/bld.h
+++ b/gcc/f/bld.h
@@ -477,7 +477,9 @@ extern struct _ffebld_pool_stack_ ffebld_pool_stack_;
/* Declare functions with prototypes. */
int ffebld_constant_cmp (ffebldConstant c1, ffebldConstant c2);
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffebld_constant_dump (ffebldConstant c);
+#endif
bool ffebld_constant_is_magical (ffebldConstant c);
bool ffebld_constant_is_zero (ffebldConstant c);
#if FFETARGET_okCHARACTER1
@@ -680,8 +682,10 @@ ffebldConstant ffebld_constant_new_typeless_ov (ffelexToken t);
ffebldConstant ffebld_constant_new_typeless_val (ffebldConst type,
ffetargetTypeless val);
ffebldConstant ffebld_constant_negated (ffebldConstant c);
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffebld_constantarray_dump (ffebldConstantArray array, ffeinfoBasictype bt,
ffeinfoKindtype kt, ffetargetOffset size, ffebit bits);
+#endif
ffebldConstantUnion ffebld_constantarray_get (ffebldConstantArray array,
ffeinfoBasictype bt, ffeinfoKindtype kt, ffetargetOffset offset);
void ffebld_constantarray_kill (ffebldConstantArray array, ffeinfoBasictype bt,
@@ -698,10 +702,12 @@ void ffebld_constantarray_preparray (void **aptr, void **cptr, size_t *size,
ffeinfoBasictype cbt, ffeinfoKindtype ckt);
void ffebld_constantarray_put (ffebldConstantArray array, ffeinfoBasictype bt,
ffeinfoKindtype kt, ffetargetOffset offset, ffebldConstantUnion constant);
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffebld_constantunion_dump (ffebldConstantUnion u, ffeinfoBasictype bt,
ffeinfoKindtype kt);
void ffebld_dump (ffebld b);
void ffebld_dump_prefix (FILE *out, ffeinfoBasictype bt, ffeinfoKindtype kt);
+#endif
void ffebld_init_0 (void);
void ffebld_init_1 (void);
void ffebld_init_2 (void);
diff --git a/gcc/f/com.c b/gcc/f/com.c
index 2f7111f..3bb4921 100644
--- a/gcc/f/com.c
+++ b/gcc/f/com.c
@@ -87,9 +87,9 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "proj.h"
#if FFECOM_targetCURRENT == FFECOM_targetGCC
-#include "config.j"
#include "flags.j"
#include "rtl.j"
+#include "toplev.j"
#include "tree.j"
#include "output.j" /* Must follow tree.j so TREE_CODE is defined! */
#include "convert.j"
@@ -11484,7 +11484,9 @@ ffecom_end_transition ()
if (ffe_is_ffedebug ())
{
ffestorag_report ();
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
ffesymbol_report_all ();
+#endif
}
#if FFECOM_targetCURRENT == FFECOM_targetGCC
@@ -11569,7 +11571,9 @@ ffecom_exec_transition ()
if (ffe_is_ffedebug ())
{
ffestorag_report ();
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
ffesymbol_report_all ();
+#endif
}
if (inhibited)
diff --git a/gcc/f/com.h b/gcc/f/com.h
index 61f0e88..db8f469 100644
--- a/gcc/f/com.h
+++ b/gcc/f/com.h
@@ -83,8 +83,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
to build the libf2c with which g77-generated code is linked, or there
will probably be bugs, some of them difficult to detect or even trigger. */
-#include "config.j"
-
/* Do we need int (for 32-bit or 64-bit systems) or long (16-bit or
normally 32-bit) for f2c-type integers? */
diff --git a/gcc/f/equiv.c b/gcc/f/equiv.c
index 8f87f46..33f2eed 100644
--- a/gcc/f/equiv.c
+++ b/gcc/f/equiv.c
@@ -866,6 +866,7 @@ ffeequiv_add (ffeequiv eq, ffebld list, ffelexToken t)
ffeequiv eq;
ffeequiv_dump(eq); */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffeequiv_dump (ffeequiv eq)
{
@@ -873,6 +874,7 @@ ffeequiv_dump (ffeequiv eq)
fprintf (dmpout, "(common %s) ", ffesymbol_text (ffeequiv_common (eq)));
ffebld_dump (ffeequiv_list (eq));
}
+#endif
/* ffeequiv_exec_transition -- Do the hard work on all the equivalence objects
diff --git a/gcc/f/equiv.h b/gcc/f/equiv.h
index eba5bbf..daf0cee 100644
--- a/gcc/f/equiv.h
+++ b/gcc/f/equiv.h
@@ -62,7 +62,9 @@ struct _ffeequiv_
/* Declare functions with prototypes. */
void ffeequiv_add (ffeequiv eq, ffebld list, ffelexToken t);
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffeequiv_dump (ffeequiv eq);
+#endif
void ffeequiv_exec_transition (void);
void ffeequiv_init_2 (void);
void ffeequiv_kill (ffeequiv victim);
diff --git a/gcc/f/expr.c b/gcc/f/expr.c
index e118780..7e7bf86 100644
--- a/gcc/f/expr.c
+++ b/gcc/f/expr.c
@@ -31,7 +31,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* Include files. */
#include "proj.h"
-#include <ctype.h>
#include "expr.h"
#include "bad.h"
#include "bld.h"
@@ -9477,7 +9476,7 @@ static bool
ffeexpr_isdigits_ (char *p)
{
for (; *p != '\0'; ++p)
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
return FALSE;
return TRUE;
}
diff --git a/gcc/f/fini.c b/gcc/f/fini.c
index 491eeb4..44c749f 100644
--- a/gcc/f/fini.c
+++ b/gcc/f/fini.c
@@ -19,8 +19,8 @@ along with GNU Fortran; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
+#define USE_HCONFIG
#include "proj.h"
-#include <ctype.h>
#include "malloc.h"
#define MAXNAMELEN 100
@@ -306,7 +306,7 @@ main (int argc, char **argv)
}
else if (cc != EOF)
{
- while (((cc = getc (in)) != EOF) && (!isalnum (cc)))
+ while (((cc = getc (in)) != EOF) && (! ISALNUM (cc)))
;
ungetc (cc, in);
break;
@@ -377,7 +377,7 @@ main (int argc, char **argv)
for (i = 0; i < newname->namelen; ++i)
{
cc = buf[i];
- if (isascii (cc) && isalpha (cc))
+ if (ISALPHA (cc))
{
newname->name_uc[i] = toupper (cc);
newname->name_lc[i] = tolower (cc);
diff --git a/gcc/f/g77spec.c b/gcc/f/g77spec.c
index 4f5336b..7c78018 100644
--- a/gcc/f/g77spec.c
+++ b/gcc/f/g77spec.c
@@ -45,20 +45,8 @@ Boston, MA 02111-1307, USA. */
`gcc' itself. */
#include "config.h"
-
-#include <sys/types.h>
-#include <stdio.h>
-
+#include "system.h"
#include "gansidecl.h"
-
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-
-#ifdef HAVE_STRING_H
-#include <string.h>
-#endif
-
#include <f/version.h>
#ifndef MATH_LIBRARY
diff --git a/gcc/f/implic.c b/gcc/f/implic.c
index ee7d45f..bee8edf 100644
--- a/gcc/f/implic.c
+++ b/gcc/f/implic.c
@@ -31,7 +31,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* Include files. */
#include "proj.h"
-#include <ctype.h>
#include "implic.h"
#include "info.h"
#include "src.h"
@@ -93,7 +92,7 @@ static ffeimplic_
ffeimplic_lookup_ (char c)
{
/* NOTE: This is definitely ASCII-specific!! */
- if (isalpha (c) || (c == '_'))
+ if (ISALPHA (c) || (c == '_'))
return &ffeimplic_table_[c - 'A'];
return NULL;
}
diff --git a/gcc/f/intdoc.c b/gcc/f/intdoc.c
index 8569ed7..648b75a 100644
--- a/gcc/f/intdoc.c
+++ b/gcc/f/intdoc.c
@@ -20,16 +20,12 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
/* From f/proj.h, which uses #error -- not all C compilers
- support that, and we want _this_ program to be compilable
+ support that, and we want *this* program to be compilable
by pretty much any C compiler. */
-
-#include "assert.j" /* Use gcc's assert.h. */
-#include <stdio.h>
+#include "hconfig.j"
+#include "system.j"
+#include "assert.j"
#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
-#define FFEINTRIN_DOC 1
-#include "intrin.h"
typedef enum
{
@@ -44,6 +40,10 @@ typedef enum
#define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0]))
+/* Pull in the intrinsics info, but only the doc parts. */
+#define FFEINTRIN_DOC 1
+#include "intrin.h"
+
char *family_name (ffeintrinFamily family);
static void dumpif (ffeintrinFamily fam);
static void dumpendif (void);
diff --git a/gcc/f/intrin.c b/gcc/f/intrin.c
index 80f4dac..6e27d21 100644
--- a/gcc/f/intrin.c
+++ b/gcc/f/intrin.c
@@ -22,7 +22,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
*/
#include "proj.h"
-#include <ctype.h>
#include "intrin.h"
#include "expr.h"
#include "info.h"
@@ -1553,11 +1552,13 @@ ffeintrin_init_0 ()
p3 = ffeintrin_names_[i].name_ic;
for (; *p1 != '\0' && *p2 != '\0' && *p3 != '\0'; ++p1, ++p2, ++p3)
{
- if (!isascii (*p1) || !isascii (*p2) || !isascii (*p3))
+ if (! IN_CTYPE_DOMAIN (*p1)
+ || ! IN_CTYPE_DOMAIN (*p2)
+ || ! IN_CTYPE_DOMAIN (*p3))
break;
- if ((isdigit (*p1) || (*p1 == '_')) && (*p1 == *p2) && (*p1 == *p3))
+ if ((ISDIGIT (*p1) || (*p1 == '_')) && (*p1 == *p2) && (*p1 == *p3))
continue;
- if (!isupper (*p1) || !islower (*p2)
+ if (! ISUPPER (*p1) || ! ISLOWER (*p2)
|| (*p1 != toupper (*p2)) || ((*p3 != *p1) && (*p3 != *p2)))
break;
}
diff --git a/gcc/f/lex.c b/gcc/f/lex.c
index 2ce6b8b..c62e5b2 100644
--- a/gcc/f/lex.c
+++ b/gcc/f/lex.c
@@ -20,7 +20,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
#include "proj.h"
-#include <ctype.h>
#include "top.h"
#include "bad.h"
#include "com.h"
@@ -28,9 +27,9 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "malloc.h"
#include "src.h"
#if FFECOM_targetCURRENT == FFECOM_targetGCC
-#include "config.j"
#include "flags.j"
#include "input.j"
+#include "toplev.j"
#include "tree.j"
#include "output.j" /* Must follow tree.j so TREE_CODE is defined! */
#endif
@@ -770,7 +769,7 @@ ffelex_cfelex_ (ffelexToken *xtoken, FILE *finput, int c)
r = &q[buffer_length];
}
c = ffelex_getc_ (finput);
- if (!isdigit (c))
+ if (! ISDIGIT (c))
break;
}
*p = '\0';
@@ -1812,10 +1811,10 @@ ffelex_expecting_character ()
ffelexHandler
ffelex_file_fixed (ffewhereFile wf, FILE *f)
{
- register int c; /* Character currently under consideration. */
- register ffewhereColumnNumber column; /* Not really; 0 means column 1... */
+ register int c = 0; /* Character currently under consideration. */
+ register ffewhereColumnNumber column = 0; /* Not really; 0 means column 1... */
bool disallow_continuation_line;
- bool ignore_disallowed_continuation;
+ bool ignore_disallowed_continuation = FALSE;
int latest_char_in_file = 0; /* For getting back into comment-skipping
code. */
ffelexType lextype;
@@ -3033,11 +3032,11 @@ ffelex_file_fixed (ffewhereFile wf, FILE *f)
ffelexHandler
ffelex_file_free (ffewhereFile wf, FILE *f)
{
- register int c; /* Character currently under consideration. */
- register ffewhereColumnNumber column; /* Not really; 0 means column 1... */
- bool continuation_line;
+ register int c = 0; /* Character currently under consideration. */
+ register ffewhereColumnNumber column = 0; /* Not really; 0 means column 1... */
+ bool continuation_line = FALSE;
ffewhereColumnNumber continuation_column;
- int latest_char_in_file; /* For getting back into comment-skipping
+ int latest_char_in_file = 0; /* For getting back into comment-skipping
code. */
/* Lex is called for a particular file, not for a particular program unit.
@@ -4314,7 +4313,7 @@ ffelex_splice_tokens (ffelexHandler first, ffelexToken master,
while (*p != '\0')
{
- if (isdigit (*p))
+ if (ISDIGIT (*p))
{
t = ffelex_token_number_from_names (master, i);
p += ffelex_token_length (t);
diff --git a/gcc/f/lex.h b/gcc/f/lex.h
index 6cab085..c9a9dd5 100644
--- a/gcc/f/lex.h
+++ b/gcc/f/lex.h
@@ -92,7 +92,6 @@ typedef lex_sigh__ (*ffelexHandler) (ffelexToken);
/* Include files needed by this one. */
-#include <ctype.h>
#include "top.h"
#include "where.h"
@@ -173,7 +172,7 @@ ffelexToken ffelex_token_use (ffelexToken t);
#define ffelex_init_3()
#define ffelex_init_4()
#define ffelex_is_firstnamechar(c) \
- (isalpha ((c)) || ((c) == '_'))
+ (ISALPHA ((c)) || ((c) == '_'))
#define ffelex_terminate_0()
#define ffelex_terminate_1()
#define ffelex_terminate_2()
diff --git a/gcc/f/parse.c b/gcc/f/parse.c
index a25a9ec..6c92de9 100644
--- a/gcc/f/parse.c
+++ b/gcc/f/parse.c
@@ -20,8 +20,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
#include "proj.h"
-#include <ctype.h>
-#include <signal.h>
#include "top.h"
#include "com.h"
#include "where.h"
diff --git a/gcc/f/proj.c b/gcc/f/proj.c
index ad32353..6af2df5 100644
--- a/gcc/f/proj.c
+++ b/gcc/f/proj.c
@@ -20,7 +20,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
#include "proj.h"
-#include <ctype.h>
#include "glimits.j"
#ifndef HAVE_STRTOUL
@@ -33,7 +32,7 @@ strtoul (const char *nptr, char **endptr, int base)
assert (base == 10);
assert (endptr == NULL);
- while (isdigit (*nptr))
+ while (ISDIGIT (*nptr))
{
number = old_number * 10 + (*(nptr++) - '0');
if ((number <= old_number) && (old_number != 0))
diff --git a/gcc/f/proj.h b/gcc/f/proj.h
index 9367d8b..e592d8b 100644
--- a/gcc/f/proj.h
+++ b/gcc/f/proj.h
@@ -24,6 +24,13 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#ifndef _H_f_proj
#define _H_f_proj
+#ifdef USE_HCONFIG
+#include "hconfig.j"
+#else
+#include "config.j"
+#endif
+#include "system.j"
+
#if !defined (__GNUC__) || (__GNUC__ < 2)
#error "You have to use gcc 2.x to build g77 (might be fixed in g77-0.6)."
#endif
@@ -36,18 +43,13 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#endif
#endif /* !defined (BUILT_WITH_270) */
-/* Include files everyone gets. */
-
-#include "config.j" /* Must come before any other #includes in gcc. */
-#include "assert.j" /* Use gcc's assert.h. */
-#include <ctype.h>
-#include <stdio.h>
+/* Include files everyone gets. <assert.h> is needed for assert().
+ <stddef.h> is needed for offsetof, but technically also NULL,
+ size_t, ptrdiff_t, and so on. */
+#include "assert.j"
#include <stddef.h>
-#include <stdlib.h>
-#include <string.h>
/* Generally useful definitions. */
-
typedef enum
{
#if !defined(false) || !defined(true)
@@ -60,8 +62,6 @@ typedef enum
} bool;
#define ARRAY_SIZE(a) (sizeof(a)/sizeof(a[0]))
-#define STR(s) # s
-#define STRX(s) STR(s)
#ifndef UNUSED /* Compile with -DUNUSED= if cc doesn't support this. */
#if BUILT_WITH_270
diff --git a/gcc/f/src.c b/gcc/f/src.c
index 9a94b8d..3fd1755 100644
--- a/gcc/f/src.c
+++ b/gcc/f/src.c
@@ -29,7 +29,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
*/
#include "proj.h"
-#include <ctype.h>
#include "src.h"
#include "top.h"
diff --git a/gcc/f/src.h b/gcc/f/src.h
index 20a1993..0216a7c 100644
--- a/gcc/f/src.h
+++ b/gcc/f/src.h
@@ -87,9 +87,9 @@ extern bool ffesrc_ok_match_noninit_lower_;
characters for which ffelex_is_firstnamechar returns TRUE. */
#define ffesrc_is_name_init(c) \
- ((isalpha ((c))) || (!(1 || ffe_is_90 ()) && ((c) == '_')))
+ ((ISALPHA ((c))) || (! (1 || ffe_is_90 ()) && ((c) == '_')))
#define ffesrc_is_name_noninit(c) \
- ((isalnum ((c))) || (!(1 || ffe_is_90 ()) && ((c) == '_')))
+ ((ISALNUM ((c))) || (! (1 || ffe_is_90 ()) && ((c) == '_')))
/* Test if source-translated character matches given alphabetic character
(passed in both uppercase and lowercase, to allow for custom speedup
diff --git a/gcc/f/sta.c b/gcc/f/sta.c
index 9c0e148..58156f5 100644
--- a/gcc/f/sta.c
+++ b/gcc/f/sta.c
@@ -1452,7 +1452,9 @@ ffesta_eof ()
if (ffe_is_ffedebug ())
{
ffestorag_report ();
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
ffesymbol_report_all ();
+#endif
}
}
@@ -1988,7 +1990,9 @@ ffesta_zero (ffelexToken t)
if (ffe_is_ffedebug ())
{
ffestorag_report ();
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
ffesymbol_report_all ();
+#endif
}
ffelex_set_names (TRUE);
diff --git a/gcc/f/stb.c b/gcc/f/stb.c
index 20ddf8f..dc4bda4 100644
--- a/gcc/f/stb.c
+++ b/gcc/f/stb.c
@@ -88,7 +88,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* Include files. */
#include "proj.h"
-#include <ctype.h>
#include "stb.h"
#include "bad.h"
#include "expr.h"
@@ -1916,7 +1915,7 @@ ffestb_do (ffelexToken t)
goto bad_1; /* :::::::::::::::::::: */
case FFELEX_typeOPEN_PAREN: /* Must be "DO" label "WHILE". */
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
goto bad_i; /* :::::::::::::::::::: */
ffesta_tokens[1] = ffelex_token_number_from_names (ffesta_tokens[0],
i);
@@ -1939,7 +1938,7 @@ ffestb_do (ffelexToken t)
ffesta_tokens[1] = NULL;
return (ffelexHandler) ffestb_do2_;
}
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
goto bad_i; /* :::::::::::::::::::: */
ffesta_tokens[1] = ffelex_token_number_from_names (ffesta_tokens[0],
i);
@@ -1950,7 +1949,7 @@ ffestb_do (ffelexToken t)
return (ffelexHandler) ffestb_do2_;
case FFELEX_typeEQUALS:
- if (isdigit (*p))
+ if (ISDIGIT (*p))
{
ffesta_tokens[1]
= ffelex_token_number_from_names (ffesta_tokens[0], i);
@@ -1972,7 +1971,7 @@ ffestb_do (ffelexToken t)
case FFELEX_typeEOS:
case FFELEX_typeSEMICOLON:
ffesta_confirmed ();
- if (isdigit (*p))
+ if (ISDIGIT (*p))
{
ffesta_tokens[1]
= ffelex_token_number_from_names (ffesta_tokens[0], i);
@@ -3369,7 +3368,7 @@ ffestb_goto (ffelexToken t)
if (ffelex_token_length (ffesta_tokens[0]) != FFESTR_firstlGOTO)
{
p = ffelex_token_text (ffesta_tokens[0]) + (i = FFESTR_firstlGOTO);
- if (isdigit (*p))
+ if (ISDIGIT (*p))
{
nt = ffelex_token_number_from_names (ffesta_tokens[0], i);
p += ffelex_token_length (nt);
@@ -6691,7 +6690,7 @@ ffestb_R838 (ffelexToken t)
case FFELEX_typePERCENT:
case FFELEX_typeOPEN_PAREN:
p = ffelex_token_text (ffesta_tokens[0]) + (i = FFESTR_firstlASSIGN);
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
goto bad_i; /* :::::::::::::::::::: */
ffesta_tokens[1]
= ffelex_token_number_from_names (ffesta_tokens[0], i);
@@ -9688,7 +9687,7 @@ ffestb_R10014_ (ffelexToken t)
p = ffelex_token_text (t) + i;
if (*p == '\0')
return (ffelexHandler) ffestb_R10015_;
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
{
if (ffestb_local_.format.current == FFESTP_formattypeH)
p = strpbrk (p, "0123456789");
@@ -9766,7 +9765,7 @@ ffestb_R10014_ (ffelexToken t)
p = ffelex_token_text (t) + i;
if (*p == '\0')
return (ffelexHandler) ffestb_R10015_;
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
{
ffestb_local_.format.current = FFESTP_formattypeNone;
p = strpbrk (p, "0123456789");
@@ -10046,7 +10045,7 @@ ffestb_R10015_ (ffelexToken t)
p = ffelex_token_text (t) + i;
if (*p == '\0')
return (ffelexHandler) ffestb_R10015_;
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
{
ffestb_local_.format.current = FFESTP_formattypeNone;
p = strpbrk (p, "0123456789");
@@ -10220,7 +10219,7 @@ ffestb_R10018_ (ffelexToken t)
if (*++p == '\0')
return (ffelexHandler) ffestb_R10019_; /* Go get NUMBER. */
i = 1;
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
{
ffesta_ffebad_1p (FFEBAD_FORMAT_TEXT_IN_NUMBER, t, 1, NULL);
return (ffelexHandler) ffestb_R10018_;
@@ -11903,7 +11902,7 @@ ffestb_R12026_ (ffelexToken t)
default:
for (p = ffelex_token_text (ffesta_tokens[2]); *p != '\0'; ++p)
{
- if (!isalpha (*p))
+ if (! ISALPHA (*p))
{
ffelex_token_kill (ffesta_tokens[1]);
ffelex_token_kill (ffesta_tokens[2]);
@@ -12010,7 +12009,7 @@ ffestb_S3P4 (ffelexToken t)
ffeexpr_rhs (ffesta_output_pool, FFEEXPR_contextINCLUDE,
(ffeexprCallback) ffestb_S3P41_)))
(t);
- if (!isdigit (*p))
+ if (! ISDIGIT (*p))
goto bad_i; /* :::::::::::::::::::: */
nt = ffelex_token_number_from_names (ffesta_tokens[0], i);
p += ffelex_token_length (nt);
@@ -12443,7 +12442,7 @@ ffestb_V025 (ffelexToken t)
break;
}
p = ffelex_token_text (ffesta_tokens[0]) + (i = FFESTR_firstlDEFINEFILE);
- if (isdigit (*p))
+ if (ISDIGIT (*p))
nt = ffelex_token_number_from_names (ffesta_tokens[0], i);
else if (ffesrc_is_name_init (*p))
nt = ffelex_token_name_from_names (ffesta_tokens[0], i, 0);
@@ -17980,7 +17979,7 @@ ffestb_V020 (ffelexToken t)
break;
}
p = ffelex_token_text (ffesta_tokens[0]) + (i = FFESTR_firstlTYPE);
- if (isdigit (*p))
+ if (ISDIGIT (*p))
ffesta_confirmed (); /* Else might be '90 TYPE statement. */
for (ix = 0; ix < FFESTP_typeix; ++ix)
ffestp_file.type.type_spec[ix].kw_or_val_present = FALSE;
diff --git a/gcc/f/ste.c b/gcc/f/ste.c
index addafc4..4a2476d 100644
--- a/gcc/f/ste.c
+++ b/gcc/f/ste.c
@@ -48,8 +48,8 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "proj.h"
#if FFECOM_targetCURRENT == FFECOM_targetGCC
-#include "config.j"
#include "rtl.j"
+#include "toplev.j"
#endif
#include "ste.h"
diff --git a/gcc/f/stt.c b/gcc/f/stt.c
index aceb6ad..d2db379 100644
--- a/gcc/f/stt.c
+++ b/gcc/f/stt.c
@@ -121,6 +121,7 @@ ffestt_caselist_create ()
The cases in the list are dumped with commas separating them. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffestt_caselist_dump (ffesttCaseList list)
{
@@ -140,6 +141,7 @@ ffestt_caselist_dump (ffesttCaseList list)
}
}
}
+#endif
/* ffestt_caselist_kill -- Kill list of cases
@@ -443,6 +445,7 @@ ffestt_dimlist_create ()
The dims in the list are dumped with commas separating them. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffestt_dimlist_dump (ffesttDimList list)
{
@@ -459,6 +462,7 @@ ffestt_dimlist_dump (ffesttDimList list)
ffebld_dump (next->upper);
}
}
+#endif
/* ffestt_dimlist_kill -- Kill list of dims
@@ -614,6 +618,7 @@ ffestt_exprlist_drive (ffesttExprList list, void (*fn) ())
The exprs in the list are dumped with commas separating them. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffestt_exprlist_dump (ffesttExprList list)
{
@@ -626,6 +631,7 @@ ffestt_exprlist_dump (ffesttExprList list)
ffebld_dump (next->expr);
}
}
+#endif
/* ffestt_exprlist_kill -- Kill list of exprs
@@ -851,6 +857,7 @@ ffestt_implist_drive (ffesttImpList list, void (*fn) ())
The token pairs in the list are dumped with commas separating them. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffestt_implist_dump (ffesttImpList list)
{
@@ -870,6 +877,7 @@ ffestt_implist_dump (ffesttImpList list)
}
}
}
+#endif
/* ffestt_implist_kill -- Kill list of token pairs
@@ -934,7 +942,7 @@ ffestt_tokenlist_create ()
return tl;
}
-/* ffestt_tokenlist_drive -- Dump list of tokens
+/* ffestt_tokenlist_drive -- Drive list of tokens
ffesttTokenList tl;
void fn(ffelexToken t);
@@ -963,6 +971,7 @@ ffestt_tokenlist_drive (ffesttTokenList tl, void (*fn) ())
The tokens in the list are dumped with commas separating them. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffestt_tokenlist_dump (ffesttTokenList tl)
{
@@ -991,6 +1000,7 @@ ffestt_tokenlist_dump (ffesttTokenList tl)
}
}
}
+#endif
/* ffestt_tokenlist_handle -- Handle list of tokens
diff --git a/gcc/f/stt.h b/gcc/f/stt.h
index 770138a..38ffa41 100644
--- a/gcc/f/stt.h
+++ b/gcc/f/stt.h
@@ -164,7 +164,9 @@ struct _ffest_format_list_
void ffestt_caselist_append (ffesttCaseList list, bool range, ffebld case1,
ffebld case2, ffelexToken t);
ffesttCaseList ffestt_caselist_create (void);
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffestt_caselist_dump (ffesttCaseList list);
+#endif
void ffestt_caselist_kill (ffesttCaseList list);
void ffestt_dimlist_append (ffesttDimList list, ffebld lower, ffebld upper,
ffelexToken t);
@@ -172,29 +174,39 @@ ffebld ffestt_dimlist_as_expr (ffesttDimList list, ffeinfoRank *rank,
ffebld *array_size, ffebld *extents,
bool is_ugly_assumed);
ffesttDimList ffestt_dimlist_create (void);
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffestt_dimlist_dump (ffesttDimList list);
+#endif
void ffestt_dimlist_kill (ffesttDimList list);
ffestpDimtype ffestt_dimlist_type (ffesttDimList dims, bool is_ugly_assumed);
void ffestt_exprlist_append (ffesttExprList list, ffebld expr, ffelexToken t);
ffesttExprList ffestt_exprlist_create (void);
void ffestt_exprlist_drive (ffesttExprList list, void (*fn) ());
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffestt_exprlist_dump (ffesttExprList list);
+#endif
void ffestt_exprlist_kill (ffesttExprList list);
ffesttFormatList ffestt_formatlist_append (ffesttFormatList list);
ffesttFormatList ffestt_formatlist_create (ffesttFormatList parent,
ffelexToken t);
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffestt_formatlist_dump (ffesttFormatList list);
+#endif
void ffestt_formatlist_kill (ffesttFormatList list);
void ffestt_implist_append (ffesttImpList list, ffelexToken first,
ffelexToken last);
ffesttImpList ffestt_implist_create (void);
void ffestt_implist_drive (ffesttImpList list, void (*fn) ());
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffestt_implist_dump (ffesttImpList list);
+#endif
void ffestt_implist_kill (ffesttImpList list);
void ffestt_tokenlist_append (ffesttTokenList list, ffelexToken t);
ffesttTokenList ffestt_tokenlist_create (void);
void ffestt_tokenlist_drive (ffesttTokenList list, void (*fn) ());
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffestt_tokenlist_dump (ffesttTokenList list);
+#endif
ffelexHandler ffestt_tokenlist_handle (ffesttTokenList list,
ffelexHandler handler);
void ffestt_tokenlist_kill (ffesttTokenList list);
diff --git a/gcc/f/symbol.c b/gcc/f/symbol.c
index 65d9daf..8aa7230 100644
--- a/gcc/f/symbol.c
+++ b/gcc/f/symbol.c
@@ -794,6 +794,7 @@ ffesymbol_drive_sfnames (ffesymbol (*fn) ())
/* Dump info on the symbol for debugging purposes. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffesymbol_dump (ffesymbol s)
{
@@ -828,6 +829,7 @@ ffesymbol_dump (ffesymbol s)
ffeintrin_name_specific (s->specific),
ffeintrin_name_implementation (s->implementation));
}
+#endif
/* Produce generic error message about a symbol.
@@ -1011,6 +1013,7 @@ ffesymbol_reference (ffesymbol s, ffelexToken t, bool explicit)
/* Report info on the symbol for debugging purposes. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
ffesymbol
ffesymbol_report (ffesymbol s)
{
@@ -1172,9 +1175,11 @@ ffesymbol_report (ffesymbol s)
return s;
}
+#endif
/* Report info on the symbols. */
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void
ffesymbol_report_all ()
{
@@ -1182,6 +1187,7 @@ ffesymbol_report_all ()
ffename_space_drive_symbol (ffesymbol_local_, ffesymbol_report);
ffename_space_drive_symbol (ffesymbol_global_, ffesymbol_report);
}
+#endif
/* Resolve symbol that has become known intrinsic or non-intrinsic. */
diff --git a/gcc/f/symbol.h b/gcc/f/symbol.h
index d7990f4..b534ae6 100644
--- a/gcc/f/symbol.h
+++ b/gcc/f/symbol.h
@@ -180,7 +180,9 @@ ffesymbol ffesymbol_declare_subrunit (ffelexToken t);
void ffesymbol_drive (ffesymbol (*fn) ());
void ffesymbol_drive_sfnames (ffesymbol (*fn) ());
#define ffesymbol_dummyargs(s) ((s)->dummy_args)
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
void ffesymbol_dump (ffesymbol s);
+#endif
void ffesymbol_error (ffesymbol s, ffelexToken t);
#define ffesymbol_equiv(s) ((s)->equiv)
#define ffesymbol_explicitwhere(s) ((s)->explicit_where)
@@ -219,8 +221,10 @@ ffesymbol ffesymbol_lookup_local (ffelexToken t);
#define ffesymbol_ptr_to_namelist(s) (&(s)->namelist)
#define ffesymbol_rank(s) ffeinfo_rank((s)->info)
void ffesymbol_reference (ffesymbol s, ffelexToken t, bool explicit);
+#if FFECOM_targetCURRENT == FFECOM_targetFFE
ffesymbol ffesymbol_report (ffesymbol s);
void ffesymbol_report_all (void);
+#endif
void ffesymbol_resolve_intrin (ffesymbol s);
void ffesymbol_retract (bool retract);
bool ffesymbol_retractable (void);
diff --git a/gcc/f/system.j b/gcc/f/system.j
new file mode 100644
index 0000000..6a37324
--- /dev/null
+++ b/gcc/f/system.j
@@ -0,0 +1,27 @@
+/* system.j -- Wrapper for GCC's system.h
+ Copyright (C) 1998 Free Software Foundation, Inc.
+ Contributed by James Craig Burley (burley@gnu.org).
+
+This file is part of GNU Fortran.
+
+GNU Fortran is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Fortran is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Fortran; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+02111-1307, USA. */
+
+#ifndef MAKING_DEPENDENCIES
+#ifndef _J_f_system
+#define _J_f_system
+#include "system.h"
+#endif
+#endif
diff --git a/gcc/f/target.c b/gcc/f/target.c
index 602c1c6..b66fdc8 100644
--- a/gcc/f/target.c
+++ b/gcc/f/target.c
@@ -69,7 +69,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* Include files. */
#include "proj.h"
-#include <ctype.h>
#include "glimits.j"
#include "target.h"
#include "bad.h"
@@ -131,7 +130,7 @@ ffetarget_print_char_ (FILE *f, unsigned char c)
break;
default:
- if (isprint (c) && isascii (c))
+ if (ISPRINT (c))
fputc (c, f);
else
fprintf (f, "\\%03o", (unsigned int) c);
@@ -2386,7 +2385,7 @@ ffetarget_typeless_binary (ffetargetTypeless *xvalue, ffelexToken token)
new_value <<= 1;
if ((new_value >> 1) != value)
overflow = TRUE;
- if (isdigit (c))
+ if (ISDIGIT (c))
new_value += c - '0';
else
bad_digit = TRUE;
@@ -2430,7 +2429,7 @@ ffetarget_typeless_octal (ffetargetTypeless *xvalue, ffelexToken token)
new_value <<= 3;
if ((new_value >> 3) != value)
overflow = TRUE;
- if (isdigit (c))
+ if (ISDIGIT (c))
new_value += c - '0';
else
bad_digit = TRUE;
@@ -2474,7 +2473,7 @@ ffetarget_typeless_hex (ffetargetTypeless *xvalue, ffelexToken token)
new_value <<= 4;
if ((new_value >> 4) != value)
overflow = TRUE;
- if (isdigit (c))
+ if (ISDIGIT (c))
new_value += c - '0';
else if ((c >= 'A') && (c <= 'F'))
new_value += c - 'A' + 10;
diff --git a/gcc/f/top.c b/gcc/f/top.c
index 56c44ba..0b23ab1 100644
--- a/gcc/f/top.c
+++ b/gcc/f/top.c
@@ -30,7 +30,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
/* Include files. */
-#include <ctype.h>
#include "proj.h"
#include "top.h"
#include "bad.h"
@@ -56,6 +55,7 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "where.h"
#if FFECOM_targetCURRENT == FFECOM_targetGCC
#include "flags.j"
+#include "toplev.j"
#endif
/* Externals defined here. */
@@ -151,7 +151,7 @@ ffe_is_digit_string_ (char *s)
{
char *p;
- for (p = s; isdigit (*p); ++p)
+ for (p = s; ISDIGIT (*p); ++p)
;
return (p != s) && (*p == '\0');
diff --git a/gcc/f/toplev.j b/gcc/f/toplev.j
new file mode 100644
index 0000000..9ee892b
--- /dev/null
+++ b/gcc/f/toplev.j
@@ -0,0 +1,27 @@
+/* toplev.j -- Wrapper for GCC's toplev.h
+ Copyright (C) 1998 Free Software Foundation, Inc.
+ Contributed by James Craig Burley (burley@gnu.org).
+
+This file is part of GNU Fortran.
+
+GNU Fortran is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Fortran is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Fortran; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+02111-1307, USA. */
+
+#ifndef MAKING_DEPENDENCIES
+#ifndef _J_f_toplev
+#define _J_f_toplev
+#include "toplev.h"
+#endif
+#endif