* * *

Author Topic: GO32V2 Compiler internal error: EListError : List index exceeds bounds (9)  (Read 1021 times)

MartenR

  • New member
  • *
  • Posts: 5
Hi there,

 From time to time I run into an internal compiler error:

An unhandled exception occured at $00041DE2 :
EListError : List index exceeds bounds (9)
  $00041D2

This problem seems to occur when a unit interface has changed between compilations.
A second compilation run of the same source usually does NOT solve the problem.
A fresh new full build does solve the problem.

Is this a known problem for the GO32V2 compiler version 2.6.2 [2013/02/12] for i386
for Target GO32 V2 DOS extender?

Note that the number in brackets may vary per case.
 
The full message on screen is:

Free Pascal Compiler version 2.6.2 [2013/02/12] for i386
Copyright (c) 1993-2012 by Florian Klaempfl and others
Target OS: GO32 V2 DOS extender
Compiling mon.pas
Compiling frm_scr.pas
Compiling frm_scr.pas
Compiling frm_vchn.pas
Compiling frm_bme.pas
Compiling frm_card.pas
Compiling frm_hdlc.pas
Compiling frm_l1s0.pas
Compiling frm_l1e1.pas
Compiling frm_e1.pas
Compiling frm_hfc.pas
Compiling frm_4s.pas
Compiling frm_8s.pas
Compiling frm_dme1.pas
Compiling frm_term.pas
Compiling frm_cc.pas
Compiling frm_l3.pas
Compiling frm_l3.pas
Compiling frm_cc_c.pas
Compiling frm_cc.pas
Compiling frm_tax.pas
Compiling frm_rctr.pas
Compiling frm_acf.pas
frm_l3_7.pas(431,17) Warning: unreachable code
Compiling frm_user.pas
Compiling frm_cpe.pas
Compiling frm_l2.pas
Fatal: Compilation aborted
An unhandled exception occurred at $00041DE2 :
EListError : List index exceeds bounds (9)
  $00041DE2

Error: E:\FPC\PP262\BIN\GO32V2\ppc386.exe returned an error exitcode (normal if
you did not specify a source file to be compiled)


Regards,
Marten

 
   

Ñuño_Martínez

  • Hero Member
  • *****
  • Posts: 659
    • Burdjia
Did you tried the newer fpc 3 compiler?  IIRC it has DOS support again.

MartenR

  • New member
  • *
  • Posts: 5
Have tried installing a new fpc3, but something went wrong.
Still have to find what I should do about that.

Hence the question whether this would be a known bug that would be solved in a newer version.
Up to some time ago I did not have this problem with the 2.6.2. version.

MartenR

Ñuño_Martínez

  • Hero Member
  • *****
  • Posts: 659
    • Burdjia
Then I can't help you more.  I don't use DOS for a long time.

Anyway, a few questions that may help:
I it cross-compiling or are you compiling in DOS?
What DOS are you using:  MS-DOS, DR-DOS, FreeDOS, DOSbox...?
« Last Edit: November 25, 2017, 11:40:09 am by Ñuño_Martínez »

MartenR

  • New member
  • *
  • Posts: 5
Eventually I suceeded in installing fpc3.
The thing seems to be that it now supports long file names (LFN).
The installation procedure checks for support of LFN by the OS it is installed on.
As my MSDOS 6.0 does not support LFN, it is switched off. However, this also means that by default some required parts are not installed, like the CRT unit. As a result I could not compile my program.
Only after setting the list of parts to be installed such that required parts are installed as well, the compilation with fpc3 on MSDOS 6.0 does work.

The next point is that, due to LFN support and/or UniCode support, the internal structure of TextRec has been changed. This causes a compilation error, since I do access its field "Name" with the StrIComp() function, which expects an array of char, but meets an array of widechar.
When all this has been solved (and anything else that may pop up) I may check for the compiler behaviour with respect to the original problem :-)

Until then, thank you for your support.
MartenR

Ñuño_Martínez

  • Hero Member
  • *****
  • Posts: 659
    • Burdjia
I've just read that FPC 3.0.4 is almost complete (just waiting a few files).  May be they fixed this issue.

MartenR

  • New member
  • *
  • Posts: 5
I got FPC3 (3.0.2) running and succeeded in compiling the program without errors.

After that I ran the compiler on the source exactly as it failed with the 2.6.2 version.
I found that a similar behaviour under 3.0.2 does occur.

So the EListError happens in both compiler versions and can be reproduced with 3.0.2 based on a defined set of files (*.pas, *.o and *.ppu, etc)

So it seems we have a bug here...

Marten
 

Ñuño_Martínez

  • Hero Member
  • *****
  • Posts: 659
    • Burdjia
I got FPC3 (3.0.2) running and succeeded in compiling the program without errors.

After that I ran the compiler on the source exactly as it failed with the 2.6.2 version.
I found that a similar behaviour under 3.0.2 does occur.

So the EListError happens in both compiler versions and can be reproduced with 3.0.2 based on a defined set of files (*.pas, *.o and *.ppu, etc)

So it seems we have a bug here...

Marten
Maybe.  Did you look at the bug tracker?  I never used it so I don't know...  ::)

Thaddy

  • Hero Member
  • *****
  • Posts: 4777
Both are fixed in trunk. If you need them you can factor them out into a separate unit as a quick fix.
"Logically, no number of positive outcomes at the level of experimental testing can confirm a scientific theory, but a single counterexample is logically decisive."

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 5875
Both are fixed in trunk. If you need them you can factor them out into a separate unit as a quick fix.

Which revision was that?

MartenR

  • New member
  • *
  • Posts: 5
fpc 3.0.4 is available, so I'll check its behaviour soon.

Marten

 

Recent

Get Lazarus at SourceForge.net. Fast, secure and Free Open Source software downloads Open Hub project report for Lazarus