acw
Joined: 04 Nov 2005 Posts: 165 Location: Darkest Devon
|
Posted: Fri Dec 08, 2006 10:16 am Post subject: Version 5.00 woes (1) |
|
|
I've just upgraded to version 5.00 and found some minor issues, and a nasty. I'll do the nasty first:
Initialising an array within a type definition in a module causes the compiler to either generate an error when attempting to use the module: "error 681 - Error while reading MODULE definition file..." or causes the compiler to crash generating the following stack dump:
005013c4 getcon1(<ptr>struct�type_definition,<ptr>void) [+0032]
004574fc consume_type_element(void) [+0664]
00457caa process_type_def(void) [+0125]
0045723e process_type_byte(<ref>enum�logical,<ref>enum�logical,<ref>enum�logical,<ref>en [+018c]
004582be read_module_entity(enum�logical)#1D [+0ac1]
00459a96 process_binary_module(int,enum�logical)#1D [+034b]
0045a282 process_use_stmt(<ptr>char,<ref>int) [+0264]
0040a953 parse_declaration_statement(<ptr>char,int,int,<ref>int) [+25e2]
Commenting out the array initialisation solves the problem, but this used to work in 4.91. The program below demonstrates the error message - I can only get the crash when using my big program but I guess its the same bug:
module TestMod
type TestType
real*4:: rarray(4) = 0.0 ! causes compiler error 681 - Error while reading MODULE definition file for TESTMOD
real*4:: iarray(9) = (/0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0/) ! as above, can also cause compiler crash
end type TestType
end module TestMod
program MainProgram
use TestMod
end program
Alan |
|