[Bug 299] New: Unnecessary runtime dependencies for minimal runtime build

gdc-bugzilla at gdcproject.org gdc-bugzilla at gdcproject.org
Fri Jul 20 06:45:22 UTC 2018


https://bugzilla.gdcproject.org/show_bug.cgi?id=299

            Bug ID: 299
           Summary: Unnecessary runtime dependencies for minimal runtime
                    build
           Product: GDC
           Version: development
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: gdc
          Assignee: ibuclaw at gdcproject.org
          Reporter: slavo5150 at yahoo.com

object.d
---
module object;

alias size_t = typeof(int.sizeof);
alias string = immutable(char)[];

bool _xopEquals(in void*, in void*)
{
    return false;
}
---

test.d
---
struct X(A...)
{
    A args;
}

auto x(A...)(A args) if(A.length > 0 && is(A[0] == string))
{
    return X!A(args);
}

enum inline = x("abc");

void main()
{ }
---

GDC built from master on 2018-07-20.

arm-none-eabi-gdc -c -nophoboslib -nostdinc -nodefaultlibs -nostdlib test.d
cc1d: error: undefined identifier 'Object' in module 'object', did you mean
import 'object'?
cc1d: error: 'object.TypeInfo' could not be found, but is implicitly used
(null):0: confused by earlier errors, bailing out

There are 2 issues:
1) I don't think the `_xopEquals` should be required to get a build
2) I don't think this code should require `class Object` or `class TypeInfo`
from object.d

LDC and DMD can both build the above code without issue.

-- 
You are receiving this mail because:
You are watching all bug changes.


More information about the D.gnu mailing list