Harvey-OS/harvey

When built with clang, print always prints 0.0 for floats

Closed this issue · 1 comments

gmacd commented

Expected behavior

print("%f\n", 123.456) should print 123.456.

Actual behavior

Instead it prints 0.0.

Steps to reproduce

See regress/vseprint.c (This works only with gcc, but not with clang)

This happens because we build with -mno-implicit-float. I filed a bug against clang here but heard nothing.

We seem to need that flag for the kernel, boot and maybe some other cmds (e.g. realemu). But using the flag for only certain executables (and their libraries) is tricky.

gmacd commented

Fixed