Re: "errno" not set in case of "libm" functions (HPUX) - Mailing list pgsql-hackers
| From | Tom Lane |
|---|---|
| Subject | Re: "errno" not set in case of "libm" functions (HPUX) |
| Date | |
| Msg-id | 12327.1306260820@sss.pgh.pa.us Whole thread Raw |
| In response to | Re: "errno" not set in case of "libm" functions (HPUX) (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>) |
| Responses |
Re: "errno" not set in case of "libm" functions (HPUX)
|
| List | pgsql-hackers |
Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> writes:
> So the default is indeed non-standard. But I wonder if we should use -Aa
> instead?
Probably not; at least on older HPUX versions, -Aa turns off access to
assorted stuff that we do want, eg "long long". "man cc" on my box
saith
-Amode Specify the compilation standard to be used by the compiler. mode can be one of
thefollowing letters:
c (Default) Compile in a mode compatible with HP-UX releases prior
to7.0. (See The C Programming Language, First Edition by Kernighan
andRitchie). This option also defines the symbol _HPUX_SOURCE and allows the
user to access macros and typedefs provided by the HPUX Operating System. The
default compilation mode may change in future releases.
a Compile under ANSI mode (ANSI programming language C standard ISO
9899:1990). When compiling under ANSI mode, the header files would
defineonly those names (macros and typedefs) specified by the Standard. To access
macros and typedefs that are not defined by the ANSI Standard but are provided
bythe HPUX Operating System, define the symbol _HPUX_SOURCE; or use
theextension option described below.
e Extended ANSI mode. Same as -Aa -D_HPUX_SOURCE +e. This would
definethe names (macros and typedefs) provided by the HPUX Operating System
and, in addition, allow the following extensions: $ characters in identifier names,
sized enums, sized bit-fields, and 64-bit integral type long long.
Additionalextensions may be added to this option in the future.
The +e option is elsewhere stated to mean
+e Enables HP value-added features while compiling in ANSI C mode,
-Aa. This option is ignored with -Ac because these features are already
provided. Features enabled:
o Long pointers o Integral type specifiers can appear
in enum declarations. o The $ character can appear in
identifier names. o Missing parameters on intrinsic
calls
which isn't 100% consistent with what it says under -Ae, so maybe some
additional experimentation is called for. But anyway, autoconf appears
to think that -Ae is preferable to the combination -Aa -D_HPUX_SOURCE
(that choice is coming from autoconf not our own code); so I'm not
optimistic that we can get more-standard behavior by overriding that.
regards, tom lane
pgsql-hackers by date: