FIX: L1101 From Unsupported Fixup to Target in Overlay

Last reviewed: September 16, 1997
Article ID: Q87792
5.30 MS-DOS kbtool kbcode kbbuglist kbfixlist

The information in this article applies to:

  • Microsoft LINK for MS-DOS, version 5.3

SYMPTOMS

An attempt to link an application that uses the Microsoft Overlaid Virtual Environment (MOVE) fails and Microsoft LINK generates a message similar to the following:

   L1101: invalid object module
   object file offset: d4 Record type: 9c

CAUSE

LINK does not support each type of fixup when the target is in an overlay.

STATUS

Microsoft has confirmed this to be a problem in LINK version 5.3 for MS-DOS (distributed with Microsoft C/C++ version 7.0). This problem was corrected in LINK version 5.31.009 (distributed with the C/C++ version 7.0a patch disk). To obtain the patch disk, obtain a disk from Microsoft. To obtain a disk in the United States, call Microsoft Product Support Services at (206) 454-2030. Outside the United States, contact the Microsoft subsidiary for your area. To locate your subsidiary, go to the Microsoft Web site http://www.microsoft.com/worldwide/default.htm

MORE INFORMATION

The source code below demonstrates this problem. The assembly language code creates two segments and places them into the same overlay. The problem occurs when LINK generates a thunk even though both segments reside in the same overlay. The function that generates the thunk fails because the target is not a far pointer to a function.

A similar error occurs for an attempt to place certain modules from the C run-time library into an overlay. One particular example involves the graphics functions in the _gr_text module.

Sample Code - TEST.ASM

; Assemble options needed: None ; Link with the TEST.DEF file to demonstrate the problem ; In a real situation, link with a main module developed in C and the ; medium or large memory model C run-time library.

    .model      large, c
    .stack
    .code       SEG1_TEXT
    .startup

f1      PROC        private
    RET
f1      ENDP

    .code       SEG2_TEXT

f2      PROC        public
    CALL        f1
    RET
f2      ENDP

    END

TEST.DEF

SEGMENTS seg1_text OVL:1

     seg2_text OVL:1


Additional reference words: 7.00 buglist5.30 fixlist5.31.009
KBCategory: kbtool kbcode kbbuglist kbfixlist
KBSubcategory: MoveOverlay
Keywords : kb16bitonly MoveOverlay kbbuglist kbcode kbfixlist kbtool
Version : 5.30
Platform : MS-DOS
Solution Type : kbfix


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: September 16, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.