From 51468b764689e7d724a87e6c2b8cdb4e599a3604 Mon Sep 17 00:00:00 2001 From: Kurtis Rader Date: Sun, 8 May 2016 15:57:56 -0700 Subject: add `function --shadow-builtin` flag It's currently too easy for someone to bork their shell by doing something like `function test; return 0; end`. That's obviously a silly, contrived, example but the point is that novice users who learn about functions are prone to do something like that without realizing it will bork the shell. Even expert users who know about the `test` builtin might forget that, say, `pwd` is a builtin. This change adds a `--shadow-builtin` flag that must be specified to indicate you know what you're doing. Fixes #3000 --- tests/function.err | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'tests/function.err') diff --git a/tests/function.err b/tests/function.err index e69de29b..72671ac9 100644 --- a/tests/function.err +++ b/tests/function.err @@ -0,0 +1,8 @@ +function: function name shadows a builtin so you must use '--shadow-builtin' +fish: function pwd; end + ^ +yes, it failed as expected +function: function name does not shadow a builtin so you must not use '--shadow-builtin' +fish: function not_builtin --shadow-builtin; end + ^ +yes, it failed as expected -- cgit v1.2.3