Date: Wed, 29 May 96 17:57:10 +0100 From: Jean-Marc Zucconi <jmz@cabri.obs-besancon.fr> To: jonas@mcs.com Cc: hackers@freebsd.org, jonas@mcs.net Subject: Re: Potential f77 bugs Message-ID: <9605291657.AA01122@cabri.obs-besancon.fr> In-Reply-To: <m0uOmxU-0005yQC@mars.mcs.com> (jonas@mcs.com)
next in thread | previous in thread | raw e-mail | index | archive | help
>>>>> Lars Jonas Olsson writes: > Some f2c flags are processed. The rule is: > (From usr/src/gnu/usr.bin/cc/cc/gcc.c) > /***** ljo's Fortran rule *****/ > {".f", "@f2c"}, > {"@f2c", > "f2c %{checksubscripts:-C} %{I2} %{onetrip} %{honorcase:-U} %{u} %{w}\ > %{ANSIC:-A} %{a} %{C++}\ > %{c} %{E} %{ec} %{ext} %{f} %{72} %{g} %{h} %{i2} %{kr}\ > %{P} %{p} %{r} %{r8} %{s} %{w8} %{z} %{N*}\ > %i %{!pipe: -o %g.c} %{pipe:-o -}|\n", > "cpp -lang-c %{nostdinc*} %{C} %{v} %{A*} %{I*} %{P} %I\ > %{C:%{!E:%eGNU C does not support -C without using -E}}\ > %{M} %{MM} %{MD:-MD %b.d} %{MMD:-MMD %b.d} %{MG}\ > -undef -D__GNUC__=%v1 -D__GNUC_MINOR__=%v2\ > %{ansi:-trigraphs -$ -D__STRICT_ANSI__}\ > %{!undef:%{!ansi:%p} %P} %{trigraphs} \ > %c %{O*:%{!O0:-D__OPTIMIZE__}} %{traditional} %{ftraditional:-traditional}\ > %{traditional-cpp:-traditional}\ > %{g*} %{W*} %{w} %{pedantic*} %{H} %{d*} %C %{D*} %{U*} %{i*}\ > %{pipe:-} %{!pipe:%g.c} %{!M:%{!MM:%{!E:%{!pipe:%g.i}}}}%{E:%W{o*}}%{M:%W{o*}}%{MM:%W{o*}} |\n", > "%{!M:%{!MM:%{!E:cc1 %{!pipe:%g.i} %1 \ > %{!Q:-quiet} -dumpbase %b.c %{d*} %{m*} %{a}\ > %{g*} %{O*} %{W*} %{w} %{pedantic*} %{ansi} \ > %{traditional} %{v:-version} %{pg:-p} %{p} %{f*}\ > %{aux-info*}\ > %{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\ > %{S:%W{o*}%{!o*:-o %b.s}}%{!S:-o %{|!pipe:%g.s}} |\n\ > %{!S:as %{R} %{j} %{J} %{h} %{d2} %a %Y\ > %{c:%W{o*}%{!o*:-o %w%b.o}}%{!c:-o %d%w%u.o}\ > %{!pipe:%g.s} %A\n }}}}"}, > /***** End of ljo's Fortran rule *****/ > This means that we forward to f2c the arguments: > -checksubscripts (renamed to -C before being sent to f2c) > -I2 > -onetrip (This one is erronuous as it conflicts with gcc's -o) > -honorcase (renamed to -U) > -u > -w > -ANSIC (renamed to -A) > -a > -C++ > etc. But there is still a bug: try -E, -ext, -ec, -u. They generate errors, because it seems that they are also passed to cpp, cc1, etc. For instance 'f77 -ext -c foo.f' works but 'f77 -ext foo.f' fails (rejected by ld) Jean-Marc -- _____________________________________________________________________________ Jean-Marc Zucconi Observatoire de Besancon F 25010 Besancon cedex PGP Key: finger jmz@cabri.obs-besancon.fr =============================================================================
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9605291657.AA01122>