On 12/16/2014 05:46 AM, Pádraig Brady wrote:
if (xstrtoul (optarg, NULL, 10, &val, "") != LONGINT_OK
- || MIN (INT_MAX, SIZE_MAX) < val)
- error (EXIT_FAILURE, 0, _("%s: invalid number"), optarg);
+ || (MIN (INT_MAX, SIZE_MAX) < val && (errno = EOVERFLOW)))
+ error (EXIT_FAILURE, errno, _("invalid number %s"), quote (optarg));
I'm afraid I find this sort of code hard to read, due to the side effect
withinn an 'if' expression. The GNU coding standards say "Try to avoid
assignments inside if-conditions (assignments inside while-conditions
are ok)."
<https://www.gnu.org/prep/standards/html_node/Syntactic-Conventions.html> Can
you please redo the patch to avoid this sort of thing? Perhaps with a
wrapper around xstrtoul? Thanks.