[flang-commits] [flang] [flang][docs] Documented `c_float128` and `c_float128_complex` extension (PR #201614)

Eugene Epshteyn via flang-commits flang-commits at lists.llvm.org
Thu Jun 4 08:39:06 PDT 2026


https://github.com/eugeneepshteyn created https://github.com/llvm/llvm-project/pull/201614

flang has supported this for a long time, but it wasn't documented as an extension

>From 74b866efd5705b1df1d35c4f451a1ec33a49ca93 Mon Sep 17 00:00:00 2001
From: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: Thu, 4 Jun 2026 11:37:42 -0400
Subject: [PATCH] [flang][docs] Documented `c_float128` and
 `c_float128_complex` extension

flang has supported this for a long time, but it wasn't documented as an
extension
---
 flang/docs/Extensions.md | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/flang/docs/Extensions.md b/flang/docs/Extensions.md
index 12fdc4d4945cb..6932a71105b9b 100644
--- a/flang/docs/Extensions.md
+++ b/flang/docs/Extensions.md
@@ -224,6 +224,10 @@ end
 * `BYTE` as synonym for `INTEGER(KIND=1)`; but not when spelled `TYPE(BYTE)`.
 * When kind-param is used for REAL literals, allow a matching exponent letter
 * Quad precision REAL literals with `Q`
+* The `ISO_C_BINDING` module exports the gfortran-compatible extension named
+  constants `c_float128` and `c_float128_complex` (both with the value 16),
+  the kind parameter for 128-bit (quad precision) real and complex C
+  interoperable types. These are not defined by the Fortran standard.
 * `X` prefix/suffix as synonym for `Z` on hexadecimal literals
 * `B`, `O`, `Z`, and `X` accepted as suffixes as well as prefixes
 * Support for using bare `L` in FORMAT statement



More information about the flang-commits mailing list