On 25/07/2022 01:04, Joel Sherrill wrote:> On Sun, Jul 24, 2022 at 11:20
AM Joel Sherrill <j...@rtems.org
<mailto:j...@rtems.org>> 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
configuration.
--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
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:
https://embedded-brains.de/datenschutzerklaerung/
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel