Opened 19 years ago

Last modified 18 years ago

#104 closed defect

emximp: Processes aliased exports in the wrong way — at Version 1

Reported by: froloff Owned by: bird
Priority: normal Milestone: libc-0.6.2
Component: emx Version: 0.6
Severity: normal Keywords: emximp
Cc:

Description (last modified by bird)

emximp create wrong function name, while converted def file, provided alias name in EXPORT section. For example, lines in input .def file

LIBRARY ZLIB2
EXPORTS
	zlibVersion = _zlibVersion
	deflate = _deflate

will cause the following text in output .imp file (same for .a and .lib):

; -------- zlib2.lib --------
zlibVersion            ZLIB2    _zlibVersion ?
deflate                ZLIB2    _deflate ?

While the destination shall looks like this:

; -------- zlib2.lib --------
zlibVersion             ZLIB2    zlibVersion ?
deflate                 ZLIB2    deflate ?

The reason of this bug in emx\src\libmoddef\moddef2.c Patch provided in attach. This also emxomfld and emxbind. Some changes also preferable in weak.c, function symAddExport(), while parsing def file.

Change History (2)

by froloff, 19 years ago

Attachment: moddef2-diff.zip added

comment:1 by bird, 18 years ago

Description: modified (diff)
Keywords: emximp added
Milestone: libc-0.6libc-0.6.2
Summary: emximp process def files with alias names in wrong wayemximp: Processes aliased exports in the wrong way
Type: defect
Version: 1.10.6

Froloff, the imp output shall be:

; -------- zlib2.lib --------
zlibVersion             ZLIB2    zlibVersion ?
deflate                 ZLIB2    deflate ?

not:

; -------- zlib2.lib --------
_zlibVersion            ZLIB2    zlibVersion ?
_deflate                ZLIB2    deflate ?

Also, I've split out the weakld complaint into #115. That's an entirely different matter and has nothing to do with emximp. I'm not entirely sure what this problem has to do with emxomfld and emximp though, I'll try figure out what you mean...

Note: See TracTickets for help on using tickets.