compile something with --debug switch. when linking those files, linker may report "invalid symbol type" or other errors because of garbage in the label names.
for example:
for some "ISO.c" file i get those label names in ISO.rel:
S A$ISO.c\ISO.c$991 Def02F1 S A$ISO.c\ISO.c$982 Def02E7 S A$ISO.c\ISO.c$973 Def02DE
and for some "effects.c" file;
S A$effects.cects.c$200 Def00A1 S A$effects.cects.c$300 Def0109 S A$effects.cects.c$201 Def00A2
that "\ISO.c" and "ects.c" seem to be garbage in the name buffer.
in some cases you may get garbaged names even with some unprintable characters!
version:
SDCC : mcs51/z80/z180/r2k/r3ka/gbz80/tlcs90/ez80_z80/z80n/ds390/pic16/pic14/TININative/ds400/hc08/s08/stm8/pdk13/pdk14/pdk15 4.0.2 #11683 (MINGW64)
Possibly fixed with revision [r11693]. It at least fixes what I can reproduce, but I can't find the situation that generates unprintable characters. Please check tomorrow's snapshot (or a later snapshot) and let me know if it has been fixed or if the problem remains.
Related
Commit: [r11693]
unprintable chars appear under windows, when you use default temp folder which is located somewhere in the user profile and username which is a part of the path contains unicode, if it cuts it at some strange point, so we have. that is the same length issue that you fixed, i guess. i'll check when the snapshot is ready.
Last edit: Tony Pavlov 2020-06-28
yes, everything is fine! please, have a look at this too: https://sourceforge.net/p/sdcc/bugs/3004/
thank you!