[Ada] Fix assertion failure on record subtype with -gnatRj
authorEric Botcazou <ebotcazou@adacore.com>
Wed, 26 Sep 2018 09:17:05 +0000 (09:17 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Wed, 26 Sep 2018 09:17:05 +0000 (09:17 +0000)
commit81d85d4baeb6ada71652a556cec1663511c3933c
tree79af3198a79338d30d795c9898c973c38f3e8a9b
parent05a84157e98dfb25500705c0bc2570139a01075f
[Ada] Fix assertion failure on record subtype with -gnatRj

The JSON output of the -gnatR machinery was choking on record subtypes
and the change fixes this oversight.

The following package must now compile properly with -gnatRj:

package P is

  type Rec (D : Integer) is record
      C : Integer;

      case D is
         when 1 =>
            S : String (1 .. 20);
         when 2 =>
            B : Boolean;
         when others =>
            Ch1 : Character;
            F   : Float;
            Ch2 : Character;
      end case;

   end record;

   subtype Rec1 is Rec (1);

end P;

2018-09-26  Eric Botcazou  <ebotcazou@adacore.com>

gcc/ada/

* repinfo.adb (List_Record_Layout): Be prepared for JSON output.
(List_Record_Info): Use the flat representation for record
subtypes in the JSON format.

From-SVN: r264609
gcc/ada/ChangeLog
gcc/ada/repinfo.adb