confdefs.h bintime undefined compile error

Sebastian Huber sebastian.huber at
Mon Jul 25 07:06:43 UTC 2022

On 25/07/2022 01:04, Joel Sherrill wrote:> On Sun, Jul 24, 2022 at 11:20 
AM Joel Sherrill <joel at
> <mailto:joel at>> wrote:
>     Hi
>     Attached is a pretty simple RTEMS application that does not compile
>     when -std=c99 is included on the compile line.
>     arm-rtems6-gcc -B
>     /home/joel/rtems-work/tools/6/bsp-install/arm-rtems6/xilinx_zynq_a9_qemu/lib/
>     -qrtems -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard
>     -mtune=cortex-a9 -O0 -g -ffunction-sections -fdata-sections -g -Wall
>     -std=c99 -pthread -Wno-nonnull-compare   -c /tmp/rtems_config.c  -o
>     /tmp/rtems_config.o
>     In file included from
>     /home/joel/rtems-work/tools/6/bsp-install/arm-rtems6/xilinx_zynq_a9_qemu/lib/include/rtems/confdefs/libio.h:135,
>                       from
>     /home/joel/rtems-work/tools/6/bsp-install/arm-rtems6/xilinx_zynq_a9_qemu/lib/include/rtems/confdefs.h:70,
>                       from /tmp/rtems_config.c:21:
>     /home/joel/rtems-work/tools/6/bsp-install/arm-rtems6/xilinx_zynq_a9_qemu/lib/include/rtems/imfs.h:
>     In function '_IMFS_get_time':
>     /home/joel/rtems-work/tools/6/bsp-install/arm-rtems6/xilinx_zynq_a9_qemu/lib/include/rtems/imfs.h:377:18:
>     error: storage size of 'now' isn't known
>        377 |   struct bintime now;
>     Dropping -std=c99 resolves this. I'm guessing turning on some BSD
>     visibility flag would do the same but it shouldn't be needed. Any
>     ideas for a real fix?
>     Do we have any test cases which ensure the headers compile as C99?
>     All published POSIX versions assume C99.
> It isn't just c99. C11 and C17 also cause this. It is turning on the 
> "standard" which turns off many extensions. Internally, this header 
> needs to enable BSD extensions.

The use of this structure is in _IMFS_get_time() which is an internal 
IMFS function. I think we need an imfsimpl.h header file for the IMFS 
implementation. There are too many details exposed to the application 

embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
email: sebastian.huber at
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:

More information about the devel mailing list