aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/generated/pow_c4_i4.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgfortran/generated/pow_c4_i4.c')
-rw-r--r--libgfortran/generated/pow_c4_i4.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/libgfortran/generated/pow_c4_i4.c b/libgfortran/generated/pow_c4_i4.c
index ca376710fba..35597d0df16 100644
--- a/libgfortran/generated/pow_c4_i4.c
+++ b/libgfortran/generated/pow_c4_i4.c
@@ -45,7 +45,8 @@ GFC_COMPLEX_4
pow_c4_i4 (GFC_COMPLEX_4 a, GFC_INTEGER_4 b)
{
GFC_COMPLEX_4 pow, x;
- GFC_INTEGER_4 n, u;
+ GFC_INTEGER_4 n;
+ GFC_UINTEGER_4 u;
n = b;
x = a;
@@ -55,10 +56,13 @@ pow_c4_i4 (GFC_COMPLEX_4 a, GFC_INTEGER_4 b)
if (n < 0)
{
- n = -n;
+ u = -n;
x = pow / x;
}
- u = n;
+ else
+ {
+ u = n;
+ }
for (;;)
{
if (u & 1)