about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--INSTALL2
-rw-r--r--NEWS6
-rw-r--r--doc/el_substitute.html1
-rw-r--r--doc/fdswap.html2
-rw-r--r--doc/forbacktickx.html2
-rw-r--r--doc/import.html47
-rw-r--r--doc/index.html5
-rw-r--r--doc/multisubstitute.html7
-rw-r--r--doc/quine-prj-3.txt4
-rw-r--r--doc/upgrade.html7
-rw-r--r--package/deps.mak11
-rw-r--r--package/info2
-rw-r--r--package/modes1
-rw-r--r--package/targets.mak1
-rw-r--r--src/execline/deps-exe/import2
-rw-r--r--src/execline/import.c12
-rw-r--r--src/execline/multisubstitute.c6
-rw-r--r--src/include-local/exlsn.h1
-rw-r--r--src/libexecline/deps-lib/execline2
-rw-r--r--src/libexecline/exlsn_importas.c (renamed from src/libexecline/exlsn_import.c)23
20 files changed, 37 insertions, 107 deletions
diff --git a/INSTALL b/INSTALL
index ac9d1fb..2c96472 100644
--- a/INSTALL
+++ b/INSTALL
@@ -6,7 +6,7 @@ Build Instructions
 
   - A POSIX-compliant C development environment
   - GNU make version 3.81 or later
-  - skalibs version 2.6.2.0 or later: http://skarnet.org/software/skalibs/
+  - skalibs version 2.6.4.0 or later: http://skarnet.org/software/skalibs/
 
  This software will run on any operating system that implements
 POSIX.1-2008, available at:
diff --git a/NEWS b/NEWS
index a29f1ae..089b36d 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,11 @@
 Changelog for execline.
 
+In 2.5.0.0
+----------
+
+ - The import command has been removed.
+
+
 In 2.3.0.4
 ----------
 
diff --git a/doc/el_substitute.html b/doc/el_substitute.html
index 6b72321..84b1985 100644
--- a/doc/el_substitute.html
+++ b/doc/el_substitute.html
@@ -36,7 +36,6 @@ via <em>substitution commands</em>, namely:
 </p>
 <ul>
  <li> <a href="define.html">define</a> </li>
- <li> <a href="import.html">import</a> </li>
  <li> <a href="importas.html">importas</a> </li>
  <li> <a href="elglob.html">elglob</a> </li>
  <li> <a href="elgetpositionals.html">elgetpositionals</a> </li>
diff --git a/doc/fdswap.html b/doc/fdswap.html
index cc055de..28e62bb 100644
--- a/doc/fdswap.html
+++ b/doc/fdswap.html
@@ -30,7 +30,7 @@ executes a program.
 </pre>
 
 <p>
-<tt>fdswaps</tt> swaps file descriptors numbered <em>fd1</em> and
+<tt>fdswap</tt> swaps file descriptors numbered <em>fd1</em> and
 <em>fd2</em>, then execs into <em>prog</em> with its arguments.
 </p>
 
diff --git a/doc/forbacktickx.html b/doc/forbacktickx.html
index e116be6..9cbcd98 100644
--- a/doc/forbacktickx.html
+++ b/doc/forbacktickx.html
@@ -76,7 +76,7 @@ split <em>x</em>. </li>
 <h2> Notes </h2>
 
 <ul>
- <li> You can start <em>loop...</em> with "import -u <em>variable</em>"
+ <li> You can start <em>loop...</em> with "importas -u <em>variable</em> <em>variable</em>"
 to perform variable substitution. </li>
  <li> forbacktickx is now implemented as a wrapper around the
 <a href="pipeline.html">pipeline</a> and
diff --git a/doc/import.html b/doc/import.html
deleted file mode 100644
index 8efcdd1..0000000
--- a/doc/import.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<html>
-  <head>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <meta http-equiv="Content-Language" content="en" />
-    <title>execline: the import program</title>
-    <meta name="Description" content="execline: the import program" />
-    <meta name="Keywords" content="execline command import environment variable" />
-    <!-- <link rel="stylesheet" type="text/css" href="//skarnet.org/default.css" /> -->
-  </head>
-<body>
-
-<p>
-<a href="index.html">execline</a><br />
-<a href="//skarnet.org/software/">Software</a><br />
-<a href="//skarnet.org/">skarnet.org</a>
-</p>
-
-<h1> The <tt>import</tt> program </h1>
-
-<p>
-<tt>import</tt> replaces an environment variable name with its value,
-then executes another program.
-</p>
-
-<h2> Interface </h2>
-
-<pre>
-     import [ -i | -D <em>default</em> ] [ -u ] [ -s ] [ -C | -c ] [ -n ] [ -d <em>delim</em> ] <em>envvar</em> <em>prog...</em>
-</pre>
-
-<ul>
- <li> <tt>import</tt> behaves exactly as
-<tt><a href="importas.html">importas</a> <em>envvar</em> <em>envvar</em></t>.
-</ul>
-
-<h2> Notes </h2>
-
-<ul>
- <li> Starting in execline-2.5.0.0, the <tt>import</tt> command is
-marked as obsolescent; it will disappear in a future version of execline.
-It is recommended to use the <a href="importas.html">importas</a>
-command instead. </li>
-</ul>
-
-</body>
-</html>
diff --git a/doc/index.html b/doc/index.html
index aabda00..b730778 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -51,7 +51,7 @@ shell's syntax, and has no security issues.
  <li> A POSIX-compliant system with a standard C development environment </li>
  <li> GNU make, version 3.81 or later. </li>
  <li> <a href="//skarnet.org/software/skalibs/">skalibs</a> version
-2.6.2.0 or later. It's a build-time requirement. It's also a run-time
+2.6.4.0 or later. It's a build-time requirement. It's also a run-time
 requirement if you link against the shared version of the skalibs
 library. </li>
 </ul>
@@ -66,7 +66,7 @@ library. </li>
 <h3> Download </h3>
 
 <ul>
- <li> The current released version of execline is <a href="execline-2.3.0.4.tar.gz">2.3.0.4</a>. </li>
+ <li> The current released version of execline is <a href="execline-2.5.0.0.tar.gz">2.5.0.0</a>. </li>
  <li> Alternatively, you can checkout a copy of the
 <a href="//git.skarnet.org/cgi-bin/cgit.cgi/execline/">execline
 git repository</a>:
@@ -167,7 +167,6 @@ to your installation: the shebang lines for your system might be something like
 <ul>
 <li><a href="define.html">The <tt>define</tt> program</a></li>
 <li><a href="importas.html">The <tt>importas</tt> program</a></li>
-<li><a href="import.html">The <tt>import</tt> program</a></li>
 <li><a href="elglob.html">The <tt>elglob</tt> program</a></li>
 <li><a href="elgetpositionals.html">The <tt>elgetpositionals</tt> program</a></li>
 <li><a href="multidefine.html">The <tt>multidefine</tt> program</a></li>
diff --git a/doc/multisubstitute.html b/doc/multisubstitute.html
index ecfff9b..99994df 100644
--- a/doc/multisubstitute.html
+++ b/doc/multisubstitute.html
@@ -34,7 +34,6 @@ its <em>argv</em>, then executes another program.
      {
        [ <a href="define.html">define</a> [ -n ] [ -s ] [ -C | -c ] [ -d <em>delim</em> ] <em>variable</em> <em>value</em> ]
        [ <a href="importas.html">importas</a> [ -i | -D <em>default</em> ] [ -n ] [ -s ] [ -C | -c ] [ -d <em>delim</em> ] <em>variable</em> <em>envvar</em> ]
-       [ <a href="import.html">import</a> [ -i | -D <em>default</em> ] [ -n ] [ -s ] [ -C | -c ] [ -d <em>delim</em> ] <em>envvar</em> ]
        [ <a href="elglob.html">elglob</a> [ -v ] [ -w ] [ -s ] [ -m ] [ -e ] [ -0 ] <em>variable</em> <em>pattern</em> ]
        [ <a href="elgetpositionals.html">elgetpositionals</a> [ -P <em>sharp</em> ] ]
        [ <a href="multidefine.html">multidefine</a> <em>value</em> { <em>variable...</em> } ]
@@ -55,7 +54,7 @@ to learn about the syntax of each substitution command. </li>
 <h2> Options </h2>
 
 <ul>
- <li> If an <tt>import</tt> or <tt>importas</tt> directive was given with the
+ <li> If an <tt>importas</tt> directive was given with the
 <tt>-i</tt> option, and the looked up variable is undefined,
 <tt>multisubstitute</tt> will exit 100. </li>
 </ul>
@@ -73,7 +72,7 @@ to learn about the syntax of each substitution command. </li>
  #!/command/execlineb
  export A wrong
  define B ${A}
- import A
+ importas A A
  echo ${B}
 </pre>
 
@@ -88,7 +87,7 @@ to learn about the syntax of each substitution command. </li>
  multisubstitute
  {
    define B ${A}
-   import A
+   importas A A
  }
  echo ${B}
 </pre>
diff --git a/doc/quine-prj-3.txt b/doc/quine-prj-3.txt
index e5b5708..799810e 100644
--- a/doc/quine-prj-3.txt
+++ b/doc/quine-prj-3.txt
@@ -4,10 +4,10 @@ define e ${q}${E}${q}
 export E $e
 define q ${b}${q}
 define b ${b}${b}
-import E
+importas E E
 echo $e"
 export E $e
 define q \"
 define b \\
-import E
+importas E E
 echo $e
diff --git a/doc/upgrade.html b/doc/upgrade.html
index 0c90b8a..861d7e8 100644
--- a/doc/upgrade.html
+++ b/doc/upgrade.html
@@ -18,6 +18,13 @@
 
 <h1> What has changed in execline </h1>
 
+<h2> in 2.5.0.0 </h2>
+
+<ul>
+ <li> skalibs dependency bumped to 2.6.4.0 </li>
+ <li> The <tt>import</tt> command has been removed. </li>
+</ul>
+
 <h2> in 2.3.0.4 </h2>
 
 <ul>
diff --git a/package/deps.mak b/package/deps.mak
index 5495a04..079d518 100644
--- a/package/deps.mak
+++ b/package/deps.mak
@@ -32,7 +32,6 @@ src/execline/if.o src/execline/if.lo: src/execline/if.c src/include/execline/exe
 src/execline/ifelse.o src/execline/ifelse.lo: src/execline/ifelse.c src/include/execline/execline.h
 src/execline/ifte.o src/execline/ifte.lo: src/execline/ifte.c src/include/execline/execline.h
 src/execline/ifthenelse.o src/execline/ifthenelse.lo: src/execline/ifthenelse.c src/include/execline/execline.h
-src/execline/import.o src/execline/import.lo: src/execline/import.c src/include-local/exlsn.h
 src/execline/importas.o src/execline/importas.lo: src/execline/importas.c src/include-local/exlsn.h
 src/execline/loopwhilex.o src/execline/loopwhilex.lo: src/execline/loopwhilex.c src/include/execline/execline.h
 src/execline/multidefine.o src/execline/multidefine.lo: src/execline/multidefine.c src/include-local/exlsn.h
@@ -68,7 +67,7 @@ src/libexecline/exlsn_define.o src/libexecline/exlsn_define.lo: src/libexecline/
 src/libexecline/exlsn_elglob.o src/libexecline/exlsn_elglob.lo: src/libexecline/exlsn_elglob.c src/include/execline/execline.h src/include-local/exlsn.h
 src/libexecline/exlsn_exlp.o src/libexecline/exlsn_exlp.lo: src/libexecline/exlsn_exlp.c src/include-local/exlsn.h
 src/libexecline/exlsn_free.o src/libexecline/exlsn_free.lo: src/libexecline/exlsn_free.c src/include-local/exlsn.h
-src/libexecline/exlsn_import.o src/libexecline/exlsn_import.lo: src/libexecline/exlsn_import.c src/include/execline/execline.h src/include-local/exlsn.h
+src/libexecline/exlsn_importas.o src/libexecline/exlsn_importas.lo: src/libexecline/exlsn_importas.c src/include/execline/execline.h src/include-local/exlsn.h
 src/libexecline/exlsn_main.o src/libexecline/exlsn_main.lo: src/libexecline/exlsn_main.c src/include/execline/execline.h src/include-local/exlsn.h
 src/libexecline/exlsn_multidefine.o src/libexecline/exlsn_multidefine.lo: src/libexecline/exlsn_multidefine.c src/include/execline/execline.h src/include-local/exlsn.h
 
@@ -132,8 +131,6 @@ ifte: EXTRA_LIBS := ${SPAWN_LIB}
 ifte: src/execline/ifte.o ${LIBEXECLINE} -lskarnet
 ifthenelse: EXTRA_LIBS := ${SPAWN_LIB}
 ifthenelse: src/execline/ifthenelse.o ${LIBEXECLINE} -lskarnet
-import: EXTRA_LIBS :=
-import: src/execline/import.o ${LIBEXECLINE} -lskarnet
 importas: EXTRA_LIBS :=
 importas: src/execline/importas.o ${LIBEXECLINE} -lskarnet
 loopwhilex: EXTRA_LIBS := ${SPAWN_LIB}
@@ -165,9 +162,9 @@ wait: src/execline/wait.o ${LIBEXECLINE} -lskarnet
 withstdinas: EXTRA_LIBS :=
 withstdinas: src/execline/withstdinas.o -lskarnet
 ifeq ($(strip $(STATIC_LIBS_ARE_PIC)),)
-libexecline.a.xyzzy: src/libexecline/el_execsequence.o src/libexecline/el_getstrict.o src/libexecline/el_parse.o src/libexecline/el_parse_from_buffer.o src/libexecline/el_parse_from_string.o src/libexecline/el_popenv.o src/libexecline/el_pushenv.o src/libexecline/el_semicolon.o src/libexecline/el_spawn0.o src/libexecline/el_spawn1.o src/libexecline/el_substandrun.o src/libexecline/el_substandrun_str.o src/libexecline/el_substitute.o src/libexecline/el_transform.o src/libexecline/el_vardupl.o src/libexecline/exlsn_define.o src/libexecline/exlsn_elglob.o src/libexecline/exlsn_import.o src/libexecline/exlsn_multidefine.o src/libexecline/exlsn_exlp.o src/libexecline/exlsn_main.o src/libexecline/exlsn_free.o src/libexecline/exlp.o
+libexecline.a.xyzzy: src/libexecline/el_execsequence.o src/libexecline/el_getstrict.o src/libexecline/el_parse.o src/libexecline/el_parse_from_buffer.o src/libexecline/el_parse_from_string.o src/libexecline/el_popenv.o src/libexecline/el_pushenv.o src/libexecline/el_semicolon.o src/libexecline/el_spawn0.o src/libexecline/el_spawn1.o src/libexecline/el_substandrun.o src/libexecline/el_substandrun_str.o src/libexecline/el_substitute.o src/libexecline/el_transform.o src/libexecline/el_vardupl.o src/libexecline/exlsn_define.o src/libexecline/exlsn_elglob.o src/libexecline/exlsn_importas.o src/libexecline/exlsn_multidefine.o src/libexecline/exlsn_exlp.o src/libexecline/exlsn_main.o src/libexecline/exlsn_free.o src/libexecline/exlp.o
 else
-libexecline.a.xyzzy: src/libexecline/el_execsequence.lo src/libexecline/el_getstrict.lo src/libexecline/el_parse.lo src/libexecline/el_parse_from_buffer.lo src/libexecline/el_parse_from_string.lo src/libexecline/el_popenv.lo src/libexecline/el_pushenv.lo src/libexecline/el_semicolon.lo src/libexecline/el_spawn0.lo src/libexecline/el_spawn1.lo src/libexecline/el_substandrun.lo src/libexecline/el_substandrun_str.lo src/libexecline/el_substitute.lo src/libexecline/el_transform.lo src/libexecline/el_vardupl.lo src/libexecline/exlsn_define.lo src/libexecline/exlsn_elglob.lo src/libexecline/exlsn_import.lo src/libexecline/exlsn_multidefine.lo src/libexecline/exlsn_exlp.lo src/libexecline/exlsn_main.lo src/libexecline/exlsn_free.lo src/libexecline/exlp.lo
+libexecline.a.xyzzy: src/libexecline/el_execsequence.lo src/libexecline/el_getstrict.lo src/libexecline/el_parse.lo src/libexecline/el_parse_from_buffer.lo src/libexecline/el_parse_from_string.lo src/libexecline/el_popenv.lo src/libexecline/el_pushenv.lo src/libexecline/el_semicolon.lo src/libexecline/el_spawn0.lo src/libexecline/el_spawn1.lo src/libexecline/el_substandrun.lo src/libexecline/el_substandrun_str.lo src/libexecline/el_substitute.lo src/libexecline/el_transform.lo src/libexecline/el_vardupl.lo src/libexecline/exlsn_define.lo src/libexecline/exlsn_elglob.lo src/libexecline/exlsn_importas.lo src/libexecline/exlsn_multidefine.lo src/libexecline/exlsn_exlp.lo src/libexecline/exlsn_main.lo src/libexecline/exlsn_free.lo src/libexecline/exlp.lo
 endif
 libexecline.so.xyzzy: EXTRA_LIBS := -lskarnet
-libexecline.so.xyzzy: src/libexecline/el_execsequence.lo src/libexecline/el_getstrict.lo src/libexecline/el_parse.lo src/libexecline/el_parse_from_buffer.lo src/libexecline/el_parse_from_string.lo src/libexecline/el_popenv.lo src/libexecline/el_pushenv.lo src/libexecline/el_semicolon.lo src/libexecline/el_spawn0.lo src/libexecline/el_spawn1.lo src/libexecline/el_substandrun.lo src/libexecline/el_substandrun_str.lo src/libexecline/el_substitute.lo src/libexecline/el_transform.lo src/libexecline/el_vardupl.lo src/libexecline/exlsn_define.lo src/libexecline/exlsn_elglob.lo src/libexecline/exlsn_import.lo src/libexecline/exlsn_multidefine.lo src/libexecline/exlsn_exlp.lo src/libexecline/exlsn_main.lo src/libexecline/exlsn_free.lo src/libexecline/exlp.lo
+libexecline.so.xyzzy: src/libexecline/el_execsequence.lo src/libexecline/el_getstrict.lo src/libexecline/el_parse.lo src/libexecline/el_parse_from_buffer.lo src/libexecline/el_parse_from_string.lo src/libexecline/el_popenv.lo src/libexecline/el_pushenv.lo src/libexecline/el_semicolon.lo src/libexecline/el_spawn0.lo src/libexecline/el_spawn1.lo src/libexecline/el_substandrun.lo src/libexecline/el_substandrun_str.lo src/libexecline/el_substitute.lo src/libexecline/el_transform.lo src/libexecline/el_vardupl.lo src/libexecline/exlsn_define.lo src/libexecline/exlsn_elglob.lo src/libexecline/exlsn_importas.lo src/libexecline/exlsn_multidefine.lo src/libexecline/exlsn_exlp.lo src/libexecline/exlsn_main.lo src/libexecline/exlsn_free.lo src/libexecline/exlp.lo
diff --git a/package/info b/package/info
index 6bfc977..eaf4d83 100644
--- a/package/info
+++ b/package/info
@@ -1,4 +1,4 @@
 package=execline
-version=2.3.0.4
+version=2.5.0.0
 category=admin
 package_macro_name=EXECLINE
diff --git a/package/modes b/package/modes
index adf455e..76ae052 100644
--- a/package/modes
+++ b/package/modes
@@ -30,7 +30,6 @@ if			0755
 ifelse			0755
 ifte			0755
 ifthenelse		0755
-import			0755
 importas		0755
 loopwhilex		0755
 piperw			0755
diff --git a/package/targets.mak b/package/targets.mak
index 73ef16b..678393f 100644
--- a/package/targets.mak
+++ b/package/targets.mak
@@ -29,7 +29,6 @@ if \
 ifelse \
 ifte \
 ifthenelse \
-import \
 importas \
 loopwhilex \
 multidefine \
diff --git a/src/execline/deps-exe/import b/src/execline/deps-exe/import
deleted file mode 100644
index 97021b5..0000000
--- a/src/execline/deps-exe/import
+++ /dev/null
@@ -1,2 +0,0 @@
-${LIBEXECLINE}
--lskarnet
diff --git a/src/execline/import.c b/src/execline/import.c
deleted file mode 100644
index 7d58f01..0000000
--- a/src/execline/import.c
+++ /dev/null
@@ -1,12 +0,0 @@
-/* ISC license. */
-
-#include <skalibs/strerr2.h>
-#include "exlsn.h"
-
-#define USAGE "import [ -i | -D default ] [ -u ] [ -n ] [ -s ] [ -C | -c ] [ -d delim ] var prog..."
-
-int main (int argc, char const **argv, char const *const *envp)
-{
-  PROG = "import" ;
-  exlsn_main(argc, argv, envp, &exlsn_import, USAGE) ;
-}
diff --git a/src/execline/multisubstitute.c b/src/execline/multisubstitute.c
index 444ea47..c004a41 100644
--- a/src/execline/multisubstitute.c
+++ b/src/execline/multisubstitute.c
@@ -7,22 +7,20 @@
 
 #define USAGE "see http://skarnet.org/software/execline/multisubstitute.html"
 
-static char const *const commands[8] =
+static char const *const commands[] =
 {
   "define",
   "importas",
-  "import",
   "elglob",
   "elgetpositionals",
   "multidefine",
   0
 } ;
 
-static exlsnfunc_t_ref const functions[8] =
+static exlsnfunc_t_ref const functions[] =
 {
   &exlsn_define,
   &exlsn_importas,
-  &exlsn_import,
   &exlsn_elglob,
   &exlsn_exlp,
   &exlsn_multidefine,
diff --git a/src/include-local/exlsn.h b/src/include-local/exlsn.h
index 238bd6b..832a67b 100644
--- a/src/include-local/exlsn.h
+++ b/src/include-local/exlsn.h
@@ -25,7 +25,6 @@ typedef exlsnfunc_t *exlsnfunc_t_ref ;
 	
 extern exlsnfunc_t exlsn_define ;
 extern exlsnfunc_t exlsn_importas ;
-extern exlsnfunc_t exlsn_import ;
 extern exlsnfunc_t exlsn_elglob ;
 extern exlsnfunc_t exlsn_exlp ;
 extern exlsnfunc_t exlsn_multidefine ;
diff --git a/src/libexecline/deps-lib/execline b/src/libexecline/deps-lib/execline
index 13a7352..96d4e18 100644
--- a/src/libexecline/deps-lib/execline
+++ b/src/libexecline/deps-lib/execline
@@ -15,7 +15,7 @@ el_transform.o
 el_vardupl.o
 exlsn_define.o
 exlsn_elglob.o
-exlsn_import.o
+exlsn_importas.o
 exlsn_multidefine.o
 exlsn_exlp.o
 exlsn_main.o
diff --git a/src/libexecline/exlsn_import.c b/src/libexecline/exlsn_importas.c
index 254ab78..d8d9ff6 100644
--- a/src/libexecline/exlsn_import.c
+++ b/src/libexecline/exlsn_importas.c
@@ -9,7 +9,7 @@
 #include <execline/execline.h>
 #include "exlsn.h"
 
-static int exlsn_import_as (int argc, char const **argv, char const *const *envp, exlsn_t *info, unsigned int as)
+int exlsn_importas (int argc, char const **argv, char const *const *envp, exlsn_t *info)
 {
   eltransforminfo_t si = ELTRANSFORMINFO_ZERO ;
   subgetopt_t localopt = SUBGETOPT_ZERO ;
@@ -40,18 +40,18 @@ static int exlsn_import_as (int argc, char const **argv, char const *const *envp
   }
   argc -= localopt.ind ; argv += localopt.ind ;
 
-  if ((unsigned int)argc < 1+as) return -3 ;
+  if ((unsigned int)argc < 2) return -3 ;
   if (!*argv[0] || el_vardupl(argv[0], info->vars.s, info->vars.len)) return -2 ;
   if (!stralloc_catb(&info->vars, argv[0], strlen(argv[0]) + 1)) return -1 ;
-  x = env_get2(envp, argv[as]) ;
+  x = env_get2(envp, argv[1]) ;
   if (!x)
   {
-    if (insist) strerr_dienotset(100, argv[as]) ;
+    if (insist) strerr_dienotset(100, argv[1]) ;
     x = defaultval ;
   }
   else if (unexport)
   {
-    if (!stralloc_catb(&info->modifs, argv[as], strlen(argv[as]) + 1)) goto err ;
+    if (!stralloc_catb(&info->modifs, argv[1], strlen(argv[1]) + 1)) goto err ;
   }
   if (!x) blah.n = 0 ;
   else
@@ -63,21 +63,10 @@ static int exlsn_import_as (int argc, char const **argv, char const *const *envp
     blah.n = r ;
   }
   if (!genalloc_append(elsubst_t, &info->data, &blah)) goto err ;
-  return localopt.ind + 1 + as ;
+  return localopt.ind + 2 ;
 
  err:
   info->vars.len = blah.var ;
   info->values.len = blah.value ;
   return -1 ;
 }
-
-int exlsn_import (int argc, char const **argv, char const *const *envp, exlsn_t *info)
-{
-  strerr_warnw1x("the import command and directive are obsolescent, please use importas instead!") ;
-  return exlsn_import_as(argc, argv, envp, info, 0) ;
-}
-
-int exlsn_importas (int argc, char const **argv, char const *const *envp, exlsn_t *info)
-{
-  return exlsn_import_as(argc, argv, envp, info, 1) ;
-}