Forum > FV/Textmode IDE

Signal 291 compiler crash


I am having a serious issue with the compiler FPC 3.0.0 which generates a signal 291 when I merely change the name of a variable in an otherwise rather old and stable code. By setting compiler verbosity to "all" I managed to locate the offending code line on which the compiler throws its last message "Error: Expression type must be class or record type, got (erroneous type)" before it dies. The correct reaction should be "Identifier not found". 

Not a regression, it's the same with FPC 2.6.4.

Unfortunately I did not manage to reproduce the fault with an extract of the code for inclusion in a bug report. It seems that the entire program of at least a substantial part of it is required to cause the crash. It is not a big program, maybe 1000 lines in total, but I doubt whether throwing the entire code at the dev team will be useful.

Any advice how to proceed ?

Could isolate it at last, it is related to optimisation loopunroll. Not sure whether loopunroll is fully supported yet, anyway, this tiny piece of code crashes the compiler. I will issue a bug report.

--- Code: Pascal  [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---{$OPTIMIZATION LOOPUNROLL} procedure SendState;var n: longint;begin  with Outputs[0] do begin    for n := 0 to pred(NumConns) do with OList[n] do begin end;  end;end; 


[0] Message Index

Go to full version