From: <ale...@us...> - 2011-08-02 09:26:56
|
Revision: 53366 http://firebird.svn.sourceforge.net/firebird/?rev=53366&view=rev Author: alexpeshkoff Date: 2011-08-02 09:26:49 +0000 (Tue, 02 Aug 2011) Log Message: ----------- Make diagnostics about wrong array subscript a bit better Modified Paths: -------------- firebird/trunk/lang_helpers/gds_codes.ftn firebird/trunk/lang_helpers/gds_codes.pas firebird/trunk/src/common/sdl.cpp firebird/trunk/src/include/gen/codetext.h firebird/trunk/src/include/gen/iberror.h firebird/trunk/src/include/gen/msgs.h firebird/trunk/src/include/gen/sql_code.h firebird/trunk/src/include/gen/sql_state.h firebird/trunk/src/msgs/facilities2.sql firebird/trunk/src/msgs/messages2.sql firebird/trunk/src/msgs/system_errors2.sql Modified: firebird/trunk/lang_helpers/gds_codes.ftn =================================================================== --- firebird/trunk/lang_helpers/gds_codes.ftn 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/lang_helpers/gds_codes.ftn 2011-08-02 09:26:49 UTC (rev 53366) @@ -1466,6 +1466,8 @@ PARAMETER (GDS__ee_blr_mismatch_null = 335545026) INTEGER*4 GDS__ee_blr_mismatch_length PARAMETER (GDS__ee_blr_mismatch_length = 335545027) + INTEGER*4 GDS__ss_out_of_bounds + PARAMETER (GDS__ss_out_of_bounds = 335545028) INTEGER*4 GDS__gfix_db_name PARAMETER (GDS__gfix_db_name = 335740929) INTEGER*4 GDS__gfix_invalid_sw Modified: firebird/trunk/lang_helpers/gds_codes.pas =================================================================== --- firebird/trunk/lang_helpers/gds_codes.pas 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/lang_helpers/gds_codes.pas 2011-08-02 09:26:49 UTC (rev 53366) @@ -740,6 +740,7 @@ gds_spb_no_id = 335545025; gds_ee_blr_mismatch_null = 335545026; gds_ee_blr_mismatch_length = 335545027; + gds_ss_out_of_bounds = 335545028; gds_gfix_db_name = 335740929; gds_gfix_invalid_sw = 335740930; gds_gfix_incmp_sw = 335740932; Modified: firebird/trunk/src/common/sdl.cpp =================================================================== --- firebird/trunk/src/common/sdl.cpp 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/common/sdl.cpp 2011-08-02 09:26:49 UTC (rev 53366) @@ -148,7 +148,8 @@ const SLONG n = *subscripts++; if (n < range->iad_lower || n > range->iad_upper) { - error(status_vector, Arg::Gds(isc_out_of_bounds)); + error(status_vector, Arg::Gds(isc_ss_out_of_bounds) << + Arg::Num(n) << Arg::Num(range->iad_lower) << Arg::Num(range->iad_upper)); return -1; } subscript += (n - range->iad_lower) * range->iad_length; @@ -666,7 +667,8 @@ const SLONG n = *stack_ptr++; if (n < range->iad_lower || n > range->iad_upper) { - error(arg->sdl_arg_status_vector, Arg::Gds(isc_out_of_bounds)); + error(arg->sdl_arg_status_vector, Arg::Gds(isc_ss_out_of_bounds) << + Arg::Num(n) << Arg::Num(range->iad_lower) << Arg::Num(range->iad_upper)); return false; } subscript += (n - range->iad_lower) * range->iad_length; Modified: firebird/trunk/src/include/gen/codetext.h =================================================================== --- firebird/trunk/src/include/gen/codetext.h 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/include/gen/codetext.h 2011-08-02 09:26:49 UTC (rev 53366) @@ -729,6 +729,7 @@ {"spb_no_id", 335545025}, {"ee_blr_mismatch_null", 335545026}, {"ee_blr_mismatch_length", 335545027}, + {"ss_out_of_bounds", 335545028}, {"gfix_db_name", 335740929}, {"gfix_invalid_sw", 335740930}, {"gfix_incmp_sw", 335740932}, Modified: firebird/trunk/src/include/gen/iberror.h =================================================================== --- firebird/trunk/src/include/gen/iberror.h 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/include/gen/iberror.h 2011-08-02 09:26:49 UTC (rev 53366) @@ -763,6 +763,7 @@ const ISC_STATUS isc_spb_no_id = 335545025L; const ISC_STATUS isc_ee_blr_mismatch_null = 335545026L; const ISC_STATUS isc_ee_blr_mismatch_length = 335545027L; +const ISC_STATUS isc_ss_out_of_bounds = 335545028L; const ISC_STATUS isc_gfix_db_name = 335740929L; const ISC_STATUS isc_gfix_invalid_sw = 335740930L; const ISC_STATUS isc_gfix_incmp_sw = 335740932L; @@ -1187,7 +1188,7 @@ const ISC_STATUS isc_trace_switch_param_miss = 337182758L; const ISC_STATUS isc_trace_param_act_notcompat = 337182759L; const ISC_STATUS isc_trace_mandatory_switch_miss = 337182760L; -const ISC_STATUS isc_err_max = 1131; +const ISC_STATUS isc_err_max = 1132; #else /* c definitions */ @@ -1920,6 +1921,7 @@ #define isc_spb_no_id 335545025L #define isc_ee_blr_mismatch_null 335545026L #define isc_ee_blr_mismatch_length 335545027L +#define isc_ss_out_of_bounds 335545028L #define isc_gfix_db_name 335740929L #define isc_gfix_invalid_sw 335740930L #define isc_gfix_incmp_sw 335740932L @@ -2344,7 +2346,7 @@ #define isc_trace_switch_param_miss 337182758L #define isc_trace_param_act_notcompat 337182759L #define isc_trace_mandatory_switch_miss 337182760L -#define isc_err_max 1131 +#define isc_err_max 1132 #endif Modified: firebird/trunk/src/include/gen/msgs.h =================================================================== --- firebird/trunk/src/include/gen/msgs.h 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/include/gen/msgs.h 2011-08-02 09:26:49 UTC (rev 53366) @@ -732,6 +732,7 @@ {335545025, "missing service ID in spb"}, /* spb_no_id */ {335545026, "External BLR message mismatch: invalid null descriptor at field @1"}, /* ee_blr_mismatch_null */ {335545027, "External BLR message mismatch: length = @1, expected @2"}, /* ee_blr_mismatch_length */ + {335545028, "Subscript @1 out of bounds [@2, @3]"}, /* ss_out_of_bounds */ {335740929, "data base file name (@1) already given"}, /* gfix_db_name */ {335740930, "invalid switch @1"}, /* gfix_invalid_sw */ {335740932, "incompatible switch combination"}, /* gfix_incmp_sw */ Modified: firebird/trunk/src/include/gen/sql_code.h =================================================================== --- firebird/trunk/src/include/gen/sql_code.h 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/include/gen/sql_code.h 2011-08-02 09:26:49 UTC (rev 53366) @@ -728,6 +728,7 @@ {335545025, -901}, /* 705 spb_no_id */ {335545026, -901}, /* 706 ee_blr_mismatch_null */ {335545027, -901}, /* 707 ee_blr_mismatch_length */ + {335545028, -406}, /* 708 ss_out_of_bounds */ {335740929, -901}, /* 1 gfix_db_name */ {335740930, -901}, /* 2 gfix_invalid_sw */ {335740932, -901}, /* 4 gfix_incmp_sw */ Modified: firebird/trunk/src/include/gen/sql_state.h =================================================================== --- firebird/trunk/src/include/gen/sql_state.h 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/include/gen/sql_state.h 2011-08-02 09:26:49 UTC (rev 53366) @@ -728,6 +728,7 @@ {335545025, "HY000"}, // 705 spb_no_id {335545026, "42000"}, // 706 ee_blr_mismatch_null {335545027, "42000"}, // 707 ee_blr_mismatch_length + {335545028, "42000"}, // 708 ss_out_of_bounds {335740929, "00000"}, // 1 gfix_db_name {335740930, "00000"}, // 2 gfix_invalid_sw {335740932, "00000"}, // 4 gfix_incmp_sw Modified: firebird/trunk/src/msgs/facilities2.sql =================================================================== --- firebird/trunk/src/msgs/facilities2.sql 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/msgs/facilities2.sql 2011-08-02 09:26:49 UTC (rev 53366) @@ -1,7 +1,7 @@ /* MAX_NUMBER is the next number to be used, always one more than the highest message number. */ set bulk_insert INSERT INTO FACILITIES (LAST_CHANGE, FACILITY, FAC_CODE, MAX_NUMBER) VALUES (?, ?, ?, ?); -- -('2011-07-07 12:33:00', 'JRD', 0, 708) +('2011-07-29 16:58:38', 'JRD', 0, 709) ('2010-03-15 06:59:09', 'QLI', 1, 531) -- --('2008-11-28 20:27:04', 'GDEF', 2, 346) Modified: firebird/trunk/src/msgs/messages2.sql =================================================================== --- firebird/trunk/src/msgs/messages2.sql 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/msgs/messages2.sql 2011-08-02 09:26:49 UTC (rev 53366) @@ -815,6 +815,7 @@ ('spb_no_id', 'Service::start', 'svc.c', NULL, 0, 705, NULL, 'missing service ID in spb', NULL, NULL); ('ee_blr_mismatch_null', NULL, 'met.epp', NULL, 0, 706, NULL, 'External BLR message mismatch: invalid null descriptor at field @1', NULL, NULL) ('ee_blr_mismatch_length', NULL, 'met.epp', NULL, 0, 707, NULL, 'External BLR message mismatch: length = @1, expected @2', NULL, NULL) +('ss_out_of_bounds', NULL, 'sdl.cpp', NULL, 0, 708, NULL, 'Subscript @1 out of bounds [@2, @3]', NULL, NULL) -- QLI (NULL, NULL, NULL, NULL, 1, 0, NULL, 'expected type', NULL, NULL); (NULL, NULL, NULL, NULL, 1, 1, NULL, 'bad block type', NULL, NULL); Modified: firebird/trunk/src/msgs/system_errors2.sql =================================================================== --- firebird/trunk/src/msgs/system_errors2.sql 2011-07-31 03:17:44 UTC (rev 53365) +++ firebird/trunk/src/msgs/system_errors2.sql 2011-08-02 09:26:49 UTC (rev 53366) @@ -713,6 +713,7 @@ (-901, 'HY', '000', 0, 705, 'spb_no_id', NULL, NULL) (-901, '42', '000', 0, 706, 'ee_blr_mismatch_null', NULL, NULL) (-901, '42', '000', 0, 707, 'ee_blr_mismatch_length', NULL, NULL) +(-406, '42', '000', 0, 708, 'ss_out_of_bounds', NULL, NULL) -- GFIX (-901, '00', '000', 3, 1, 'gfix_db_name', NULL, NULL) (-901, '00', '000', 3, 2, 'gfix_invalid_sw', NULL, NULL) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |