On Fri, 23 Feb 2018, Bruce Evans wrote:

On Fri, 23 Feb 2018, Warner Losh wrote:

 Do not include float interfaces when using libsa.

 We don't support float in the boot loaders, so don't include
 interfaces for float or double in systems headers. In addition, take
 the unusual step of spiking double and float to prevent any more
 accidental seepage.

This unimproves all the _types.h headers, probably for no benefits for lua.

Modified: head/sys/arm/include/_types.h
--- head/sys/arm/include/_types.h Fri Feb 23 04:04:18 2018 (r329858) +++ head/sys/arm/include/_types.h Fri Feb 23 04:04:25 2018 (r329859)
@@ -70,8 +70,10 @@ typedef      unsigned long long      __uint64_t;
typedef __uint32_t      __clock_t;              /* clock()... */
typedef __int32_t       __critical_t;
+#ifndef _STANDALONE
typedef double          __double_t;
typedef float           __float_t;
typedef __int32_t       __intfptr_t;
typedef __int64_t       __intmax_t;
typedef __int32_t       __intptr_t;

__types.h headers exist to avoid ifdefs like this.  They only define types
in the implementation namespace.  Nothing except <math.h> should use
__double_t or __float_t directly.  There is only a problem if some option
like -fno-float turns off floating point completely, so that 'float' is
a syntax error.

Actually you created the syntax errors by defining float and double in
makefiles.  This gives undefined behaviour.

svn-src-head@freebsd.org mailing list
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to