diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/f/ChangeLog | 66 | ||||
-rw-r--r-- | gcc/f/Make-lang.in | 2 | ||||
-rw-r--r-- | gcc/f/Makefile.in | 293 | ||||
-rw-r--r-- | gcc/f/ansify.c | 8 | ||||
-rw-r--r-- | gcc/f/bad.c | 8 | ||||
-rw-r--r-- | gcc/f/bld.c | 11 | ||||
-rw-r--r-- | gcc/f/bld.h | 6 | ||||
-rw-r--r-- | gcc/f/com.c | 6 | ||||
-rw-r--r-- | gcc/f/com.h | 2 | ||||
-rw-r--r-- | gcc/f/equiv.c | 2 | ||||
-rw-r--r-- | gcc/f/equiv.h | 2 | ||||
-rw-r--r-- | gcc/f/expr.c | 3 | ||||
-rw-r--r-- | gcc/f/fini.c | 6 | ||||
-rw-r--r-- | gcc/f/g77spec.c | 14 | ||||
-rw-r--r-- | gcc/f/implic.c | 3 | ||||
-rw-r--r-- | gcc/f/intdoc.c | 16 | ||||
-rw-r--r-- | gcc/f/intrin.c | 9 | ||||
-rw-r--r-- | gcc/f/lex.c | 21 | ||||
-rw-r--r-- | gcc/f/lex.h | 3 | ||||
-rw-r--r-- | gcc/f/parse.c | 2 | ||||
-rw-r--r-- | gcc/f/proj.c | 3 | ||||
-rw-r--r-- | gcc/f/proj.h | 22 | ||||
-rw-r--r-- | gcc/f/src.c | 1 | ||||
-rw-r--r-- | gcc/f/src.h | 4 | ||||
-rw-r--r-- | gcc/f/sta.c | 4 | ||||
-rw-r--r-- | gcc/f/stb.c | 29 | ||||
-rw-r--r-- | gcc/f/ste.c | 2 | ||||
-rw-r--r-- | gcc/f/stt.c | 12 | ||||
-rw-r--r-- | gcc/f/stt.h | 12 | ||||
-rw-r--r-- | gcc/f/symbol.c | 6 | ||||
-rw-r--r-- | gcc/f/symbol.h | 4 | ||||
-rw-r--r-- | gcc/f/system.j | 27 | ||||
-rw-r--r-- | gcc/f/target.c | 9 | ||||
-rw-r--r-- | gcc/f/top.c | 4 | ||||
-rw-r--r-- | gcc/f/toplev.j | 27 |
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 |