PRB: Section Names Truncated to Eight Characters When Linked (123874)



The information in this article applies to:

  • The Linker (LINK.EXE), when used with:
    • Microsoft Visual C++, 32-bit Editions 2.0
    • Microsoft Visual C++, Macintosh Cross-Development Addon 2.0

This article was previously published under Q123874

SYMPTOMS

You can control the section names that the C/C++ compiler, version 9.0, generates by using the /ND or /NT compiler options, the code_seg pragma, or the data_seg pragma. However, the names generated by the compiler are truncated to eight-character names during linking with LINK version 2.5.

STATUS

This behavior is by design. Section names are limited to eight characters.

MORE INFORMATION

Steps to Reproduce Behavior

  1. Build the following sample code
    test.c
       ------
    
       #pragma code_seg( "LongCodeSectionName" )
       int i=7;
    
       main( )
       {
          exit(i);
       }
    
    						
  2. Observe the long section name contained in the object file by executing this command:

    link -dump -all test.obj > testobj.out

    Then search the output file for LongCodeSectionName. The full name is in the object file.
  3. Observe that LongCodeSectionName is truncated to LongCode in the executable file by executing this command:

    link -dump - all test.exe > testexe.out


Modification Type:MajorLast Reviewed:11/18/2003
Keywords:kbprb KB123874