[fpc-devel] [Dwarf AVR] DIE refers to abbreviation number which does not exist
Dimitrios Chr. Ioannidis
d.ioannidis at nephelae.eu
Sun Feb 7 11:49:01 CET 2021
Hi,
I made some more tests, and it seems that there is a problem with the
array types, used in other units where they are defined.
I don't know if it helps but, if I define an array type on unit B,
which a unit A uses it, and the unit B has a procedure / function which
is called from the unit B, then the warning / error goes away ( at least
I don't get that warning / error ).
i.e. the following doesn't produce the dwarf warning / error, using
the FPC's cross tools :
==========CODE=========
program dwarf_DIE_ABBREV_Bug;
uses
dwarf_DIE_ABBREV_Bug_used_unit;
var
aArray: tmpArray;
begin
dummy;
end.
==========CODE=========
==========CODE=========
unit dwarf_DIE_ABBREV_Bug_used_unit;
interface
type
tmpArray = array[0..1] of word;
procedure dummy;
implementation
procedure dummy;
begin
end;
end.
==========CODE=========
Build with : ppcrossavr.exe -MObjFPC -Tembedded -Pavr -CpAVR5
-WpATMEGA328p -al -Xm -gw2 -O1 dwarf_DIE_ABBREV_Bug.pas
FPC version:
Free Pascal Compiler version 3.3.1
Compiler date : 2021/02/04
Compiler CPU target: avr
Supported targets (targets marked with '{*}' are under development):
embedded: Embedded
OS: Windows 10 64bit
regards,
--
Dimitrios Chr. Ioannidis
More information about the fpc-devel
mailing list