re PR ada/78845 (Inverse (Real_Matrix) result has wrong bounds)
authorArnaud Charlet <charlet@adacore.com>
Tue, 25 Apr 2017 12:44:16 +0000 (14:44 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Tue, 25 Apr 2017 12:44:16 +0000 (14:44 +0200)
PR ada/78845

* a-ngcoar.adb, a-ngrear.adb (Inverse): call Unit_Matrix with First_1
set to A'First(2) and vice versa.

From-SVN: r247214

gcc/ada/ChangeLog
gcc/ada/a-ngcoar.adb
gcc/ada/a-ngrear.adb

index 1cb5c4d..3e6afcd 100644 (file)
@@ -1,3 +1,10 @@
+2017-04-25  Arnaud Charlet  <charlet@adacore.com trojanek>
+
+       PR ada/78845
+
+       * a-ngcoar.adb, a-ngrear.adb (Inverse): call Unit_Matrix with First_1
+       set to A'First(2) and vice versa.
+
 2017-04-25  Yannick Moy  <moy@adacore.com>
 
        * freeze.adb (Freeze_Record_Type): Remove obsolete
index e9b2465..bee1bc1 100644 (file)
@@ -1153,7 +1153,9 @@ package body Ada.Numerics.Generic_Complex_Arrays is
    -------------
 
    function Inverse (A : Complex_Matrix) return Complex_Matrix is
-     (Solve (A, Unit_Matrix (Length (A))));
+     (Solve (A, Unit_Matrix (Length (A),
+                             First_1 => A'First (2),
+                             First_2 => A'First (1))));
 
    -------------
    -- Modulus --
index c3b954a..64df675 100644 (file)
@@ -499,7 +499,9 @@ package body Ada.Numerics.Generic_Real_Arrays is
    -------------
 
    function Inverse (A : Real_Matrix) return Real_Matrix is
-     (Solve (A, Unit_Matrix (Length (A))));
+     (Solve (A, Unit_Matrix (Length (A),
+                             First_1 => A'First (2),
+                             First_2 => A'First (1))));
 
    ------------
    -- Jacobi --