summary refs log tree commit diff
path: root/src/var.h
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2018-05-19 02:39:55 +0800
committerHerbert Xu <herbert@gondor.apana.org.au>2018-05-28 17:12:23 +0800
commit811a36120aef848cd308d56e06bf62e721be853c (patch)
treef841172b0a488bc4c0ea7382c3837b48e2167398 /src/var.h
parenteval: Fail immediately with redirections errors for simple command (diff)
downloaddash-811a36120aef848cd308d56e06bf62e721be853c.tar.gz
dash-811a36120aef848cd308d56e06bf62e721be853c.zip
eval: Replace with listsetvar with mklocal/setvareq
This patch replaces listsetvar with mklocal/setvareq.  As we now
determine special built-in status prior to variable assignment, we
no longer have to do a second pass listsetvar.  Instead we will
call setvareq directly instead of mklocal when necessary.

In order to do this mklocal can now take a flag in order to mark
a variable for export.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'src/var.h')
-rw-r--r--src/var.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/var.h b/src/var.h
index 55fed1b..b2054f7 100644
--- a/src/var.h
+++ b/src/var.h
@@ -139,7 +139,6 @@ struct var *setvar(const char *name, const char *val, int flags);
 intmax_t setvarint(const char *, intmax_t, int);
 struct var *setvareq(char *s, int flags);
 struct strlist;
-void listsetvar(struct strlist *, int);
 char *lookupvar(const char *);
 intmax_t lookupvarint(const char *);
 char **listvars(int, int, char ***);
@@ -147,7 +146,7 @@ char **listvars(int, int, char ***);
 int showvars(const char *, int, int);
 int exportcmd(int, char **);
 int localcmd(int, char **);
-void mklocal(char *);
+void mklocal(char *name, int flags);
 struct localvar_list *pushlocalvars(void);
 void poplocalvars(int);
 void unwindlocalvars(struct localvar_list *stop);