GNU bug report logs - #28461
erreurs

Previous Next

Package: coreutils;

Reported by: Eric Mariaud <eric.mariaud <at> gmail.com>

Date: Thu, 14 Sep 2017 17:46:02 UTC

Severity: normal

Done: Assaf Gordon <assafgordon <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Bernhard Voelker <mail <at> bernhard-voelker.de>
To: 28461 <at> debbugs.gnu.org, assafgordon <at> gmail.com, eric.mariaud <at> gmail.com
Subject: bug#28461: erreurs
Date: Fri, 15 Sep 2017 07:45:47 +0200
On 09/14/2017 08:00 PM, Assaf Gordon wrote:
> On 2017-09-14 11:43 AM, Eric Mariaud wrote:
>> eric <at> Eric-Xub:~/Bureau$ expr 2 + 3
>> 5
>> eric <at> Eric-Xub:~/Bureau$ expr 2 * 3
>> expr: erreur de syntaxe
> 
> The asterisks ( * ) character has special meaning on the shell,
> which you can observe by comparing the output of:
> 
>     echo 2 + 3
> vs
>     echo 2 * 3
> 
> Technically, the shell replaces the '*' character with the list of
> all files in the current directory. The 'expr' program never sees it.

Well, we could try to improve the error diagnostics.  I see in
the code that expr returns "syntax error" without any more explanation
in several places.  It could at least say what it would expect or
not expect in that place.

And finally - when it comes to shell pattern globbing - it could
do an extra check if the offending argument is an existing file
similar to latest 'find' [1]:

  $ touch a b c
  $ ../find/find -name *
  find: paths must precede expression: `b'
  find: possible unquoted pattern after predicate `-name'?

[1] https://git.sv.gnu.org/cgit/findutils.git/commit/?id=9530e31f6d

WDYT?

Thanks & have a nice day,
Berny




This bug report was last modified 7 years and 240 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.