#
DTOQ 1L "27 April 1993"

##
Table of contents

#
DTOQ 1L "27 April 1993"

dtoq - convert Fortran program from double-precision to quadruple-precision

**dtoq**
< infile >outfile
**dtoq**
copies its standard input to standard output,
converting Fortran double-precision constants,
built-in functions, and type declarations to
quadruple precision.

Floating-point FORMAT specifications are left
intact; on some ancient systems, they may require
modifications. They do
*not*
under the rules of Fortran 77.

Leading tabs are correctly interpreted according
to common extended Fortran rules.

**dtoq**
recognizes all of the standard Fortran 77
double-precision functions, quadruple-precision
extensions as well as the pair
**drand/qrand**
(UNIX pseudo-random number generators), and
the pair
**d1mach/q1mach**
from the PORT library framework.

**dtoq**'s
other purpose is to demonstrate a modest
**lex**(1)
program.

Undeclared variables are not type-converted. To find
such instances, use the Extended PFORT Verifier,
**pfort**(1),
or the Fortran checker,
**ftnchek**(1).
Some UNIX Fortran compilers have a compile-time
option, usually called
*-u*,
to flag undeclared variables.
Text beyond column 72 is discarded when
lines are collected into Fortran statements.

**dtoq**
does not handle embedded ASCII tab characters
correctly when long lines are to be broken. A
Fortran-sensitive detabbing utility should be
applied first if the input file possibly contains
embedded tabs. Note that
**expand**(1)
*cannot*
be used to do this job correctly!

Mixed-precision code may not be converted correctly.
For example,
**DBLE(FLOAT(N))**
will become
**DBLEQ(FLOAT(N))**,
which is syntactically incorrect.

Functions and variables of type
**COMPLEX**
are not converted, because Fortran 77 does not
define a double precision complex type. Complex
constants will be converted, however, since their
real and imaginary parts look like normal
floating-point values.

**dtos**(1),
**ftnchek**(1),
**lex**(1),
**pfort**(1),
**qtod**(1),
**stod**(1).

Nelson H. F. Beebe, Ph.D.
Center for Scientific Computing

Department of Mathematics

University of Utah

Salt Lake City, UT 84112

Tel: +1 801 581 5254

FAX: +1 801 581 4148

Email: <beebe@math.utah.edu>