#!/usr/local/bin/perl $, = ' '; # set output field separator $\ = "\n"; # set output record separator @files = @ARGV; print <<'EOD';
CALL
statement, but make sure that the constant or expression has the
correct data type.
INTEGER
arguments:
INTEGER
or INTEGER*4
in the calling program,
not INTEGER*2
.
REAL
arguments:
REAL
or REAL*4
in the calling program, not
REAL*8
or DOUBLE PRECISION
.
LOGICAL
arguments:
LOGICAL
or LOGICAL*4
in the calling program.
CHARACTER
arguments:
CHARACTER
variable may be used (declared
CHARACTER*n
for some integer n
).
EOD # Extract documentation from pgplot source code: output index of routines print '
' if $echo == 0; $echo = 1; print &Getline0(); next; }; /^C--/ && do { print '' if $echo == 1; $echo = 0; next; }; next if ! $echo; /^C/ && do { # replace module names with links. when a module name is recognized, # it's replaced by a tag in the line to avoid multiple recognitions # (by modules which have similar substrings). the tags are replaced # by the actual links after all identifications have been made. # it'd be cheaper to have the tags be variables that could be # interpolated, but there's no guarantee that the rest of the text # wouldn't be adversely affected. thus, a set of replacements is # created and then eval'd $line = substr($_, 2); $reps = 0; $repstr = ''; foreach $module (@modules) { $start = index($line, $module); next if $start == -1; $tag = sprintf("REPLACE<%04d>", $reps); $line = join('', substr($line, 0, $start), $tag, substr($line, $start+length($module))); $repstr .= "\$line =~ s:$tag:$ref{$module}:;\n"; ++$reps; } eval $repstr if $repstr ne ''; print $line; next; }; print; } print <<'EOD';