+++ b/src/ios.c
@@ -32,7 +32,7 @@
#define STREQ(a, b) (strcmp (a, b) == 0)
-#define IOS_GET_C_ERR_CHCK(c, io) \
+#define IOS_GET_C_ERR_CHCK(c, io, off) \
{ \
int ret = io->dev_if->get_c ((io)->dev); \
Just noticing: We're inconsistent on whether the 'io' argument to
this macro is allowed to be an arbitrary expression. Fortunately,
none of the callers pass a complex expression, but the correct
spelling for arbitrary syntax would be:
int ret = (io)->dev_if->get_c ((io)->dev); \
yet that still would result in multiple side effects; so even more
reusable would be:
ios io_ = (io); \
int ret = io_->dev_if->get_c (io_->dev); \
Or, we can declare that this macro is not intended to be reusable
outside this file, and could spell it:
int ret = io->dev_if->get_c (io->dev); \
or go one step further and declare that it is only to be run inside a
function where 'io' is already in scope, and not pass in an io
argument to the macro.