summaryrefslogtreecommitdiff
path: root/hints/hpux.sh
diff options
context:
space:
mode:
authorH.Merijn Brand <h.m.brand@xs4all.nl>2018-07-02 18:25:16 +0200
committerH.Merijn Brand <h.m.brand@xs4all.nl>2018-07-02 18:25:16 +0200
commitf60eaa6ecf8e44162194a4eb2d9560205d4ee575 (patch)
treec5afcdb420827ff1b43bd6a1d282e6b9bd977f28 /hints/hpux.sh
parent3256503ed11b2de442930266ddda2e95557511fe (diff)
downloadperl-f60eaa6ecf8e44162194a4eb2d9560205d4ee575.tar.gz
Disable optimizer on pp_pack for HP C-ANSI-C on HP-UX 11.11
with optimize levels +O1 and higher: $ ./miniperl -I./lib -wE'$a = pack "Cn4", 1, 3726, 32, 2' Character in 'C' format wrapped in pack at -e line 1. with +O0 (or no -O/+O) all goes well Chances are too small to care that this will ever be fixed This was found as the Test::Smoke run on this system created a log-file of over 350 Mb with 4016149 warnings like the above
Diffstat (limited to 'hints/hpux.sh')
-rw-r--r--hints/hpux.sh16
1 files changed, 10 insertions, 6 deletions
diff --git a/hints/hpux.sh b/hints/hpux.sh
index 91a4d7d388..a2a6bb01b2 100644
--- a/hints/hpux.sh
+++ b/hints/hpux.sh
@@ -403,6 +403,7 @@ doop_cflags=''
op_cflags=''
opmini_cflags=''
perlmain_cflags=''
+pp_pack_cflags=''
fi
case "$ccisgcc" in
@@ -458,13 +459,16 @@ case "$ccisgcc" in
B.11.11.*)
# opmini.c and op.c with +O2 makes the compiler die
# of internal error, for perlmain.c only +O0 (no opt)
- # works.
+ # works. Disable +Ox for pp_pack, as the optimizer
+ # causes this unit to fail (not a limit issue)
case "$optimize" in
- *O2*) opt=`echo "$optimize" | sed -e 's/O2/O1/'`
- opmini_cflags="optimize=\"$opt\""
- op_cflags="optimize=\"$opt\""
- perlmain_cflags="optimize=\"\""
- ;;
+ *O[12]*)
+ opt=`echo "$optimize" | sed -e 's/O2/O1/' -e 's/ *+Onolimit//'`
+ opmini_cflags="optimize=\"$opt\""
+ op_cflags="optimize=\"$opt\""
+ perlmain_cflags="optimize=\"\""
+ pp_pack_cflags="optimize=\"\""
+ ;;
esac
esac
;;