# Flang-new 19.0: "warning: overflow on power with INTEGER exponent"

**URL:** <https://fortran-lang.discourse.group/t/flang-new-19-0-warning-overflow-on-power-with-integer-exponent/7801>\
**Category:** Flang\
**Created:** [April 9, 2024, 4:36pm UTC](https://fortran-lang.discourse.group/t/flang-new-19-0-warning-overflow-on-power-with-integer-exponent/7801 "2024-04-09T16:36:00Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![zaikunzhang](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/zaikunzhang/32/785_2.png) [@zaikunzhang](https://fortran-lang.discourse.group/u/zaikunzhang)\
**Post date:** [April 9, 2024, 4:36pm UTC](https://fortran-lang.discourse.group/t/flang-new-19-0-warning-overflow-on-power-with-integer-exponent/7801/1 "2024-04-09T16:36:00Z")

</div>

I am using flang-new 19.0. With the following Fortran code

```fortran
! test_overflow.f90
program test_overflow
implicit none
print *, range(0.0)
print *, 10.0**(-32.0)
print *, 10.0**(-32)
end program test_overflow                                                                                                    

```

I got the following:

```bash
$ uname -a && flang-new --version && flang-new test_overflow.f90 && ./a.out 
Linux 6.5.0-26-generic #26~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Mar 12 10:22:43 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
flang-new version 19.0.0git (git@github.com:llvm/llvm-project.git 37c175af955f0aeab67e8c553a0a47b2ed0fdba2)
Target: x86_64-unknown-linux-gnu
Thread model: posix
./test_overflow.f90:6:10: warning: overflow on power with INTEGER exponent
  print *, 10.0**(-32)
           ^^^^^^^^^^^
 37
 1.E-32
 9.9999995E-33

```

Note that `print *, 10.0**(-32)` leads to an “overflow on power with INTEGER exponent”.

What is overflowing? Is this expected or a false positive?

See also [flang-new 19.0: "warning: overflow on power with INTEGER exponent“ · Issue #88151 · llvm/llvm-project · GitHub](https://github.com/llvm/llvm-project/issues/88151).

Thanks.

---

<div class="post-metadata">

**Author:** ![zaikunzhang](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/zaikunzhang/32/785_2.png) [@zaikunzhang](https://fortran-lang.discourse.group/u/zaikunzhang)\
**Post date:** [April 9, 2024, 5:52pm UTC](https://fortran-lang.discourse.group/t/flang-new-19-0-warning-overflow-on-power-with-integer-exponent/7801/2 "2024-04-09T17:52:16Z")

</div>

Related (yet different) bug of nvfortran 24.3-0:

> **[Bug of nvfortran 24.3-0: "fort1 TERMINATED by signal 11"](https://forums.developer.nvidia.com/t/bug-of-nvfortran-24-3-0-fort1-terminated-by-signal-11/289026)**
>
> Hi, This is a bug of nvfortran 24.3-0. To reproduce it, run git clone https://github.com/libprima/prima.git && cd prima/fortran/common && git checkout d86b5b29e12c81e5c52ddf2f5dfe20bac5725953 && nvfortran -c consts.F90 ...

---

<div class="post-metadata">

**Author:** ![zaikunzhang](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/zaikunzhang/32/785_2.png) [@zaikunzhang](https://fortran-lang.discourse.group/u/zaikunzhang)\
**Post date:** [April 9, 2024, 11:14pm UTC](https://fortran-lang.discourse.group/t/flang-new-19-0-warning-overflow-on-power-with-integer-exponent/7801/3 "2024-04-09T23:14:05Z")

</div>

> [@zaikunzhang](#):
>
> What is overflowing? Is this expected or a false positive?

This is confirmed a bug.

> <https://github.com/llvm/llvm-project/issues/88151#issuecomment-2045874182>
>
> Hi,
> 
> I am using flang-new 19.0. With the following Fortran code
> \`\`\`fortran
> !… test\_overflow.f90
> program test\_overflow
> implicit none
> print \*, range(0.0)
> print \*, 10.0\*\*(-32.0)
> print \*, 10.0\*\*(-32)
> end program test\_overflow                                                                                                    
> \`\`\`
> I got the following:
> \`\`\`bash
> $ uname -a && flang-new --version && flang-new test\_overflow.f90 && ./a.out 
> Linux 6.5.0-26-generic #26~22.04.1-Ubuntu SMP PREEMPT\_DYNAMIC Tue Mar 12 10:22:43 UTC 2 x86\_64 x86\_64 x86\_64 GNU/Linux
> flang-new version 19.0.0git (git@github.com:llvm/llvm-project.git 37c175af955f0aeab67e8c553a0a47b2ed0fdba2)
> Target: x86\_64-unknown-linux-gnu
> Thread model: posix
> ./test\_overflow.f90:6:10: warning: overflow on power with INTEGER exponent
> print \*, 10.0\*\*(-32)
> ^^^^^^^^^^^
> 37
> 1.E-32
> 9.9999995E-33
> \`\`\`
> 
> Note that \`print \*, 10.0\*\*(-32)\` leads to an "overflow on power with INTEGER exponent". 
> 
> What is overflowing? Is this expected or a false positive? 
> 
> Thanks.
