Jump to content
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
HP.com home

Transition Impacts

Tru64 UNIX Software Transition Kit


» HP STK home
» Home
» Overview
» Tools
» Documentation
» Transition impacts
» Identifier types
» Impact list
» Porting to HP-UX
» Glossary
» Help
» Send us feedback
Site maps
» Tru64 UNIX STK
Content starts here

critical impact:

cabs, cabsf, cabsl - incompatible parameters; jackets temporarily available; use complex data type (CrCh88)

LIB Impacts ME Impacts

Problem description

The parameters used by the cabs, cabsf, and cabsl functions on Tru64 UNIX are incompatible with the parameters on HP-UX. Alternate function declarations are available on a temporary basis in the Tru64 UNIX Migration Environment for HP-UX.

The following example shows the Tru64 UNIX function prototypes:

double cabs(double x, double y );
float cabsf(float x, float y );
long double cabsl(long double x, long double y );

The following example shows the HP-UX function prototypes:

double cabs(double complex z);
float cabsf(float complex z);
long double cabsl(long double complex z);

The Migration Environment contains Tru64 UNIX APIs, development tools, and commands and utilities to assist customers in migrating their applications from Tru64 UNIX to HP-UX.


C/C++ Functionscabs C/C++ Functionscabsf C/C++ Functionscabsl        

See also

Solution description

Review the applicable manpages and code. The alternate cabs, cabsf, and cabsl function declarations are available in the Tru64 UNIX Migration Environment for HP-UX.

The Tru64 UNIX and HP-UX parameter types for these routines are incompatible. Applications will be able to use the function declarations from the Migration Environment. Please note that the Migration Environment is temporary.

HP-UX has a built-in complex data type similar to the Fortran type in three precisions: float _Complex, double _Complex, and long double _Complex. It also has an associated header file, <complex.h>. The <complex.h> header file defines a complex macro, and is the preferred way to refer to the types. A complex type has the same representation and alignment requirements as an array type containing exactly two elements of the corresponding real type: the first element is equal to the real part and the second element to the imaginary part of the complex number.

Note: If you use the cabs, cabsf, and cabsl function declarations in the Tru64 UNIX Migration Environment, do not include the <complex.h> header file in your application; this header file does not exist in Tru64 UNIX so use the <math.h> header instead.

See also

Problem summary

classifications source types OS release severity type
LIB, ME C, C++ any HP-UX 11i version critical changed
Printable version
Privacy statement Using this site means you accept its terms Feedback to DSPP
© 2007 Hewlett-Packard Development Company, L.P.