aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/mk-kinds-h.sh
diff options
context:
space:
mode:
authorTobias Burnus <burnus@net-b.de>2010-08-28 07:35:47 +0000
committerTobias Burnus <burnus@net-b.de>2010-08-28 07:35:47 +0000
commit273c1c9a822c8c7f84cf685962e1e9e0b5b5bfee (patch)
tree0907ce87539b9d7227ed45e9ef70e00aa6b2370d /libgfortran/mk-kinds-h.sh
parentfaaf8c02e39ce6f117d6df0adcbce63e8cfb5d59 (diff)
2010-08-28 Tobias Burnus <burnus@net-b.de>
* mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@163612 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgfortran/mk-kinds-h.sh')
-rwxr-xr-xlibgfortran/mk-kinds-h.sh12
1 files changed, 10 insertions, 2 deletions
diff --git a/libgfortran/mk-kinds-h.sh b/libgfortran/mk-kinds-h.sh
index a16f9850254..0b8dbc5f94f 100755
--- a/libgfortran/mk-kinds-h.sh
+++ b/libgfortran/mk-kinds-h.sh
@@ -44,6 +44,7 @@ echo "#define GFC_UINTEGER_LARGEST GFC_UINTEGER_${largest}"
echo "#define GFC_DEFAULT_CHAR ${smallest}"
echo ""
+REAL_10_FOUND=
for k in $possible_real_kinds; do
echo " real (kind=$k) :: x" > tmp$$.f90
@@ -53,8 +54,15 @@ for k in $possible_real_kinds; do
case $k in
4) ctype="float" ; suffix="f" ;;
8) ctype="double" ; suffix="" ;;
- 10) ctype="long double" ; suffix="l" ;;
- 16) ctype="long double" ; suffix="l" ;;
+ 10) ctype="long double" ; suffix="l" ; REAL_10_FOUND=1 ;;
+ 16) ctype="long double"
+ suffix="l"
+ # Disable REAL(16) if it is just __float128
+ # until the library is fixed
+ if [ -n "$REAL_10_FOUND" ]; then
+ continue
+ fi
+ ;;
*) echo "$0: Unknown type" >&2 ; exit 1 ;;
esac