On Tue, Feb 20, 2007, David M. Fetter wrote:
>Ya, I did that already. It has the same failure.
It looks like some structure is missing members.
Look at line 2440 in this file to see what structure is referenced with the
term gfc_expr:
/usr/local/RPM/USER/TMP/gcc-4.1.1/obj/../gcc/fortran/arith.c
Then try to figure out which header file contains the structure and whether
you can see gfc_expr anyplace.
I frequently use the attached perl script to create a pre-processed tmp.c
file so I can see exactly what's going on. Capture the output of the build
so you have the compile line that failed, then replace the first ``gcc'' or
``cc'' part with this script redirecting the output to a file for analysis
(watch out for -o options as the preprocessed output will end up there if
it's present).
The line with do.*csspath can be removed, and the spitshell stuff at the
top fixed to fit your system.
...
Bill
--
INTERNET: [EMAIL PROTECTED] Bill Campbell; Celestial Software LLC
URL: http://www.celestial.com/ PO Box 820; 6641 E. Mercer Way
FAX: (206) 232-9186 Mercer Island, WA 98040-0820; (206) 236-1676
``One of the common failings among honorable people is a failure to
appreciate how thoroughly dishonorable some other people can be, and how
dangerous it is to trust them.''
- Thomas Sowell
:
#!/csrel25/bin/perl
eval ' exec /csrel25/bin/perl -S $0 "$@" '
if $running_under_some_shell;
shift if(join("", @ARGV) eq ""); # Xenix Kludge
# $Header: /vol/cscvs/lbin/cpp,v 2.5 2000/04/11 17:37:24 bill Exp $
# $Date: 2000/04/11 17:37:24 $
# @(#) $Id: cpp,v 2.5 2000/04/11 17:37:24 bill Exp $
( $progname = $0 ) =~ s!.*/!!; # save this very early
do "/csrel25/etc/csspath.perl" unless $ENV{'USR_BIN_CSSPATH'};
$verbose = '-v' if $opt_v;
$suffix = $$ unless $opt_v;
$\ = "\n"; # use newlines as separators.
$COMMENT_INCLUDES = 1; # may be replaced by environment variable
require 'importenv.pl';
$CC = 'gcc' unless $CC;
$CC =~ s/^\s*time\s+//;
undef $LINT_FLAGS if $GCC_LOCAL;
die("No argments specified") unless @ARGV;
$cmd = "$CC -E $LINT_FLAGS @ARGV|";
print STDERR $cmd;
open(CPP, $cmd)
|| die("open(CPP, $cmd) failed");
while(<CPP>) {
s/\s+$//;
# strip trailing whitespace;
next unless $_;
# skip blank lines
s,^(#.*),/* $1 */, if $COMMENT_INCLUDES;
print;
}