lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]




On 17/02/17 04:34 PM, Soni L. wrote:


On 17/02/17 04:29 PM, Roberto Ierusalimschy wrote:
You should remove the 'const' here, but otherwise the assignment is
correct; ANSI C assures that the strings pointed to by 'argv' are
modifiable (and you don't need to restore its value).

-- Roberto

Wouldn't that affect `arg`? Or is `arg` created before any argument
processing takes place?
'arg' is created before any processing, because it is available to
that processing:

-- t2.lua
print(#arg)


$ LUA_INIT='@t2.lua' lua -l t2 t2.lua b c
   --> 2
   --> 2
   --> 2

-- Roberto


Does this mean the result of -l could be tweaked by a LUA_INIT script?


Wait, this behaviour should be tweaked...

What if `lua` loaded everything into `arg` as it appears, then started up LUA_INIT, then started processing `arg` and moving the elements around, so e.g. your command would print:

--> 5
--> 3
--> 2

Then LUA_INIT would be able to process -l, thus doing what dirk wants.

--
Disclaimer: these emails may be made public at any given time, with or without reason. If you don't agree with this, DO NOT REPLY.