https://gcc.gnu.org/g:1b995214830669b96a19a6b6463aa6c1647cea9b

commit r16-6427-g1b995214830669b96a19a6b6463aa6c1647cea9b
Author: Jose E. Marchesi <[email protected]>
Date:   Mon Dec 29 04:18:52 2025 +0100

    a68: use LMD instead of LM for mode labels in exports
    
    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.

Diff:
---
 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 469e945cb425..3b388b156743 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))

Reply via email to