mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-23 18:43:03 +01:00
Fixed builtin lookups for error messages and SQLCODEs.
This commit is contained in:
parent
37558003db
commit
ecbca824f3
@ -262,9 +262,6 @@ static const SCHAR *ftn_boiler_plate_decls[] = {
|
|||||||
"",
|
"",
|
||||||
};
|
};
|
||||||
|
|
||||||
static const SCHAR sql_code_boiler_plate[] =
|
|
||||||
"static const SSHORT gds__sql_code [] = {";
|
|
||||||
|
|
||||||
|
|
||||||
int CLIB_ROUTINE main( int argc, char *argv[])
|
int CLIB_ROUTINE main( int argc, char *argv[])
|
||||||
{
|
{
|
||||||
@ -764,8 +761,10 @@ static void build_other_headers(void)
|
|||||||
|
|
||||||
/* Start the MSGS file */
|
/* Start the MSGS file */
|
||||||
|
|
||||||
fprintf(msgs, "static const SCHAR * const messages[] = {\n");
|
fprintf(msgs, "static const struct {\n");
|
||||||
fprintf(msgs, "\t\"unassigned code\",\n");
|
fprintf(msgs, "\tSLONG code_number;\n");
|
||||||
|
fprintf(msgs, "\tconst SCHAR *code_text;\n");
|
||||||
|
fprintf(msgs, "} messages[] = {\n");
|
||||||
|
|
||||||
/* Fetch error codes from SYSTEM_ERRORS relation. Write them
|
/* Fetch error codes from SYSTEM_ERRORS relation. Write them
|
||||||
out to the pascal, fortran, and rdb header files */
|
out to the pascal, fortran, and rdb header files */
|
||||||
@ -810,12 +809,10 @@ static void build_other_headers(void)
|
|||||||
q++;
|
q++;
|
||||||
*q = 0;
|
*q = 0;
|
||||||
|
|
||||||
// CVC: Restore this line if something strange happen.
|
fprintf(code_text, "\t{\"%s\", %lu},\n",
|
||||||
//fprintf(msgs, "\t\"%s\",\t\t/*%d, %-32.32s*/\n",
|
S.GDS_SYMBOL, new_code);
|
||||||
fprintf(msgs, "\t\"%s\",\t\t/* %d, %s */\n",
|
fprintf(msgs, "\t{%lu, \"%s\"},\t\t/* %d, %s */\n",
|
||||||
text, code, S.GDS_SYMBOL);
|
new_code, text, code, S.GDS_SYMBOL);
|
||||||
|
|
||||||
fprintf(code_text, "\t{\"%s\", %lu},\n", S.GDS_SYMBOL, new_code);
|
|
||||||
++code;
|
++code;
|
||||||
|
|
||||||
END_FOR;
|
END_FOR;
|
||||||
@ -826,10 +823,9 @@ static void build_other_headers(void)
|
|||||||
fprintf(code_text, "\t{NULL, 0}\n");
|
fprintf(code_text, "\t{NULL, 0}\n");
|
||||||
fprintf(code_text, "};\n");
|
fprintf(code_text, "};\n");
|
||||||
/* end the msgs.h */
|
/* end the msgs.h */
|
||||||
fprintf(msgs, "\t0\t\t\t\t\t\t/* Null entry to terminate list */\n");
|
fprintf(msgs, "\t{0, NULL}\n");
|
||||||
fprintf(msgs, "};\n");
|
fprintf(msgs, "};\n");
|
||||||
|
|
||||||
|
|
||||||
check_close(pas_codes, CODES_PAS, "tmpcode4", "w", genFtnPasDirectory);
|
check_close(pas_codes, CODES_PAS, "tmpcode4", "w", genFtnPasDirectory);
|
||||||
check_close(ftn_codes, CODES_FTN, "tmpcode5", "w", genFtnPasDirectory);
|
check_close(ftn_codes, CODES_FTN, "tmpcode5", "w", genFtnPasDirectory);
|
||||||
check_close(code_text, CODETEXT_H, "tmpcode6", "w", genDirectory);
|
check_close(code_text, CODETEXT_H, "tmpcode6", "w", genDirectory);
|
||||||
@ -842,12 +838,15 @@ static void build_other_headers(void)
|
|||||||
check_open(sql_codes, SQL_CODES_H, "tmpcode9", "w");
|
check_open(sql_codes, SQL_CODES_H, "tmpcode9", "w");
|
||||||
add_text(sql_codes, CSTYLE, license);
|
add_text(sql_codes, CSTYLE, license);
|
||||||
add_text(sql_codes, CSTYLE, warn);
|
add_text(sql_codes, CSTYLE, warn);
|
||||||
fprintf(sql_codes, "%s\n", sql_code_boiler_plate);
|
|
||||||
|
fprintf(sql_codes, "static const struct {\n");
|
||||||
|
fprintf(sql_codes, "\tSLONG gds_code;\n");
|
||||||
|
fprintf(sql_codes, "\tSSHORT sql_code;\n");
|
||||||
|
fprintf(sql_codes, "} gds__sql_code[] = {\n");
|
||||||
|
|
||||||
const int DEFAULT_SQL_CODE = -999; // InterBase error
|
const int DEFAULT_SQL_CODE = -999; // InterBase error
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
fprintf(sql_codes, "%4d /* No Error */", 0);
|
|
||||||
FOR E IN SYSTEM_ERRORS SORTED BY E.FAC_CODE, E.NUMBER
|
FOR E IN SYSTEM_ERRORS SORTED BY E.FAC_CODE, E.NUMBER
|
||||||
// The only facility that is guaranteed to have all codes
|
// The only facility that is guaranteed to have all codes
|
||||||
// in system errors is JRD
|
// in system errors is JRD
|
||||||
@ -859,20 +858,22 @@ static void build_other_headers(void)
|
|||||||
E.NUMBER);
|
E.NUMBER);
|
||||||
}
|
}
|
||||||
i = E.NUMBER;
|
i = E.NUMBER;
|
||||||
fprintf(sql_codes, ",\n");
|
|
||||||
|
new_code = ENCODE_ISC_MSG(E.NUMBER, E.FAC_CODE);
|
||||||
if (E.SQL_CODE.NULL)
|
if (E.SQL_CODE.NULL)
|
||||||
{
|
{
|
||||||
fprintf(sql_codes, "%4d /* %3d %-32.32s (default) */",
|
fprintf(sql_codes, "\t{%lu, %4d}, /* %3d %-32.32s (default) */\n",
|
||||||
DEFAULT_SQL_CODE, E.NUMBER, E.GDS_SYMBOL);
|
new_code, DEFAULT_SQL_CODE, E.NUMBER, E.GDS_SYMBOL);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
fprintf(sql_codes, "%4d /* %3d %-32.32s */",
|
fprintf(sql_codes, "\t{%lu, %4d}, /* %3d %-32.32s */\n",
|
||||||
(int) E.SQL_CODE, E.NUMBER, E.GDS_SYMBOL);
|
new_code, (int) E.SQL_CODE, E.NUMBER, E.GDS_SYMBOL);
|
||||||
}
|
}
|
||||||
END_FOR;
|
END_FOR;
|
||||||
|
|
||||||
--code;
|
--code;
|
||||||
fprintf(sql_codes, "\n};\n");
|
fprintf(sql_codes, "\t{0, 0}\n");
|
||||||
|
fprintf(sql_codes, "};\n");
|
||||||
check_close(sql_codes, SQL_CODES_H, "tmpcode9", "w", genDirectory);
|
check_close(sql_codes, SQL_CODES_H, "tmpcode9", "w", genDirectory);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user