URL: <https://savannah.nongnu.org/bugs/?57071>
Summary: Fix math.h and function names that block 64-bit double Project: AVR C Runtime Library Submitted by: gjlayde Submitted on: Thu 17 Oct 2019 07:10:37 AM UTC Category: None Severity: 3 - Normal Priority: 5 - Normal Item Group: None Status: None Percent Complete: 0% Assigned to: None Originator Email: Open/Closed: Open Discussion Lock: Any Release: 2.0.0 Fixed Release: None _______________________________________________________ Details: Implementation of math.h / libm currently blocks 64-bit double, namely: 1) Function names are wrong, e.g. 32-bit implementation of sine is named "sin", not "sinf". 2) There are "aliases" in math.h (macros actually) that define the float version (like "sinf") to the double version (like "sin"). Problem is that this: 2a) This is the wrong way round ("sin" should be alias of "sinf"). 2b) There are no proper prototypes. 2c) Macros are bad, e.g. in C++ when some class implements a method for which math.h defines a macro, C++ functions / methods are silently renamed. 3) math.h is unconditional, i.e. treats double != float just like double = float. _______________________________________________________ Reply to this item at: <https://savannah.nongnu.org/bugs/?57071> _______________________________________________ Message sent via Savannah https://savannah.nongnu.org/ _______________________________________________ AVR-libc-dev mailing list AVR-libc-dev@nongnu.org https://lists.nongnu.org/mailman/listinfo/avr-libc-dev