From: "Alex R. Mosteo" <devnull@mailinator.com>
Subject: GNAT Spitbol segmentation fault
Date: Thu, 18 Jan 2007 13:33:21 +0100
Date: 2007-01-18T13:33:21+01:00 [thread overview]
Message-ID: <5197nkF1jbsb0U1@mid.individual.net> (raw)
Hello,
before filing a bug report I'd like to hear your opinion to rule out a
mistake on my part. I'm using the excellent Gnat.Spitbol.Patterns package
to extract some patterns from large bodies of text. I'm doing it with this
scheme:
declare
Text : aliased Vstring := <initial text>;
Target : aliased Vstring;
Patt : constant Pattern := Some_Patterns ** Target;
begin
while Match (Text, Target, "") loop
-- This extracts a Target string and removes it from the text.
-- It doesn't matter if the surrounding text causes new aftermatches.
Do_Something_With (Target);
end loop;
end;
Very rarely I get a Storage_Error and segment violation that kills the
program. Running inside gdb I get this backtrace:
#0 0xb7ddf37c in memcpy () from /lib/tls/i686/cmov/libc.so.6
#1 0x081b7d8d in ada.strings.fixed.replace_slice ()
#2 0x081bd6cf in ada.strings.unbounded.replace_slice ()
#3 0x081d4f5e in gnat.spitbol.patterns.match ()
Unfortunately, address2line doesn't make any valid source lines from these
addresses, I suppose because the gdb wrapping (but this is just a guess).
If you have used Gnat Spitbol before, could you comment if I'm doing
something risky? This is with gnat gpl 2006 in linux x86
next reply other threads:[~2007-01-18 12:33 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-01-18 12:33 Alex R. Mosteo [this message]
2007-01-18 12:55 ` GNAT Spitbol segmentation fault Jeffrey Creem
2007-01-18 17:00 ` Alex R. Mosteo
2007-02-01 10:36 ` Alex R. Mosteo
2007-01-18 14:32 ` Georg Bauhaus
2007-01-18 17:00 ` Alex R. Mosteo
2007-01-18 22:31 ` Simon Wright
2007-01-19 9:32 ` Alex R. Mosteo
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox