[Issue 20689] New: dmd's -betterC mode generates "undefined reference to '_memsetFloat'" when using float arrays

d-bugmail at puremagic.com d-bugmail at puremagic.com
Fri Mar 20 05:37:36 UTC 2020


https://issues.dlang.org/show_bug.cgi?id=20689

          Issue ID: 20689
           Summary: dmd's -betterC mode generates "undefined reference to
                    '_memsetFloat'" when using float arrays
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody at puremagic.com
          Reporter: cruz.dlang at netsiteinnovations.com

The following program fails to link when using dmd versions 2.090.0 and 2.091.0
on linux:

import core.stdc.stdio;
extern (C) void main(int argc, char **argv)
{
    float[4] f;
    printf("f[0] = %f\n", f[0]);
}

Similar error is generated when using double arrays, but int and long arrays
work fine.  LDC's betterC mode does not generate errors with float or double
arrays.  Also, explicitly initializing f allows dmd to compile the program
without errors.

--


More information about the Digitalmars-d-bugs mailing list