On 08/10/2018 16:07, Daniel Hellstrom wrote:

This static assertion ensures that POSIX_SEMAPHORE_VALIDATE_OBJECT() rejects semaphore pointers with a SEM_FAILED value. We could change this macro to test also for SEM_FAILED, but it would result in code like this

if (sem == 0 (aka NULL) || sem == 0 (aka SEM_FAILED) || ...)

See also:

https://gcc.gnu.org/ml/gcc-help/2018-10/msg00021.html

Coverity Scan crashes at this line too. GCC issues only a -Wpedantic warning. In C++ the static assert would be fine. I am not sure how to fix this.

I just saw that you have pushed the 1d39e96470b27195d35a69cc94551c403b7980bd commit that updated the RTEMS_STATIC_ASSERT() macro, thanks for updating this. I just wanted to let you know that the issue I'm seeing with clang is still there:

Yes, this change only affects legacy compilers (non-C11 default mode).

I fixed the static assertion problem like this:

https://git.rtems.org/rtems/commit/?id=acb53d53c900f21b5940554dfba8d7ad94f4bcba

--
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.hu...@embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to