www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/05/11/11:38:49

Date: Mon, 11 May 1998 18:31:07 +0200
From: Alexander Bokovoy <bokovoy AT bspu DOT ac DOT by>
Reply-To: Alexander Bokovoy <bokovoy AT bspu DOT ac DOT by>
Organization: BSPU named after Maxim Tank
Message-ID: <14771.980511@bspu.unibel.by>
To: djgpp AT delorie DOT com
Subject: Re: SWORD 2.50; Anybody else use it or thinking about it?
References: <19980509172947 DOT AAI16984 AT ppp105 DOT cartsys DOT com>
Mime-Version: 1.0

Hi Nate,

09.05.98, you wrote:

> As far as I could tell from reading the announcement, it just looked like
> `-fsjlj-exceptions' had been enabled by default in the `specs' file.
I've tested this switch with port of GCC 2.8.0 and SWORD 3.0 sources.
All basic routines compiled without any warnings, but when I tried to
run tests, the call of abort() was generated by the next fragment of
code:
  storage=new CFileStorage((char*)path);
  storage->open();
  stream =new CTextStream(storage,false);
  try
  { for(;;)
    { line=stream->readLn();
      System.out << ":" << line << ":" << eol;
    } 
  }
-------------------------------------------------
|  catch(tException *e)                         |
|  { if (!e->isFromClass(eEndOfFile)) throw;    |  (1)
|  }                                            |
-------------------------------------------------
  System.out.indent(-2);
  System.out << "Normal EOF reached." << eol << eol;
  delete stream;
  delete storage;

All lines from test file read successfully but when fragment (1) was
reached it caused abort of program. There is only one error that can
exist at this moment in program - EOF in stream, but it is catched by
(1) => -fsjlj-exceptions doesn't work properly.
Unfortunely, I don't have tested GCC 2.8.1 yet.

Regards,
Alexander Bokovoy, <bokovoy AT bspu DOT unibel DOT by>
--=== The Soft Age coming soon ===--


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019