Little annoyance - reposted to the right group

Carlos Smith carlos-smith at sympatico.ca
Fri Jun 22 13:08:15 PDT 2007


Hi !,

Have a file named: y.tab.d (a valid D program). DMD
cannot compile/link it. The linker complains about y.tab
not found. Must rename it ytab.d (only one suffix)
to make it Ok.

While it's simple to rename it, i think the compiler
should pass y.tab.obj to the linker. Or will the
linker will be unable to cope with it ?

Besides, that file name is generated by another program,
and it is good to keep that name.

=== complete error log =================================

==> dmd y.tab.d
 d:\dmd\bin\..\..\dm\bin\link.exe
y.tab,,,user32+kernel32/noi;
 OPTLINK (R) for Win32  Release 7.50B1
 Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved

 y.tab
 Error 2: File Not Found y.tab
 --- errorlevel 1

The link do not find y.tab. It should look for y.tab.obj.
So instead i do:

==> dmd -c y.tab.d
==> \dm\bin\link.exe y.tab.obj,,,user32+kernel32/noi;

 Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved

 phobos.lib
 Warning 2: File Not Found phobos.lib
 OPTLINK : Warning 23: No Stack
 y.tab.obj(y.tab)
 Error 42: Symbol Undefined _main
 y.tab.obj(y.tab)
 Error 42: Symbol Undefined __acrtused_con
 y.tab.obj(y.tab)
 Error 42: Symbol Undefined _D16TypeInfo_Pointer6__vtblZ
 y.tab.obj(y.tab)
 Error 42: Symbol Undefined _D10TypeInfo_a6__initZ
 y.tab.obj(y.tab)
 Error 42: Symbol Undefined _D11TypeInfo_Aa6__initZ
 y.tab.obj(y.tab)
 Error 42: Symbol Undefined __nullext
 y.tab.obj(y.tab)
 Error 42: Symbol Undefined _D3std5stdio12__ModuleInfoZ
 OPTLINK : Warning 134: No Start Address

If i rename y.tab.d ytab.d, the file compiles and
links fine ( DMD 1.015 ).




More information about the Digitalmars-d mailing list