dwarf2out uses "LM" for line-info labels in text sections, using the global counter line_info_label_num to get unique label names. The Algol 68 exports were using the same string for the mode labels in the .a68_exports sections using its own private counter. This led to assemblers to not be happy whey they find duplicated labels in the input assembly files.
This commit changes the names of mode labels in Algol 68 export sections to use the "LMD" string instead. Signed-off-by: Jose E. Marchesi <[email protected]> gcc/algol68/ChangeLog * a68-exports.cc (a68_asm_output_mode): Use .LMDnn labels for modes instead of .LMnn. --- gcc/algol68/a68-exports.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/algol68/a68-exports.cc b/gcc/algol68/a68-exports.cc index 469e945cb42..3b388b15674 100644 --- a/gcc/algol68/a68-exports.cc +++ b/gcc/algol68/a68-exports.cc @@ -254,7 +254,7 @@ a68_asm_output_mode (MOID_T *m, const char *module_label) static long int cnt; static char label[100]; - ASM_GENERATE_INTERNAL_LABEL (label, "LM", cnt++); + ASM_GENERATE_INTERNAL_LABEL (label, "LMD", cnt++); ASM_LABEL (m) = ggc_strdup (label); if (IS_REF(m) || IS_FLEX (m)) -- 2.30.2
