summaryrefslogtreecommitdiff
path: root/libgfortran/mk-kinds-h.sh
diff options
context:
space:
mode:
authorburnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4>2010-08-28 07:35:47 +0000
committerburnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4>2010-08-28 07:35:47 +0000
commit40b35d436d32511622861a7cd4f23fdddfaed983 (patch)
tree0907ce87539b9d7227ed45e9ef70e00aa6b2370d /libgfortran/mk-kinds-h.sh
parent2c04725d073dd4b4c291592bfb2ff247e32acf4c (diff)
downloadgcc-40b35d436d32511622861a7cd4f23fdddfaed983.tar.gz
2010-08-28 Tobias Burnus <burnus@net-b.de>
* mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available. git-svn-id: svn+ssh://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