Dear,

Question of Lonkero,
what is this line:

;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET
GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE

keyword table?
what is THEN?

Answer:
an example of such information block without errors:
quote:


;($begin)
;
; thu 01-aug-2002 18:00:00 (kix 4.10 vs 3.20e)
;
;Informative KIXSTRIP: no errors found (input=1207 output=997 skip=210).
;
;Summary KIXSTRIP: block structures
; - do:until [3:3]
; - for|each:in|to:step|next [0|0:0|0:0|0]
; - function:endfunction [0:0]
; - if:else:endif [155:36:155]
; - select:case:endselect [1:7:1]
; - while:loop [13:13]
;Informative KIXSTRIP: 172 block_structures found.
;Informative KIXSTRIP: no UDF's found.
;Informative KIXSTRIP: 2 labels found.
;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET
GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE
;Informative KIXSTRIP: 3 BREAK
;Informative KIXSTRIP: 38 SHELL
;
;($end)


an example of such information block with errors:
quote:


;($begin)
;
; thu 01-aug-2002 19:00:00 (kix 4.10 vs 3.20e)
;
;Informative KIXSTRIP: input=1207 output=997 skip=210
;
;Warning KIXSTRIP: 2 errors in block structure(s). missing statement(s).
; - do:until [3:3]
; - for|each:in|to:step|next [0|0:0|0:0|0]
; - function:endfunction [0:0]
; -ERROR- - if:else:endif [157:36:155]
; - select:case:endselect [1:7:1]
; - while:loop [13:13]
;Warning KIXSTRIP: 1 line is incompleted.
; rerun program with option "/block_check /show_errors".
;Warning KIXSTRIP: found illegal statement THEN.
;Warning KIXSTRIP: some lines contains errors or possible errors.
; 1 line incomplete "double quotation".
; 1 line incomplete "left square brackets".
; 1 line incomplete "left parenthesis".
; 1 line incompleted.
;Informative KIXSTRIP: 174 block_structures found.
;Informative KIXSTRIP: no UDF's found.
;Informative KIXSTRIP: 2 labels found.
;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET
GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE
;Informative KIXSTRIP: 3 BREAK
;Warning KIXSTRIP: 1 OLExxx (no longer supported at kix 4.x)
;Informative KIXSTRIP: 38 SHELL
;Warning KIXSTRIP: 1 THEN (illegal statement)
;
;($end)
;($begin)
;
;Warning KIXSTRIP: 1201 line incomplete "double quotation".
;Warning KIXSTRIP: 1201 line incomplete "left square brackets".
;Warning KIXSTRIP: 1201 line incomplete "left parenthesis".
;Warning KIXSTRIP: 1201 line incompleted.
;
;($end)


Explanation:
  • ;Informative KIXSTRIP:   no errors found (input=1203 output=993 skip=210).

    input = the number of lines on your source file
    output = the number of lines written to your destination file
    skip = the number of lines which aren't used. It are the comment lines in your
    script, which are useful by option "/Combine"

  • ;Warning KIXSTRIP: 2 errors in block structure(s). missing statement(s).
    ; - do:until [3:3]
    ; - for|each:in|to:step|next [0|0:0|0:0|0]
    ; - function:endfunction [0:0]
    ; -ERROR- - if:else:endif [157:36:155]
    ; - select:case:endselect [1:7:1]
    ; - while:loop [13:13]

    Only the ;Warning KIXSTRIP: 2 errors in block structure(s). missing statement(s).
    is showing when one of possible block structures is incomplete.
    Incomplete means: the amount of starting, middle and ending keywords doesn't match the rules,
    f.e. each IF statement in your script must have also an ENDIF.

    The block structure summary will be inserted by an error situation, or by the specifi-
    cation of option "/Show_Structure".

  • ;Warning KIXSTRIP: 1 line is incompleted.
    ; rerun program with option "/block_check /show_errors".
    ;Warning KIXSTRIP: found illegal statement THEN.
    ;Warning KIXSTRIP: some lines contains errors or possible errors.
    ; 1 line incomplete "double quotation".
    ; 1 line incomplete "left square brackets".
    ; 1 line incomplete "left parenthesis".
    ; 1 line incompleted.

    shows how much lines are incomplete. those line(s) can contain one or more
    errors or possible errors.
    by rerunning kixstrip with the option "/block_check /show_errors" it inserts
    lines in the form of kixtart comment statement, which makes it possible to
    see fast what is actual wrong in your script.
    in our example it inserts following lines
    code:
    ; -------> Warning KIXSTRIP: 1201 line incomplete "double quotation".
    ; -------> Warning KIXSTRIP: 1201 line incomplete "left square brackets".
    ; -------> Warning KIXSTRIP: 1201 line incomplete "left parenthesis".
    ; -------> Warning KIXSTRIP: 1201 line incompleted.

    the message ;Warning KIXSTRIP: found illegal statement THEN. has to deal with the
    possibility that programmers are using THEN keyword. Legal in some other languages, but not
    for kixtart. it prevents such mistyping.

  • ;Informative KIXSTRIP: 174 block_structures found.
    ;Informative KIXSTRIP: no UDF's found.
    ;Informative KIXSTRIP: 2 labels found.
    ;Summary KIXSTRIP: BREAK CALL DEBUG DISPLAY ENDFUNCTION EXECUTE EXIT FUNCTION GET
    GETS GOSUB GOTO OLExxx PLAY QUIT RETURN RUN SHELL SLEEP THEN USE
    ;Informative KIXSTRIP: 3 BREAK
    ;Warning KIXSTRIP: 1 OLExxx (no longer supported at kix 4.x)
    ;Informative KIXSTRIP: 38 SHELL
    ;Warning KIXSTRIP: 1 THEN (illegal statement)

    means

    * how much block structures are specified?
    * did your script contains UDF's blocks?
    * are there labels specified, which can mean that you are also using GOTO and/or GOSUB
    * which kixtart commands and functions can have influence on your performance?
    statements:
    - BREAK makes it possible that the default state is changing, which can result in
    accepting ctrl+break input
    - CALL can influence your script in negative way, when you are calling specified script
    from a loop block structure, or when script can't be found on specified location.
    - DEBUG makes it possible that your script becomes in a debugging mode. It is
    independent of [i]SetOption("DisableDebugging","On")[/b] statement.
    - DISPLAY can influence your script in negative way, when specified file contains all
    kind of unexpected characters, or when specified file can't be found on specified lo-
    cation.
    - ENDFUNCTION/FUNCTION
    - EXECUTE
    - EXIT/QUIT exists current script, exists kixtart program. It can explain why your
    last line isn't executed. RETURN statement in main script terminates KiXtart too.
    - GET/GETS requires user input. You have a problem, when you doesn't see this request
    or you doesn't have the possibility to enter it because your windows BOX is hidden.
    - for GOSUB/GOTO labels must be reachable. A simple mistyping elsewhere makes those
    labels unreachable.
    - OLExxx statements aren't supporting at kixtart 4.x release. You must convert
    this piece of code before running this script in a kixtart 4.x environment.
    - PLAY can explain that your script returns beeps. It can influence you script
    also, when specified file is long, or when specified file can't be found on
    specified location.
    - RETURN causes script execution to continue at the statement following the last
    CALL or GOSUB statement, and alo returns from inside a UDF.
    RETURN statement in main script terminates KiXtart.
    - RUN starts to run command interpreter commands. Immediately script execution
    continues makes it impossible to use possible results. Use shell for such
    situations.
    - SHELL starts to run command interpreter commands. Script execution is stopped
    until the program exists, or it returns an exit signal regardless of child pro-
    cesses. To prevent latest possibility you should use start /wait in your
    SHELL statement.
    - SLEEP halts script execution for the number of seconds specified. Too much or
    too long of it can explain the progress of your script.
    - THEN is an illegal keyword in kixtart language. now it is easy to see such
    mistypings.
    - USE can slowdown your script progress, when f.e.network performance is bad.
greetings.

[ 02 August 2002, 21:48: Message edited by: MCA ]
_________________________
email scripting@wanadoo.nl homepage scripting@wanadoo.nl | Links | Summary of Site Site KiXforms FAQ kixtart.org library collection mirror MCA | FAQ & UDF help file UDF kixtart.org library collection mirror MCA | mirror USA | mirror europe UDF scriptlogic library collection UDFs | mirror MCA