On 14/08/14 15:58, Kolja Waschk wrote:
Hi Sebastian,

+  int nToSend;
Integer type is wrong.

Yes, just what the original refill_transmitter uses and expects: nToSend is
passed as return value to rtems_refill_transmitter, which also returns it to
its caller as an int...

Ok, rtems_termios_refill_transmitter() and rtems_termios_dequeue_characters() use the wrong types as well. This termios.c is a real mess. Originally only ints where used, but someone introduced size_t and ssize_t to match the POSIX API. Apparently this was done a bit sloppy.

In this function nToSend is computed from unsigned ints, so its type should be unsigned int.


+ (void)rtems_termios_start_xmit (tty, tty->rawOutBuf.Tail, false);
Please don't use this (void).

Only one of the two callers (rtems_refill_transmitter) is interested in that
information. Is it preferred to omit the "(void)" in the other or rather do not
pass the info as a return value, but e.g. into a variable pointed to by a
further argument?

http://stackoverflow.com/questions/11888594/ignoring-return-values-in-c

If you use this warning, then it makes sense to use this cast, but its not done in many places in RTEMS and not in termios.c in particular.


Thanks,
Kolja

--
mr.k.waschk - ixo.de - hamburg, germany



--
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