Opened 9 years ago

Closed 9 years ago

#140 closed defect (invalid)

adjust/finalize raised STORAGE_ERROR

Reported by: Maxim Reznik Owned by:
Priority: major Milestone:
Component: Matreshka Version:
Keywords: Cc:

Description

Some strange error

./test
Open

raised PROGRAM_ERROR : adjust/finalize raised STORAGE_ERROR: stack overflow (or erroneous memory access)

Attachments (1)

test.adb (502 bytes ) - added by Maxim Reznik 9 years ago.

Download all attachments as: .zip

Change History (3)

by Maxim Reznik, 9 years ago

Attachment: test.adb added

comment:1 by Maxim Reznik, 9 years ago

Если в этом тесте аргументы вынести в отдельные константы то все пашет.

      DB_Driver  : constant League.Strings.Universal_String := +"SQLITE3";
      DB_Options : constant League.Strings.Universal_String := +"local.db";

      Connect : SQL.Databases.SQL_Database := SQL.Databases.Create
        (DB_Driver,
         DB_Options);

comment:2 by vadim.godunko, 9 years ago

Resolution: invalid
Status: newclosed

It is bug in GNAT compiler, it finalize temporary objects before call to Create subprogram, thus passed objects is invalid.

Note: See TracTickets for help on using tickets.