2 % (c) The AQUA Project, Glasgow University, 1996
4 \section[Argv]{@Argv@: direct (non-standard) access to command-line arguments}
7 #include "HsVersions.h"
9 module Argv ( argv ) where
11 import PreludeGlaST ( indexAddrOffAddr )
13 CHK_Ubiq() -- debugging consistency check
16 argv = unpackArgv ``prog_argv'' (``prog_argc''::Int)
18 unpackArgv :: _Addr -> Int -> [FAST_STRING] -- argv[1 .. argc-1]
20 unpackArgv argv argc = unpack 1
22 unpack :: Int -> [FAST_STRING]
25 then ([] :: [FAST_STRING])
26 else case (indexAddrOffAddr argv n) of { item ->
27 _packCString item : unpack (n + 1)