[flang-commits] [flang] [Flang] Fix test case for AIX(big-endian) system for issuing an extra message. (PR #104792)
via flang-commits
flang-commits at lists.llvm.org
Mon Aug 19 07:53:08 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-flang-semantics
Author: Daniel Chen (DanielCChen)
<details>
<summary>Changes</summary>
The 10-byte FP on big-endian system such as AIX is not represented as a valid number in FE, so Flang issues an extra WARNING message as `underflow on REAL(10) to REAL(4) conversion` for `_10` for such a number.
This PR is to fix the test case.
---
Full diff: https://github.com/llvm/llvm-project/pull/104792.diff
1 Files Affected:
- (modified) flang/test/Semantics/kinds04_q16.f90 (+5-1)
``````````diff
diff --git a/flang/test/Semantics/kinds04_q16.f90 b/flang/test/Semantics/kinds04_q16.f90
index 885ca8c8392b68..d440fa4d1402d2 100644
--- a/flang/test/Semantics/kinds04_q16.f90
+++ b/flang/test/Semantics/kinds04_q16.f90
@@ -1,4 +1,5 @@
-! RUN: %python %S/test_errors.py %s %flang_fc1
+! RUN: not %flang_fc1 %s 2>%t.stderr
+! RUN: FileCheck %s --input-file=%t.stderr --check-prefixes=%if system-aix %{"PORTABILITY","WARNING","ERROR","AIX_WARNING"%} %else %{"PORTABILITY","WARNING","ERROR"%}
! C716 If both kind-param and exponent-letter appear, exponent-letter
! shall be E. (As an extension we also allow an exponent-letter which matches
! the kind-param)
@@ -15,10 +16,12 @@ subroutine s(var)
!PORTABILITY: Explicit kind parameter together with non-'E' exponent letter is not standard
real :: realvar4 = 4.0D6_8
!WARNING: Explicit kind parameter on real constant disagrees with exponent letter 'q'
+ !AIX_WARNING: underflow on REAL(10) to REAL(4) conversion
real :: realvar5 = 4.0Q6_10
!PORTABILITY: Explicit kind parameter together with non-'E' exponent letter is not standard
real :: realvar6 = 4.0Q6_16
real :: realvar7 = 4.0E6_8
+ !AIX_WARNING: underflow on REAL(10) to REAL(4) conversion
real :: realvar8 = 4.0E6_10
real :: realvar9 = 4.0E6_16
!ERROR: Unsupported REAL(KIND=32)
@@ -32,6 +35,7 @@ subroutine s(var)
!PORTABILITY: Explicit kind parameter together with non-'E' exponent letter is not standard
double precision :: doublevar5 = 4.0Q6_16
double precision :: doublevar6 = 4.0E6_8
+ !AIX_WARNING: underflow on REAL(10) to REAL(8) conversion
double precision :: doublevar7 = 4.0E6_10
double precision :: doublevar8 = 4.0E6_16
!ERROR: Unsupported REAL(KIND=32)
``````````
</details>
https://github.com/llvm/llvm-project/pull/104792
More information about the flang-commits
mailing list