[Issue 10631] New: Module import pull lots of symbols

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sat Jul 13 08:45:10 PDT 2013


http://d.puremagic.com/issues/show_bug.cgi?id=10631

           Summary: Module import pull lots of symbols
           Product: D
           Version: D2
          Platform: All
        OS/Version: All
            Status: NEW
          Keywords: link-failure
          Severity: regression
          Priority: P2
         Component: DMD
        AssignedTo: nobody at puremagic.com
        ReportedBy: verylonglogin.reg at gmail.com


--- Comment #0 from Denis Shelomovskij <verylonglogin.reg at gmail.com> 2013-07-13 19:45:08 MSD ---
This code used to work allowing usage of stuff like `min` where no D runtime
functions are used:
---
import std.algorithm;

extern(C) void main()
{ }
---

Current OPTLINK output:
---
OPTLINK (R) for Win32  Release 8.00.13
Copyright (C) Digital Mars 1989-2010  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined __d_arrayappendT
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D12TypeInfo_Aya6__initZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined __d_throwc
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std3utf12isValidDcharFNaNbNfwZb
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std3utf12UTFException7__ClassZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined __d_newclass
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std3utf7__arrayZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined
_D3std3utf12UTFException6__ctorMFNaNfAyakAyakC6object9ThrowableZC3std3utf12UTFException
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std3utf6encodeFNaNfKG4awZk
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std4conv7__arrayZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std6format7__arrayZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std5array7__arrayZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined __d_allocmemory
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D16TypeInfo_Pointer6__vtblZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D15TypeInfo_Struct6__vtblZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined __d_newitemT
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined
_D4core6memory2GC6qallocFNaNbkkZS4core6memory8BlkInfo_
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D4core6memory2GC6extendFNaNbPvkkZk
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined __d_arraycopy
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined
_D3std6format15FormatException6__ctorMFNaNbNfAyaAyakC6object9ThrowableZC3std6format15FormatException
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std6format15FormatException7__ClassZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D11TypeInfo_Aa6__initZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined __d_arraysetcapacity
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined
_D3std4conv13ConvException6__ctorMFNaNbNfAyaAyakZC3std4conv13ConvException
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std4conv13ConvException7__ClassZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined
_D3std4conv21ConvOverflowException6__ctorMFNaNbNfAyaAyakZC3std4conv21ConvOverflowException
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std4conv21ConvOverflowException7__ClassZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std5ascii7isDigitFNaNbNfwZb
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined __adDupT
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D14TypeInfo_Array6__vtblZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D10TypeInfo_a6__initZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D14TypeInfo_Const6__vtblZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D9Exception7__ClassZ
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined
_D6object9Exception6__ctorMFNaNbNfAyaAyakC6object9ThrowableZC9Exception
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std9exception7bailOutFNaNfAyakxAaZv
Release\test_d2.obj(test_d2) 
 Error 42: Symbol Undefined _D3std9algorithm12__ModuleInfoZ
--- errorlevel 36
---
(`betterC` flag removes one undefined symbol)

This forces one to copy/paste all the functionality for runtime-less
applications.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list