### LOCALDEF Messages

The messages issued by the LOCALDEF utility have the following format.

    filename.ext(line:col): ss EDCnnnn: text

filename.ext
  The file name (with extension) where the error occurred
line
  The line where the error occurred
col
  The column where the error occurred
ss
  The error severity: warning, error, or severe error
nnnn
  Error message number
text
  Message text, including substitution variables

You can specify the /W1 option to stop LOCALDEF from issuing warnings. By default, LOCALDEF issues warnings, and changes its return code accordingly. You can specify the /c option to create the locale even if there are errors. By default, LOCALDEF stops the locale build process if there is an error.

EDC5400-EDC5403
  Cannot find the message file %s
  Cannot find the message number %d
  Cannot access the message file %s
  The message file, %s, format is not valid
  Severity: Severe
  Explanation: These messages are issued if a warning or error is to be printed but the message file cannot be found or accessed. There are four messages that could be generated.
  User Response: If one of these messages is generated, ensure that:
    1. DPATH variable is set in your CONFIG.SYS file
    2. Message files are in a directory in the DPATH
    3. DPATH allows read access to the directories specified
    4. File system is functioning properly
    5. Message files are not corrupted. Reinstall the message files if any have been corrupted. Reboot the system.
EDC5404
  The symbolic name '%s' is not the correct type
  Severity: Severe
  Explanation: This message is issued in the locale definition file when using a symbolic name that is not the expected type. The most common time this error occurs is when the LC_CTYPE keywords are used as character references in any locale definition file category. The locale is not created.
  User Response: Use a symbolic name instead of a character reference.
EDC5405
  Could not open file %s for read
  Severity: Severe
  Explanation: This message is issued if the open for read fails for any file required by the LOCALDEF Utility. The file name passed to fopen() is included in the message. The locale is not created.
  User Response: Verify the filename is correct and the file exists.
EDC5406
  Internal error
  Severity: Severe
  Explanation: An internal error has occurred in the LOCALDEF Utility. The locale is not created. User Response: Examine the locale definition and charmap files for possible errors.
EDC5407
  Syntax Error: expected %d arguments and received %d arguments
  Severity: Severe
  Explanation: This message is issued in the locale definition file when a keyword is expecting a fixed number of arguments and not enough arguments are supplied. The locale is not created. User Response: Add the missing arguments to the keyword in the locale definition file.
EDC5408
  Illegal limit in range specification
  Severity: Severe
  Explanation: An error has occurred in a range in the LC_CTYPE category of the locale definition file. The locale is not created.
  User Response: Examine the locale definition file for possible errors.
EDC5409
  Memory allocation failure
  Severity: Severe
  Explanation: The LOCALDEF utility is unable to allocate memory. The locale is not created. User Response: Remove some applications from memory and rerun the LOCALDEF utility.
EDC5410
  Could not open file %s for write
  Severity: Severe
  Explanation: This message is issued if the open for write fails when the LOCALDEF Utility attempts to generate the C program. The file name passed to fopen() is included in the message. The locale is not created.
  User Response: Make sure the drive specified has enough disk space available and is in write mode.
EDC5411
  The '%s' symbol is longer than <mb_cur_max>
  Severity: Severe
  Explanation: The length of value assigned to the specified symbol in the charmap file must not be as big as the value assigned to <mb_cur_max>. <mb_cur_max> defaults to 1 and can only have the values 1 or 2. The locale is not created.
  User Response: Increase the size of <mb_cur_max> or remove the extra value assigned to the symbol specified.
EDC5412
  The '%s' symbolic name is undefined and has been ignored
  Severity: Warning
  Explanation: The specified symbolic name used in the locale definition file is not defined in the charmap file. When a symbolic name that is not defined is used in the LC_CTYPE or LC_COLLATE categories, the character is ignored, and the warning issued.
  User Response: Define the specified symbol name in the charmap file.
EDC5413
  The '%s' symbolic name is undefined
  Severity: Severe
  Explanation: The specified symbolic name used in the locale definition file is not defined in the charmap file. When a symbolic name that is not defined is used in categories other than LC_CTYPE or LC_COLLATE, an error message is issued, and the locale is not created.
  User Response: Define the specified symbol name in the charmap file.
EDC5414
  The start of the range, %s, must be numerically less than the end of the range, %s
  Severity: Severe
  Explanation: In the collation section of the locale definition file, the start range codepoint specified must be less than the end range codepoint specified. These codepoints are assigned values in the charmap file where the codepoints can be assigned in any order. The locale is not created.
  User Response: Change the collation range codepoints in the locale definition file so that the start of the range is less than the end of the range.
EDC5415
  The symbol range containing %s and %s is incorrectly formatted
  Severity: Severe
  Explanation: The symbolic names in the charmap file should consist of zero or more nonnumeric characters, followed by an integer formed by one or more decimal digits. The characters preceding the integer should be identical in the two symbolic names, and the integer formed by the digits in the second name should be equal to or greater than the integer formed by the digits in the first name. This is interpreted as a series of symbolic names formed from the common part and each of the integers between the first and second integer, inclusive. The locale is not created. In the following example, the first line is valid as both names have the same prefix, followed by four digits, whereas the second example has a different prefix for the first and second name, and is invalid.

  <ab0101>...<ab0120> \x42\xc1
  <abc0101>...<ab0120> \x42\xc1
  User Response: Check the specified symbolic names to ensure compliance to the above rules.

EDC5416
  Illegal character reference or escape sequence in %s
  Severity: Severe
  Explanation: A character reference or escape sequence has been defined that is not legal. The locale is not created.
  User Response: Make the character reference or escape sequence legal.
EDC5417
  The symbolic name '%s', has already been specified
  Severity: Error
  Explanation: The specified symbolic name in the charmap file has already been specified. A symbolic name should only be defined once.
  User Response: Remove the duplicate symbolic name from the charmap file.
EDC5418
  There are characters in the codeset which are unspecified in the collation order
  Severity: Warning
  Explanation: There are characters defined in the charmap file that are not used in the collation category of the locale definition file. The locale is still created. The characters are added at the end of the collation sequence.
  User Response: If required, add the missing characters from the charmap file to the collation category of the locale definition file.
EDC5419
  Illegal decimal constant %s
  Severity: Error
  Explanation: The decimal constant of type '\dnnn' specified in the charmap file is greater than decimal 255.
  User Response: Change the decimal constant in the charmap file to a value less than or equal to 255.
EDC5420
  Illegal octal constant %s
  Severity: Error
  Explanation: The octal constant of type '\nnn' specified in the charmap file or is greater than octal 377.
  User Response: Change the octal constant in the charmap file to a value less than or equal to octal 377.
EDC5421
  Illegal hexadecimal constant %s
  Severity: Error
  Explanation: The hexadecimal constant of type '\xnn' specified in the charmap file is greater than hexadecimal FF.
  User Response: Change the hexadecimal constant in the charmap file to a value less than or equal to hexadecimal FF.
EDC5422
  Missing closing quote in string %s
  Severity: Error
  Explanation: The string specified has a opening double quote but no closing double quote. The closing quote will be added.
  User Response: Add the closing double quote after the string.
EDC5423
  Illegal character %c
  Severity: Error
  Explanation: An illegal character has been found in the charmap or locale definition file.
  User Response: Remove the character.
EDC5424
  The character for %s statement is missing
  Severity: Error
  Explanation: When defining the escape character or comment character in the charmap or locale definition file, a character was not supplied. The statement is ignored and the escape character or comment character is not changed.
  User Response: Insert a character to be defined as the escape character or comment character in the charmap or locale definition file.
EDC5425
  %c is not a POSIX Portable Character
  Severity: Error
  Explanation: When defining escape_char or comment_char in the charmap or locale definition file, the character was less than space. The statement is ignored and the escape character or comment character is not changed.
  User Response: Define the escape_char or comment_char in the charmap or locale definition file with a character greater than space.
EDC5426
  The character symbol '%s' is missing the closing '>'
  Severity: Error
  Explanation: The character symbol specified has a less than sign at the beginning of the symbol but no closing greater than sign. The symbol is accepted.
  User Response: Add the greater than sign after the symbol.
EDC5427
  Unrecognized keyword, %s
  Severity: Error
  Explanation: When a dot is not used in a string or as part as of an ellipses ('...'), the keyword is unrecognized, the statement is ignored.
  User Response: Remove the dot which is part of the unrecognized keyword or add the missing dots to make up ellipses ('...').
EDC5428
  The encoding specified for the %s character is unsupported
  Severity: Severe
  Explanation: The multibyte character is not valid, contains a shift out without a corresponding shift in or a shift in character without a corresponding shift out. The locale is not created.
  User Response: If the string contains unmatched shift in or shift out characters, remove them.
EDC5429
  The character, %s, has already been assigned a weight
  Severity: Error
  Explanation: The specified character or symbolic name in the collation category of the locale definition file, has already been defined.
  User Response: Remove the duplicate character or symbolic name for the collation category.
EDC5430
  A character in range %s...%s already has a collation weight
  Severity: Error
  Explanation: A character or symbolic name in the specified range in the collation category of the locale definition file, has already been defined in the collation category.
  User Response: Remove the duplicate character or adjust the range so as not to cover duplicate characters.
EDC5431
  No toupper section defined
  Severity: Warning
  Explanation: The toupper keyword in the LC_CTYPE category in the locale definition file was not specified. The lowercase character 'a' to 'z' are mapped to the characters 'A' to 'Z'. The locale is still created.
  User Response: Add the lowercase characters 'a' to 'z' to the toupper section of the LC_CTYPE category in the locale definition file.
EDC5432
  The use of the "..." keyword assumes that the codeset is contiguous between the two range endpoints specified
  Severity: Warning
  Explanation: This warning is always produced when ellipses ('...') is used in defining collation sequences in the locale definition file because the locale may not be portable whenever ellipses is used. The locale is still created.
  User Response: Instead of using ellipses, insert all the symbol names between the two range endpoints.
EDC5433
  The symbolic name, %s, referenced has not yet been specified in the collation order
  Severity: Error
  Explanation: Collation weights in the locale definition file must use symbolic names that have already been specified in the collation order.
  User Response: Remove the reference to the symbolic name from the collation weights that have not yet been specified in the collation order.
EDC5434
  Specific collation weight assignment is not valid when no sort keywords have been specified Severity: Severe
  Explanation: The number of sort rules, such as forward, backward, no-substitute or position, specified after the order_start keyword must be greater than or equal to the number of weights assigned to any one character in the collation category of the locale definition file. When no sort rules are specified, one forward sort rule is assumed. The locale is not created.
  User Response: Add additional sort rules to the order_start keyword.
EDC5435
  The <mb_cur_min> keyword must be defined as 1, it has been defined as %d. Value is ignored Severity: Warning
  Explanation: The <mb_cur_min> keyword in the charmap file can only be set to 1.
  User Response: Change the value of the <mb_cur_min> keyword in the charmap file to 1.
EDC5436
  The <code_set_name> must contain only characters from the POSIX portable character set, %s is not valid
  Severity: Error
  Explanation: The <code_set_name> in the charmap file must only use graph characters. It must contain only characters from the portable character set. The character %c is not valid.
  User Response: Remove the character from the <code_set_name> in the charmap file that is not in the portable character set.
EDC5437
  The sort rules forward and backward are mutually exclusive
  Severity: Error
  Explanation: Each sort rules of the order_start keyword of the collation category in the locale definition file can consist of one or more sort rules separated by commas. The sort rules forward and backward, cannot be used at the same time.
  User Response: Specify only forward or backward but not both.
EDC5438
  Received too many arguments, expected %d
  Severity: Error
  Explanation: This message is issued in the locale definition file when a keyword is expecting a fixed number of arguments and too many arguments are supplied.
  User Response: Remove the unnecessary argument in the locale definition file.
EDC5439
  The %s category has already been defined
  Severity: Error
  Explanation: The specified category in the locale definition file should only be defined once. User Response: Remove the specified duplicate category.
EDC5440
  The %s category is empty
  Severity: Warning
  Explanation: The specified category in the locale definition file does not contain any keywords. The locale will still be created.
  User Response: Remove the empty category or add keywords to the specified category.
EDC5441
  Unrecognized category %s is not processed by LOCALDEF
  Severity: Error
  Explanation: User defined categories in the locale definition file are not supported. That is, categories that are not LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC, LC_TIME, LC_MESSAGES, LC_SYNTAX or LC_TOD are not processed by the LOCALDEF utility.
  User Response: Remove the unrecognized category from the locale definition file.
EDC5442
  The POSIX defined categories must appear before any unrecognized categories
  Severity: Warning
  Explanation: User defined categories in the locale definition file must appear after the POSIX defined categories LC_CTYPE, LC_COLLATE, LC_MONETARY, LC_NUMERIC, LC_TIME, LC_MESSAGES, LC_SYNTAX and LC_TOD. The locale will still be created.
  User Response: Move the unrecognized category to the end of locale definition file.
EDC5443
  The file code for the digit %s is not one greater than the file code for %s
  Severity: Error
  Explanation: The values assigned to the digit symbolic names <zero> to <nine> in the charmap file must be in sequence and be contiguous.
  User Response: Change the value assigned to the specified digit symbolic name in the charmap file so that it is one greater than the value assigned to the preceding digit symbolic name.
EDC5444
  The process code for the digit %s is not one greater than the process code for %s
  Severity: Error
  Explanation: The wide character values assigned to the digit symbolic names <zero> to <nine> in the charmap file must be in sequence and be contiguous.
  User Response: Change the wide character value assigned to the specified digit symbolic name in the charmap file so that it is one greater than the wide character value assigned to the preceding digit symbolic name.
EDC5445
  The symbol %s has already been defined
  Severity: Error
  Explanation: The collation symbol must be a symbolic name, enclosed between angle brackets ('<' and '>'), and should not duplicate any symbolic name in the charmap file or any other name defined in the collation definition. The definition as a collating-symbol, is ignored.
  User Response: Use another symbolic name for the collating symbol.
EDC5446
  Locale does not conform to POSIX specifications for the LC_CTYPE %s keyword
  Severity: Warning
  Explanation: The specified keyword in the LC_CTYPE category in the locale definition contains characters that conflict with the POSIX definition of the category. The locale will still be created. This may be caused by the following:
  - The upper keyword contains characters from the cntrl, digit, punct or space keywords.
  - The lower keyword contains characters from the cntrl, digit, punct or space keywords.
  - The alpha keyword contains characters from the cntrl, digit, punct or space keywords.
  - The space keyword contains characters from the digit, upper, lower, alpha or xdigit keywords.
  - The cntrl keyword contains characters from the digit, upper, lower, alpha, graph, punct, print or xdigit keywords.
  - The punct keyword contains characters from the digit, upper, lower, alpha, cntrl, space or xdigit keywords.
  - The graph keyword contains characters from the cntrl keyword.
  - The print keyword contains characters from the cntrl keyword.

  User Response: Remove the character from the specified keyword that conflicts with characters from one of the other keywords.

EDC5447
  Locale does not specify the minimum required for the LC_CTYPE %s keyword. Setting to POSIX defined defaults
  Severity: Warning
  Explanation: The specified keyword in the LC_CTYPE category in the locale definition file does not contain minimum characters required the keyword. The locale will still be created. The minimum requirements for the keywords are as follows:
  - The upper keyword does not contain the required characters 'A' to 'Z'.
  - The lower keyword does not contain the required characters 'a' to 'z'.
  - The space keyword does not contain the required characters space, form feed, newline, carriage return, horizontal tab and vertical tab.

  User Response: Specify the minimum requirements for the specified keyword.

EDC5448
  Locale does not specify only 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9 for LC_CTYPE digit keyword
  Severity: Warning
  Explanation: The digit keyword in the LC_CTYPE category in the locale definition file can only contain the characters required, '0' to '9'. The locale will still be created.
  User Response: Remove the character outside the '0' to '9' range in the digit keyword.
EDC5449
  Locale does not specify only 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a through f, and A through F for LC_CTYPE xdigit keyword
  Severity: Warning
  Explanation: The xdigit keyword in the LC_CTYPE category in the locale definition file can only contain the characters required, '0' to '9' and 'A' to 'F' or 'a' to 'f'. The locale will still be created. User Response: Remove the character outside the range '0' to '9' and 'A' to 'F' or 'a' to 'f' to the xdigit keyword.
EDC5450
  The number of operands to LC_COLLATE order exceeds COLL_WEIGHTS_MAX
  Severity: Error
  Explanation: The number of sort rules, such as forward, backward, no-substitute or position, specified after the order_start keyword must not exceed COLL_WEIGHTS_MAX in the collation category of the locale definition file.
  User Response: Reduce the number of sort rules to the order_start keyword.
EDC5451
  Both %s and %s symbols must be characters and not collation symbols or elements
  Severity: Error
  Explanation: When defining ranges using ellipses ('...') in the collation category of the locale definition file, the endpoints of the range must be characters or symbolic names defined in the charmap file. They should not be collating-symbol operands or collating-element operands. User Response: Use different characters for the range endpoints.
EDC5452
  usage: LOCALDEF [/c] [/W[1][2]] [/f charmap] [/i locsrc] locname
  Severity: Severe
  Explanation: One of the options specified was not valid or a valid option was specified with an invalid value.
  User Response: Rerun the LOCALDEF Utility with the correct option.
EDC5453
  Symbol name %s is undefined and is required in the Charmap file
  Severity: Warning
  Explanation: The symbolic name specified is not defined in the charmap file and must be specified. The locale is still produced.
  User Response: Define the missing symbol name in the charmap file.
EDC5454
  Keyword copy cannot be nested
  Severity: Error
  Explanation: A locale category specifies the copy keyword, and the locale from which the category is being copied from also includes copy keyword for the same category.
  User Response: Change the name of the existing locale to be copied to the name specified in existing locale copy keyword.
EDC5455
  copy keyword category %s not found
  Severity: Error
  Explanation: The specified category cannot be found in the locale definition file that was included using the copy keyword. The category is not copied.
  User Response: Change the name of the existing locale to be copied or add the specified category to the locale definition file.
EDC5456
  LC_SYNTAX %s character can only be a punctuation character
  Severity: Error
  Explanation: The specified character defined in the LC_SYNTAX category of the locale definition file, must be a punctuation character. The character is ignored.
  User Response: Only use punctuation characters as LC_SYNTAX characters.
EDC5457
  LC_SYNTAX %s character can only have a length of 1. Ignoring additional characters
  Severity: Warning
  Explanation: The specified character defined in the LC_SYNTAX category of the locale definition file contained more than one character, or specified a multibyte character. The LC_SYNTAX characters must only be single-byte characters.
  User Response: Only use single-byte characters as LC_SYNTAX characters.
EDC5458
  LC_SYNTAX %s character could not be found in Charmap file. Assigned code page IBM-850 symbol %s
  Severity: Warning
  Explanation: The LC_SYNTAX category was omitted, or the character was omitted from the LC_SYNTAX category, and the LOCALDEF utility attempted to assign the default value. The specified symbolic name was not found in the Charmap file, and the character has been assigned the code point value from the IBM-850 code page.
  User Response: Specify the character in the LC_SYNTAX category, or change the charmap file to include the specified symbolic name.
EDC5459
  Duplicate characters for %s and %s found in LC_SYNTAX
  Severity: Error
  Explanation: The specified characters from the LC_SYNTAX category have the same code points assigned.
  User Response: Change the characters to specify different code points for each of the LC_SYNTAX characters.
EDC5460
  The %s keyword is not supported and is ignored
  Severity: Warning
  Explanation: The specified keyword is not defined in the POSIX standard and is ignored.
  User Response: Remove the specified keyword.
EDC5461
  The <mb_cur_max > keyword must be defined as 1 or 2. It has been defined as %d. Value is ignored
  Severity: Warning
  Explanation: The <mb_cur_max> keyword can have the value of 1 for single-byte characters only, or 2 to support multi-byte characters. Values of other than 1 or 2 are ignored.
  User Response: Specify <mb_cur_max> as either 1 or 2.
EDC5462
  The maximum number of alternate strings for alt_digits is exceeded
  Severity: Error
  Explanation: Up to 100 alternate string can be specified for the alt_digits keyword for the values from zero to 99.
  User Response: Remove the extra alternate strings.
EDC5463
  The grouping string '%s' is invalid
  Severity: Error
  Explanation: The string specified for the LC_NUMERIC grouping keyword or LC_MONETARY mon_grouping keyword is not in the correct format. The string should consist of numbers in the range -1 and 254 separated by semicolons.
  User Response: Correct the grouping or mon_grouping string to be in the correct format.
EDC5464
  The grouping string '%s' is invalid and has been truncated to '%s'
  Severity: Warning
  Explanation: The string specified for the LC_NUMERIC grouping keyword or LC_MONETARY mon_grouping keyword is not in the correct format. The string should consist of numbers in the range -1 and 254 separated by semicolons, with no other numbers or semicolons following the -1. The characters following the -1 are ignored.
  User Response: Remove the characters from the grouping or mon_grouping string following the -1.
EDC5465
  The value %d for %s is invalid
  Severity: Error
  Explanation: The value %d specified is not a value for the specified keyword. For example, the day is not valid for the specified month, or the month is not in the range from 1 to 12.
  User Response: Correct the value for the specified keyword to be within the correct range for that keyword.
EDC5466
  %s specified with no %s
  Severity: Error
  Explanation: The keyword specified can only be specified if the other keyword is also specified. Either both or neither should be specified.
  User Response: Either remove the first keyword specified, or add the other required keyword.
EDC5467
  daylight_name must be specified if Daylight Saving Time information is to be used by the mktime and localtime functions
  Severity: Warning
  Explanation: Keywords have been specified in the LC_TOD category, but the 'daylight_time' keyword has not been specified. The other keywords will be ignored.
  User Response: Remove the other keywords from the LC_TOD category, or add the 'daylight_time' keyword.
EDC5468
  One-to-many mappings cannot be specified against a collating-symbol, collating-element or the UNDEFINED symbol
  Severity: Error
  Explanation: A one-to-many mapping has been specified in the LC_COLLATE category against a collating-symbol, collating-element or the UNDEFINED symbol. For example, all of the following would cause this error message:

  collating-symbol <HIGH>
  collating-element <ch> from "<c><h>"
  <HIGH> "<A>"
  <ch> "<B>"
  UNDEFINED "<C>"
  User Response: Remove the one-to-many mapping from the collating-symbol, collating-element or the UNDEFINED symbol.

EDC5469
  Temporary file %s could not be deleted
  Severity: Warning
  Explanation: Temporary files are created by the localdef utility for the generated C program, DLL definition file, object file and map file. These files are then deleted after the are used by the compiler and linker. This message indicates the temporary file could not be removed when localdef is cleaning up the temporary files.
  User Response: Delete the temporary file manually.
EDC5470
  %s failed with rc = %d
  Severity: Severe
  Explanation: The specified program, compiler or linker, has failed with the specified return code. The messages associated with compiler or linker will have been printed before this message. User Response: Examine the explanation of the compiler and linker error messages in the relevant Compiler and Linker manuals.
EDC5471
  Cannot create a unique file name for %s file
  Severity: Severe
  Explanation: Temporary files are created by the localdef utility for the generated C program, DLL definition file, object file and map file. These files are then deleted after the are used by the compiler and linker. This message indicates a unique temporary file could not be created because either too many file already exist the directory defined by the TMP environment variable or insufficient memory was available to create the temporary name.
  User Response: Check the contents of the directory defined by the TMP environment variable or if it does not exist then check the current directory.
EDC5472
  Syntax error
  Severity: Error
  Explanation: A syntax error has been found in the charmap or local definition file name supplied, on the line number supplied and at the character position supplied. The line number and character position in the message indicates the position within the file when the error was detected. This may be after the line containing the error.
  User Response: Change the line in the charmap or locale definition file to conform to the POSIX standard format.

LOCALDEF Utility
LOCALDEF Syntax
LOCALDEF Return Codes
Portable Character Set