Am 01.03.19 um 10:17 schrieb Philipp Klaus Krause:
> The C standard does not allow returning expressions in functions
> returning void. E.g. this
>
> static void attr_rtx (char *, char *);
> static char *attr_string (char *);
>
> static void
> attr_eq (char *name, char *value)
> {
> return attr_rtx (attr_string (name), attr_string (value));
> }
>
> is not allowed by the standard. However, GCC allows it as an extension.
> SDCC also currently allows it as an extension (i.e. when --std-cXX is
> not specified).
>
> Is anyone using that extension functionality?
>
> There seem to be some bugs in it, and it might be easier to just
> disallow it, as in the standard (i.e. giving an error message even for
> --std-sdccXX), rather than tracking down the details of the bugs.
>
> PhilippFor reference: SDCC used to allow it even when --std-cXX was specified until Maarten implemented the error message for that case in 2013. The current question is if that error message should be emitted unconditionally. Philipp
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Sdcc-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/sdcc-user
