Pearl Boldt 13012 Birdale Lane Darnestown, MD 20878-3558 Internet: Quiktrim@ibm.net
QTAwk error returns. When QTAwk encounters an error which it cannot correct, it generates and displays an error message in the format:
Error (xxxx): Error Message Text
From 'execute' Function.
Action File line: llll
Scanning File: utility filename
Record: rrrr
Action File line
Line 2 is generated only if the error occurred during execution of the execute function. Lines 4 to 5 are displayed only if an input file is currently being scanned.
On a normal exit QTAwk returns a value of zero, 0, to the operating system. This value may be set with the exit statement. On encountering an error which generates an error message, QTAwk exits with a nonzero value between 1 and 6. The warning messages will exit with a return value of zero. The return values generated on detecting an error are:
| Error type
|
return value
|
error value, ev
|
|---|---|---|
| Warning Errors | 0 | ev < 1000 |
| File Errors | 2 | 2000 <= ev < 3000 |
| Pattern Errors | 3 | 3000 <= ev < 4000 |
| Run-Time Errors | 4 | 4000 <= ev < 5000 |
| Interpretation Errors | 5 | 5000 <= ev < 6000 |
| Memory Error | 6 | 6000 <= ev < 7000 |
| Regular Expression Errors | 3 | 7000 <= ev < 8000 |
The 'error value' range shown in the above list, shows the range of the numeric value shown in the error message for that type of error.
The error value displayed on line 1 may be used to find the error diagnostic.
Warning Errors
The only valid command line options are:
| option
|
action
|
| -- | to stop command line option scanning |
| -f | to specify a utility filename |
| -F | to specify the input record field separator, FS. |
| -Wd | to sset DELAY_INPUT_PARSE to true |
| -Ww | to specify a utility filename for utility internal form |
An attempt has been made to close a file with the close function, that is not currently open.
File Errors
File Not Found
The filename given in the error message, has been specified on the command
line. The file named does not exist. QTAwk displays this error message
and terminates processing.
2010
Error in Re-Opening File in Binary Mode.
The RECLEN built-in variable has been
changed to a non-zero value. In reading fixed length records, the input file
is re-opened in "binary" mode so that Carriage Return/Line Feed pairs are
NOT translated to single Line Feed characters. An error has occurred in attempting
to change the translation mode for a file opened in text mode to binary
mode. Please contact the author with details of this error.
2020
Error in Re-Opening File in Binary Mode.
The RECLEN built-in variable has been
changed to a non-zero value. In reading fixed length records, the input file
is re-opened in "binary" mode so that Carriage Return/Line Feed pairs are
NOT translated to single Line Feed characters. An error has occurred in attempting
to change the translation mode for a file opened in text mode to binary
mode. Please contact the author with details of this error.
2030
Only One Internal Form Utility File Allowed
When specifying utility files, only one utility in internal
form may be specified. In addition, internal form utility files may not
be mixed with ASCII utility files.
2040
Error in Re-Opening File in Binary Mode.
The RECLEN built-in variable has been
changed to a non-zero value. In reading fixed length records, the input file
is re-opened in "binary" mode so that Carriage Return/Line Feed pairs are
NOT translated to single Line Feed characters. An error has occurred in attempting
to change the translation mode for a file opened in text mode to binary
mode. Please contact the author with details of this error.
2050
Error in Re-Opening File in Binary Mode.
The RECLEN built-in variable has been
changed to a non-zero value. In reading fixed length records, the input file
is re-opened in "binary" mode so that Carriage Return/Line Feed pairs are
NOT translated to single Line Feed characters. An error has occurred in attempting
to change the translation mode for a file opened in text mode to binary
mode. Please contact the author with details of this error.
2060
Error in Re-Opening Standard Input File in Binary Mode.
The "Wi" option has been specified on the command line invoking QTAwk,
and an error has occurred in attempting to change the translation mode for
the Standard Input file. Please contact the author with details of this error.
2070
Error in Re-Opening Standard Output File in Binary Mode.
The "Wo" option has been specified on the command line invoking QTAwk,
and an error has occurred in attempting to change the translation mode for
the Standard Output file. Please contact the author with details of this
error.
2080 to 2102
Error in saving Standard File of Parent.
Error in Assigning Standard File for Child Process
Error in Closing Inactive End of Pipe to Child Process.
Error in Restoring Standard File for Parent Process.
These errors occur when QTAwk is attempting to create the data
pipe to or from a child process. Please contact the author with the exact
error number and the circumstances under which the error occurred.
Pattern Errors
Stop pattern without a start
The range pattern has the form:
expression , expression
The comma, ,, is used to separate the expressions of
the pattern. The associated action is executed when the first or start
expression is TRUE. Execution continues for every input record until, and
including, the second or stop expression is TRUE. A comma, ',', has been
found in a pattern without the first expression. This is usually caused
by imbalanced braces, "{}". Check all prior braces to ensure that every
left brace, '{', has an associated terminating right brace, '}'.
3010
Already have a stop pattern
The range pattern has the form:
expression , expression
The comma, ',', is used to separate the expressions of the pattern. The
associated action is executed when the first or start expression is TRUE.
Execution continues for every input record until, and including, the second
or stop expression is TRUE. A second comma, ',', has been found in a pattern.
This may be caused by the unbalanced braces as for error number 3000 above.
A second cause may stem from the fact that new patterns for pattern/action
pairs must be separated from previous patterns by a new-line if no action,
i.e., the default action, is associated with the previous pattern.
Run-Time Errors
Command Line Variable Set - Not Used.
Only variables defined in the QTAwk utility may be set on the
command line with the form "variable = value"
4010
Missing Opening Parenthesis On 'while'.
The proper syntax for the while statement is:
while ( conditional_expression ) statement
The left parenthesis, '(', starting the conditional expression was not
found following the 'while' keyword. Check that the syntax conforms to the
form above.
4020
Missing Opening Parenthesis On 'switch'.
The form of the switch construct is:
switch ( switch_expression ) statement
The left parenthesis, '(', was not found following the 'switch' keyword.
4030
Unable to compile Regular Expression
QTAwk was unable to convert a regular expression to internal
form. Please contact the QTAwk author with
information on the circumstances of this error message.
4040
Internal Array Error.
Internal error. Please contact the QTAwk author
with information on the circumstances of this error message.
4050
pre/post '++' or '--' Needs a Variable.
The pre/post ++/-- operators operate on variables only. This error is
usually generated because of an incorrect understanding of the precedence
rules. The operator was associated by QTAwk when the utility line
was parsed than the user expected. Check the precedence rules and the syntax
of the line cited.
4070
Undefined Symbol.
A symbol has been found which QTAwk does not recognize. This error
should not occur and represents an internal error. Please contact the QTAwk
author with information on the circumstances of this
error message.
4080
Internal Error #200
Internal error. Please contact the QTAwk author
with information on the circumstances of this error message.
4090
Attempt To Delete Nonexistent Array Element.
The delete statement was followed with
a reference to an array element that does not exist.
4095
Attempt To Delete Array Element With 'deletea' Statement.
The deletea statement is used to delete
whole arrays. If it is desired to delete a single array element, the delete statement should be used.
4100
Warning, Attempt To Close File/Pipe Not Successful.
An attempt has been made to close a file or pipe with the close function. The close action has not
been successful, usually because the file or pipe named does not exist.
Check the name specified.
4110
strim Function Result Exceeds Limits.
The built-in function strim has been
called with a string to trim which exceeds the maximum limits of 4096 characters.
4120
Cannot Nest 'execute' Function.
The execute function cannot be executed
with a string/array executed by this function. An attempt has been made
to do this. Check the string/array which was executed.
4130
(g)sub Function Result Exceeds Limits.
The function sub or gsub has been called to replace matching strings
and the resultant string after replacement would exceed the limit of
4096 characters.
4140
Missing ')' for Function Call.
A built-in function has been called with a left parenthesis starting
the argument list, but no right parenthesis terminating the argument list.
Check the line in question.
4160
[sf]printf needs format string as first argument
The fprintf and sprintf functions need a format string which
specifies the output. The format string is the second argument and must
be specified for these functions.
4170, 4180, 4190
Format Specifications Exceed Arguments To Print.
The printf, fprintf and sprintf functions use a format string to
control the output. Certain characters strings in the format control
the output of numerics and imbedded strings. There must be exactly
one extra argument for each of these character control strings. This error
occurs when there are more control strings than extra arguments.
4220
Third Argument For '(g)sub' Function Must Be A Variable.
The optional third argument of the sub
and gsub functions must be a variable.
The string value of this variable is replaced after string substitution
has been accomplished.
4222
First Argument For findfile Function Must Be A Variable.
Findfile returns the results of a directory search in the variable
specified as the first argument of the findfile function call. Thus,
this argument must a variable.
4223
findfile Functionfindfile returns
the results of a directory search in the variable specified as the
first argument of the findfile function call. Since the result returned
is an array and an array cannot be assigned to the element of another array,
the first argument cannot be an array element.
4230
Excessive Length Specified substr Function.
The form of the substr function is The third argument is optional, but
if specified cannot exceed 4096.
4240
Start Position Specified Too Great, substr Function.
The form of the substr function is The second argument cannot exceed
4096.
4270
rotate Function Needs Array Member As
Argument. The argument for the rotate function must be an array. If a variable
is used, make sure that it is an array when the function is called.
4280
Excessive Width Specified center Function.
The second argument specifies the width of the line in which to center
the string value of the first argument. The width specified cannot exceed
4096.
4290
Excessive Copies Specified copies Function.
The second argument of the copies function specifies the number of copies
of the string value of the first argument to return. The number of
copies specified cannot exceed 65,536. See error number 4300 below also.
4300
copies Function Return Exceeds Limits.
The copies function returns the string value of the first argument, copied the number of times specified by the second argument. The total length of the returned string:
arg2 * length(arg1)
cannot exceed 4096 characters.
4310
Excessive Characters Specified deletec Function.
The deletec function deletes the number of characters specified by the third argument starting at the position specified by the second argument from the string value of the first argument. The form of the function is:
deletec(string,start,num)
The number of characters specified to delete, 'num', cannot exceed 65,536.
If 'num' is zero or exceeds the number of characters remaining in the
string from the start position, then the remainder of the string is deleted.
See also error 4320 below.
4320
Excessive Characters Specified deletec Function.
The deletec function deletes the number of characters specified by the third argument starting at the position specified by the second argument from the string value of the first argument. The form of the function is:
deletec(string,start,num)
The start is negative or greater than the length of the string value of
the first argument, then no characters are deleted.
4330
deletec Intermediate Result Exceeds Limits.
The deletec function deletes the number of characters specified by the third argument starting at the position specified by the second argument from the string value of the first argument. The form of the function is:
deletec(string,start,num)
If the length of the string value of the first argument exceeds 4096
then this error is triggered.
4340
Start Position Specified Too Great, insert Function.
The insert function inserts the string value of the second argument into the string value of the first argument, starting at the position specified by the third argument. The form of the function is:
insert(string1,string2,start)
The third argument cannot exceed 65,536. If start exceeds the length
of the string value of 'string1', then the string value of 'string2'
is concatenated onto the string value of 'string1'
4350
insert Function Intermediate Result Exceeds Limits.
The insert function inserts the string value of the second argument into the string value of the first argument, starting at the position specified by the third argument. The form of the function is:
insert(string1,string2,start)
The length of the string value value of 'string1' cannot exceed 4096
in length. The result of insert 'string2' into 'string1' cannot exceed 4096
also. See error number 4360 below.
4360
insert Function Return Exceeds Limits.
The insert function inserts the string value of the second argument into the string value of the first argument, starting at the position specified by the third argument. The form of the function is:
insert(string1,string2,start)
The length of the string value value of 'string1' cannot exceed 4096
in length. The result of insert 'string2' into 'string1' cannot exceed 4096
also. See error number 4350 above.
4370
Start Position Specified Too Great, overlay Function.
The overlay function overlays the string value of the second argument into the string value of the first argument, starting at the position specified by the third argument. The form of the function is:
overlay(string1,string2,start)
The third argument cannot exceed 65,536. If start exceeds the length
of the string value of 'string1', then blanks are appended to 'string1' to
create a string of length 'start'. The second string is then concatenated
to this string. See also error numbers 4380, 4390, and 4400.
4380
overlay Function Result Exceeds Limits.
The overlay function overlays the string value of the second argument into the string value of the first argument, starting at the position specified by the third argument. The form of the function is:
overlay(string1,string2,start)
The third argument cannot exceed 4096. If start exceeds the length of
the string value of 'string1', then blanks are appended to 'string1' to
create a string of length 'start'. The second string is then concatenated
to this string. See also error numbers 4370, 4390, and 4400.
4390
overlay Function Intermediate Result Exceeds Limits.
The overlay function overlays the string value of the second argument into the string value of the first argument, starting at the position specified by the third argument. The form of the function is:
overlay(string1,string2,start)
The length of the string value of 'string1' cannot exceed 4096 characters.
See also error numbers 4370, 4380,
and 4400.
4400
overlay Function Result Exceeds Limits.
The overlay function overlays the string value of the second argument into the string value of the first argument, starting at the position specified by the third argument. The form of the function is:
overlay(string1,string2,start)
The length of the resultant string after overlaying 'string2'
onto 'string1' cannot exceed 4096. See also error numbers 4370, 4380, and 4390.
4410
'remove' Function Intermediate Result Exceeds Limits.
The 'remove' function removes all characters specified by the second argument from the string value of the first argument. The form of the function is:
remove(string,char)
The length of 'string' before any character are removed cannot exceed
4096.
4420
Excessive Width Specified justify Function.
The justify function forms a string from the elements of the array specified by the first argument. The string will have a length specified by the integer value of the third argument and will be formed from the number of array elements specified by the second argument. Any padding characters necessary between array elements can be specified by the optional fourth argument. The form of the function is:
justify(array_var,count,width [,pad_char] );
The width specified cannot exceed 65,536. See also error number
4430 below.
4430
Excessive Number Of Array Elements Specified justify Function.
The justify function forms a string from the elements of the array specified by the first argument. The string will have a length specified by the integer value of the third argument and will be formed from the number of array elements specified by the second argument. Any padding characters necessary between array elements can be specified by the optional fourth argument. The form of the function is:
justify(array_var,count,width [,pad_char] );
The count of array elements to use cannot exceed 65,536. See also
error number 4420 above.
4440
Bad Function Call - Internal Error.
An internal error has occurred in calling a built-in function. Please
contact the QTAwk author with information on
the circumstances of this error.
4450
Missing ')' for Function Call.
A user-defined function has been called with an argument list and no
right parenthesis, ')', terminating the argument list.
4460
More Arguments For Function Than Defined. Function uuuuuu
More argument are passed to the user defined function named in the
error message than were defined for the function. Check the user function
name or the definition of the function for necessary extra arguments.
4470
Less Arguments For User Function Than Defined. Function
Less arguments are passed to the user defined function named in the
error message than were defined for the function. This error message is
generated ONLY if the built-in variable _arg_chk has a TRUE value. Variables local
to a user-defined function should be defined with the local keyword.
4480
Constant Passed For Function Array Parameter.
A parameter to a user defined function used as an array within the function
cannot be passed a constant value. Only a variable can be passed for
this parameter. If the statement where the variable is indexed as an
array is executed, the variable will be an array upon return from the function.
4490
Internal Error - Misalignment Of Local List ( ).
This is an internal QTAwk error. It should ideally never happen.
If this error message is generated, please contact the QTAwk author with information on the circumstances.
4500
Cannot Assign Array To Array Element.
Arrays can be assigned to variables, however, it is an error it attempt
to assign an array to a single element of another array.
4510
Array Cannot Operate on Scalar.
A scalar may operate on an array, but the reverse is not true.
4520
Assignment Operator needs a Variable on left.
The assignment operator, =, or any
of the op= operators, only operate on
a variable to the left of the operator.
4530
Stack Underflow
Internal stack error. Please contact the QTAwk author with information on the circumstances of this
error message.
4540
String Type Variable Needed For Pattern String - findfile Function
The second argument of the findfile function, if given, must be a string
type expression
4550 to 4572
Error in Executing Child Process.
An error has occurred when QTAwk attempted to execute the desired child process.
Please contact the author with this message, the exact error number displayed
and the circumstances under which the error occurred.
4580 - 4584
Pipe Operator for 'print' function needs string for pipe command.
Pipe Operator for 'printf' function needs string for pipe command.
Pipe Operator for 'getline' function needs string for pipe command.
Pipe operator for the 'print' or 'printf' built-in functions is of the
form:
print ... >|< "command string"
Pipe operator for the 'getline' built-in function is of the form:
"command string" >|< getline()
The "command string" must be a string value.
Interpretation Errors
Internal Error #3.
Internal error. Please contact the QTAwk author
with information on the circumstances of this error message.
5040
Internal Error #2.
Internal error. Please contact the QTAwk author
with information on the circumstances of this error message.
5050
BEGIN/END/NOMATCH/INITIAL/FINAL Patterns or User Function Require An Action.
The predefined patterns:
must have actions associated with them. The brace opening the action
must be on the same line as the predefined pattern.
5060
Exceeded Internal Stack Size on Scan.
The internal stack for containing parsed tokens has been exceeded. Attempt
to simplify the utility in the area where this error occurred.
5070
Underflow Internal Stack on Scan.
This is an internal error. If this error occurs please contact the
QTAwk author with information on the circumstances
of this error message.
5080
Missing ')' For Function Call.
A used defined function argument list must be terminated with a
right parenthesis, ')'. A symbol has been found which cannot be part of
the argument list and is not a right parenthesis. .*:h3 id=5090 res=20001.5090
.*:p.Function Call Without Parenthesized Argument List. .*:p.A user defined
function definition must include an argument list. The .*argument list
may be empty, e.g., "()", if there are no formal arguments.
5100
fprint Function Takes A minimum Of 1 Argument.
The fprint built-in function must have at least the name name of
the output file specified.
5110
printf and sprintf Functions Take A Minimum Of 1 Argument.
These functions must have at least a format string defined.
5120
fprintf Function Needs A Minimum of Two Arguments.
This function needs an output file name and a format string.
5130
Second Argument Of fgetline Has To Be A Variable.
If two arguments are specified for the fgetline built-in function,
the second must be a variable.
5140
Argument Of getline Has To Be A Variable.
If an argument for the getline function is specified, it must be
a variable.
5150
split Function Needs Variable Name As Second Argument.
The second second argument for the split function must be a variable.
The pieces into which the first argument is split will be returned as
array elements of the variable specified.
5160
rotate Function Needs Variable As Argument.
The argument of the rotate function has to be an array variable.
5170
justify Function Needs Variable As First Argument.
The format of the justify built-in function is:
justify(a,n,w)
or
justify(a,n,w,c)
The first argument, 'a', must be an array variable. The first n elements
of the array are concatenated to form a string 'w' characters long. a
single space is used to separate the concatenated elements. If the optional
third argument is specified, it is converted to a character value
and used to separate the elements.
5180
[pu]_sym Function Needs Variable As Second Argument.
The second argument of the built-in funcions pd_sym and ud_sym must be a variable whose value
can be changed to equal the string value of the name variable specified.
5190
Bad Function Call
Internal QTAwk error. Please contact the QTAwk author with information on the circumstances of this
error.
5200
Improper Number Of Arguments, {Function_Name} Function.
The built-in function specified has been called with an improper number
of arguments for the function. Check the user manual for the correct use
of the intended function.
5210
Need Variable On Left Side Of Assignment.
In an assignment statement of the form:
variable = expression;
a variable must be specified on the left side of the assignment operator
to receive the value of the expression on the right side of the operator.
5220
Conditional Expression Error - Missing ':'
The form of the conditional expression is:
test_expression ? expression_1 : expression_2;
test_expression is evaluated, if the result is TRUE (nonzero numeric or
non-null string), expression_1 is evaluated and the value becomes the value
of the conditional expression. If the value of test_expression is FALSE
(zero numeric or null string), expression_2 is evaluated and the value becomes
the value of the conditional expression.
5230
in Operator Needs Array As Right Operand
The form of the in operator is:
expression in array_var
The operand to the right of in, array_var here, has to be a variable.
If the variable is not an array, then the value of the expression is FALSE.
5240
Missing ')' in Expression Grouping.
An expression has been scanned with unbalanced parenthesis. Check for
a missing terminating right parenthesis.
5250
Pre-Increment/Decrement Operators Need Variable.
The increment and decrement operators, ++ and --, only operate on
variables. An instance has been found in which the operator has been used
as a prefix operator on something other than a variable. Check that grouping
has not changed a post-fix operator into a prefix operator.
5260
Undefined Symbol.
A symbol has been found which matches no defined QTAwk syntax.
This usually, but not always, occurs when the terminating semi-colon, ';',
has been left off a statement.
5270
Need Variable for Array Reference
A left bracket for indexing an array has been encountered. However,
the preceding symbol was not a variable. Only variables may be arrays and
indexed.
5280
Missing Index For Array
A left bracket for indexing an array has been encountered. However,
the index expression is missing
5290
Missing ']' Terminating array index.
A left bracket and an index expression for indexing an array have been encountered. However, the right bracket terminating the index expression was not recognized. Check that the array index follows the form:
var[index_expression]
5300
Post-Increment/Decrement Operators Need Variable.
The increment and decrement operators, ++ and --, only operate on
variables. An instance has been found in which the operator has been used
as a post-fix operator on something other than a variable. Check that grouping
has not changed a prefix operator into a post-fix operator.
5310
if Keyword - No Expression To Test.
The proper syntax for the if statement is:
if ( conditional_expression ) statement
The left parenthesis, '(', starting the conditional expression was
not found following the if keyword. Check that the syntax conforms to the
form above.
5320
if Keyword - No Terminating ')' On Test Expression.
The proper syntax for the if statement is:
if ( conditional_expression ) statement
The right parenthesis, ')', terminating the conditional expression was
not found. Check that the syntax to conforms the form above.
5330
while Keyword - No Terminating ')' On Test Expression.
The proper syntax for the while statement is:
while ( conditional_expression ) statement
The right parenthesis, ')', terminating the conditional expression was
not found. Check that the syntax to conforms the form above.
5340
Missing while Part Of do.
The proper syntax for the do statement is:
do statement while ( conditional_expression );
The while keyword was not found following the statement portion. Check
that a possible left brace, '{', starting a compound statement may have
been deleted or for the possible misuse of a keyword as a variable.
5350
Missing '(' On while Part Of do.
The proper syntax for the 'do' statement is:
do statement while ( conditional_expression );
The left parenthesis, '(', starting the conditional expression was
not found following the while keyword. Check that the syntax conforms
to the form above.
5360
Missing ')' On while Part Of do.
The proper syntax for the 'do' statement is:
do statement while ( conditional_expression );
The right parenthesis, ')', terminating the conditional expression was
not found. Check that the syntax to conforms the form above.
5370
Missing ';' Terminating do - while.
The proper syntax for the do statement is:
do statement while ( conditional_expression );
Note the semicolon following the right parenthesis terminating
the conditional expression. The semicolon is necessary here.
5380
Missing Opening Parenthesis On for.
The proper syntax for the for statement is:
for ( initial_expression ; conditional_expression ; loop_expression )
statement
or for ( variable_name in array_name ) statement
The left parenthesis, '(', was not found following the for keyword.
Check that the syntax conforms to the form above.
5390, 5400, 5420
Improper Syntax - for Conditional.
The proper syntax for the for statement is:
for ( initial_expression ; conditional_expression ; loop_expression )
statement
One of the semicolons separating the three expressions or the terminating
right parenthesis was not found. Check that the syntax follows the form
above
5410
in Operator Needs Variable As Left Operand in for Statement.
The proper syntax for the or statement is:
for ( variable_name in array_name ) statement
the symbol following the left parenthesis and preceding the in keyword
must be a valid variable name.
5430
break/continue Keyword Outside Of Loop.
Either of these keywords must be used inside of a while, for
or do loop. In addition, the break
statement may be used inside a switch-case
construct to terminate execution flow. One of the keywords has been found
outside of such a construct. Check for an imbalance of braces, '{}', enclosing
compound statements.
5440
return Statement Outside Of User Function.
The return statement may only be used inside of a user-defined function
to terminate execution of the function and cause execution to return to
the place where the function was called. The return keyword was encountered
outside of the definition of such a function. Check for the use of the keyword
as a variable or for unbalanced braces, '{}', enclosing the statements of
the function.
5450
Exceeded Limits on Number of Local Variable Definitions (1).
QTAwk places a limit of 256 local
variables within any compound statement. An attempt has been made to define
more local variables than this limit allows.
5460
No Variables Defined With local Keyword.
The form of local variable definition with the local keyword follows the form:
local var1, var2 = optional_expression;
The local keyword was encountered followed immediately by a semicolon.
Check that the syntax follows the above form.
5470
switch Keyword - No Terminating ')' On Expression.
The form of the switch construct is:
switch ( switch_expression ) statement
The right parenthesis, ')', terminating the switch_expression was
not found.
5480
case/default Statement Without Switch Statement.
The case keyword is used within the switch
statement to specify case expressions to which execution should transfer
after matching the switch expression. A case keyword was found outside of
the switch statement. Check for the use of the keyword as a variable or
for unbalanced braces enclosing a compound switch statement.
5490
Multiple 'default' Statements in switch.
The 'default' keyword is used within a switch statement to specify
a transfer point at execution should proceed when the switch_expression fails
to match any case_expression. Only one 'default' transfer point is allowed
per switch statement. Check for possible unbalanced braces, '{}', enclosing
a compound statement in previous 'case' statements.
5500
Missing ':' Following Expression On Case Label.
The form of the case statement is:
case case_expression:
A colon, ':', must terminate the case expression. QTAwk
did not find the terminating colon.
5510
Need Variable For delete Reference
The form of the delete statement is:
delete variable_name;
or
delete (variable_name);
or
delete variable_name[index];
or
delete (variable_name[index]);
where variable must be a global or local variable.
5520
deletea Statement Variable Cannot Be Indexed.
The form of the deletea statement is:
deletea variable_name;
or
deletea (variable_name);
where variable must be a global or local variable and cannot be indexed.
5530
Need Variable For deletea Reference
The form of the deletea statement is:
deletea variable_name;
or
deletea (variable_name);
where variable must be a global or local variable.
5540
No ';' Terminating Statement.
All statements in QTAwk are terminated by a semicolon. The
terminating semicolon was not found by QTAwk.
5550
Internal Compilation Error - Action Strings.
This is an QTAwk internal error that should never happen.
If this error message in encountered, please contact the QTAwk author with information on the circumstances of this
error.
5560
Error On Single Line Action. No Termination.
In parsing/compiling an action entered from the command line or
by executing the execute built-in function,
the end of the line was reached without reaching the end of the action expression(s).
Typically caused by a missing right bracket, '}' (or unbalanced brackets
- more left brackets than right brackets).
5570
Too Many User Functions Defined.
QTAwk currently has a limit of 256 user defined functions. The
current utility has attempted to define more than that limit. Please contact
the QTAwk author with information on the circumstances
of this error message.
5580
Exceeded Limits on Number of Local Variable Definitions (2).
QTAwk currently has a limit of 256 local variables defined within any single
compound statement. The current utility has attempted to define more than
that limit. Please contact the QTAwk author
with information on the circumstances of this error message.
5590
Expecting Function Name To Follow function Keyword In Pattern.
The function keyword has been encountered in a pattern without a function
name immediately following. This syntax error may be corrected by inserting
the missing name or by removing the function keyword from the pattern.
5600
Multi-Defined Function Name.
The name supplied for a user defined function has been used previously.
The current usage attempts to redefine the name. Change either the first
use of the name or the present.
5610
Unexpected Symbol - Function Argument List Definition.
A user defined function has been encountered with the accompanying
list defining the passed argument names. The form of the list is a variable
name followed by 1) a comma and more names, 2) an ellipses, '...' followed
by a right parenthesis, or 3) a right parenthesis ending the list. A symbol
other than a comma or right parenthesis has been found following a variable
name.
5620
Expecting ')' To Terminate Function Parameter List.
A user defined function has been encountered with the accompanying
list defining the passed argument names. The form of the list is a variable
name followed by 1) a comma and more names, 2) an ellipses, '...' followed
by a right parenthesis, or 3) a right parenthesis ending the list. A
symbol has been found other than the right parenthesis following the ellipses.
5630
Unexpected Symbol - Function Argument List Definition.
A user defined function has been encountered with the accompanying
list defining the passed argument names. The form of the list is a variable
name followed by 1) a comma and more names, 2) an ellipses, '...' followed
by a right parenthesis, or 3) a right parenthesis ending the list. A symbol
other than a comma or right parenthesis has been found following a variable
name.
5640
Expecting Parenthesized Argument Definition List For Function.
A user defined function has the following form:
function function_name ( argument_list )
The left parenthesis of the argument list was not found.
5650
Improper Syntax - Improper Ending For Pattern
A pattern expression must be ended by a symbol other than above has been
encountered.
5670
Internal Parse Error
Internal parser error. Please contact the QTAwk author with information on the circumstances of this
error message.
5680
Local Variable With Reserved Name.
An attempt has been made to define a local
variable in either a user defined function argument list or with the local
keyword, with a name equal to a reserved word.
5690
Improper Use of Keyword.
A pattern keyword has been encountered in an action statement.
5700
User Function Variable Argument Keyword Outside Of User Function.
The two predefined local variables vargc
and vargv can only be used within user
defined functions which have been defined with a variable length argument
list using the ellipsis, '...'. One of these variables has been encountered
outside of a user defined function.
5710
Variable Argument Keyword In User Function Defined Without Variable Number Of Arguments.
The two predefined local variables vargc
and vargv can only be used within user
defined functions which have been defined with a variable length argument
list using the ellipsis, '...'. One of these variables has been encountered
inside of a user defined function which was not defined with a variable
length argument list.
5720
Internal Error - Variable Argument List Variable.
The two predefined local variables vargc
and vargv can only be used within user
defined functions which have been defined with a variable length argument
list using the ellipsis, '...'. One of these variables has been previously
defined as a local variable within the current compound statement.
5730
Internal Error - Variable Argument List Variable.
The two predefined local variables vargc
and vargv can only be used within user
defined functions which have been defined with a variable length argument
list using the ellipsis, '...'. One of these variables has been previously
defined as a global variable.
5740
Internal Parse Error
Internal parser error. Please contact the QTAwk author with information on the circumstances of this
error message.
5742, 5744
Constant Exceeds Numerical Limits: xxxxxxxxxxxx
The constant shown (indicated by 'xxxxxxxxxxxx' in error message), exceeds
the numerical limits for this implementation of QTAwk. Reduce the
size of the numeric
5750
Internal Parse Error
Internal parser error. Please contact the QTAwk author with information on the circumstances of this
error message.
5760
Empty Regular Expression.
A regular expression must have some characters between the beginning and
ending slashes. A regular expression has been encountered with none.
5770
Regular Expression - No Terminating /.
A regular expression constant must be contained on one line and be terminated
by a slash. A regular expression has been been found with a no terminating
slash before encountering a new line.
5780
Internal Parse Error
Internal parser error. Please contact the QTAwk author with information on the circumstances of this
error message.
5785
Escape to Continue Quoted Line Not Allowed in Pattern.
Using a escape character, '\', at the end of a line and within a quoted
string to continue the string on the next line, is not allowed within
a pattern. Patterns must be contained on a single line.
5788
Unexpected End-of-File While Scanning Utility.
QTAwk encountered the End-Of-File while reading and interpreting
a utility and before the expected end of the utility.
5790
String Constant - No Terminating ".
A string constant must be contained on one line and be terminated
by a double quote. A string constant has been been found with a no
terminating double quote before encountering a new line.
5800
Internal Parse Error
Internal parser error. Please contact the QTAwk author with information on the circumstances of this
error message.
5810
Character Constant - No Terminating '.
A character constant must be contained on one line and be terminated
by a single quote. A character constant has been been found with a no
terminating single quote before encountering a new line.
5820
Character Constant Longer Than One Character
A character constant is a single character bounded by single quotes
as in 'A'. Escape sequences may also be used for specifying the character
for a character constant, e.g., '\f' or '\x012' or '\022' are three ways
to specify a single form feed character. This error reports that an attempt
has been made to use single quotes to bound more than a single character.
5830
Lexical Error - Illegal '.'
Periods are used only in floating point numerics, e.g., 0.88 or .33, or in user defined function definitions to indicate a variable number of arguments, e.g.:
function max(...) {
A period has been found which does not match either of these uses.
5840
Lexical Error
A character has been read which does not fit any syntax for a valid
utility.
5850
Exceeded Max. Limits On Number Of Variables.
A maximum of 256 global variables may be defined in any single
QTAwk utility.
5860
Need 'print' or 'printf' Built-in Function on Left Hand Side of Pipe, '>|<'.
The pipeline operator, '>|<', needs either the 'print' or 'printf'
built-in functions on the left hand side of the operator or the 'getline'
built-in function on the right hand side. The operator was detected with
neither function.
5870
Need 'getline' Built-in Function on Right Hand Side of Pipe, '>|<'.
The pipeline operator, '>|<', needs either the 'print' or 'printf'
built-in functions on the left hand side of the operator or the 'getline'
built-in function on the right hand side. The operator was detected with
neither function.
5880
Need string value on Left Hand Side of Pipe, '>|<'.
The pipeline operator, '>|<', was detected with the 'getline' built-in
function on the right hand side of the operator. In this case the command
string must be on the left hand side of the operator. An instance was found
by the QTAwk interpreter without an acceptable string value on the
left hand side.
5890
Need string value on Right Hand Side of Pipe, '>|<'.
The pipeline operator, '>|<', was detected with the 'print' or 'printf'
built-in function on the right hand side of the operator. In this case the
command string must be on the right hand side of the operator. An instance
was found by the QTAwk interpreter without an acceptable string value
on the right hand side.
Memory Errors
Out of Memory (nThe QTAwk utility has used all available memory
and attempted to exceed that limit. It is recommended that the utility
be made shorter, or split into multiple utilities run separately.
6010
Insufficient Memory.
The QTAwk utility has used all available memory and attempted to
exceed that limit. It is recommended that the utility be made shorter,
or split into multiple utilities run separately.
6030
Action Too Long
An action has been defined which exceeds the limits set for the internal
length. The maximum length for the internal form of any action is 409,600
characters.
6040, 6050, 6060
Out of Memory
The QTAwk utility has used all available memory and attempted to
exceed that limit. It is recommended that the utility be made shorter,
or split into multiple utilities run separately.
6070
Stack Overflow
QTAwk maintains an internal stack for intermediate results.
The current utility has generated too many intermediate results for
this stack. Simplify expressions.
6080
Insufficient Memory to Create Pipe to Child Process.
In creating the data pipe to or from a child process, there was insufficient
memory to create the pip.
Regular Expression Errors
Unbalanced Parenthesis in Regular Expression.
Sequence NumberParenthesis in a regular expression are unbalanced, i.e., there are more opening left parenthesis, '(', than closing right parenthesis, ')'.