Author: particle
Date: Tue Jan 10 20:12:22 2006
New Revision: 11075
Modified:
trunk/src/classes/fixedintegerarray.pmc
trunk/t/pmc/fixedintegerarray.t
Log:
PMC: FixedIntegerArray
~ converted to real exceptions, modified tests
Modified: trunk/src/classes/fixedintegerarray.pmc
==============================================================================
--- trunk/src/classes/fixedintegerarray.pmc (original)
+++ trunk/src/classes/fixedintegerarray.pmc Tue Jan 10 20:12:22 2006
@@ -242,7 +242,7 @@ Returns the integer value of the element
INTVAL get_integer_keyed_int (INTVAL key) {
INTVAL *data;
if (key < 0 || key >= PMC_int_val(SELF))
- internal_exception(OUT_OF_BOUNDS,
+ real_exception(interpreter, NULL, E_IndexError,
"FixedIntegerArray: index out of bounds!");
data = (INTVAL *)PMC_data(SELF);
@@ -394,7 +394,7 @@ Sets the integer value of the element at
void set_integer_keyed_int (INTVAL key, INTVAL value) {
INTVAL *data;
if (key < 0 || key >= PMC_int_val(SELF))
- internal_exception(OUT_OF_BOUNDS,
+ real_exception(interpreter, NULL, E_IndexError,
"FixedIntegerArray: index out of bounds!");
data = (INTVAL*)PMC_data(SELF);
Modified: trunk/t/pmc/fixedintegerarray.t
==============================================================================
--- trunk/t/pmc/fixedintegerarray.t (original)
+++ trunk/t/pmc/fixedintegerarray.t Tue Jan 10 20:12:22 2006
@@ -161,7 +161,7 @@ OUTPUT
# TODO: Rewrite these properly when we have exceptions
-output_is(<<'CODE', <<'OUTPUT', "Setting out-of-bounds elements");
+output_like(<<'CODE', <<'OUTPUT', "Setting out-of-bounds elements");
new P0, .FixedIntegerArray
set P0, 1
@@ -169,37 +169,41 @@ output_is(<<'CODE', <<'OUTPUT', "Setting
end
CODE
-FixedIntegerArray: index out of bounds!
+/FixedIntegerArray: index out of bounds!
+current instr\.:.*/
OUTPUT
-output_is(<<'CODE', <<'OUTPUT', "Getting out-of-bounds elements");
+output_like(<<'CODE', <<'OUTPUT', "Getting out-of-bounds elements");
new P0, .FixedIntegerArray
set P0, 1
set I0, P0[1]
end
CODE
-FixedIntegerArray: index out of bounds!
+/FixedIntegerArray: index out of bounds!
+current instr\.:.*/
OUTPUT
-output_is(<<'CODE', <<'OUTPUT', "Getting out-of-bounds elements, I");
+output_like(<<'CODE', <<'OUTPUT', "Getting out-of-bounds elements, I");
new P0, .FixedIntegerArray
set P0, 1
set I1, 1
set I0, P0[I1]
end
CODE
-FixedIntegerArray: index out of bounds!
+/FixedIntegerArray: index out of bounds!
+current instr\.:.*/
OUTPUT
-output_is(<<'CODE', <<'OUTPUT', "Getting out-of-bounds elements, -I");
+output_like(<<'CODE', <<'OUTPUT', "Getting out-of-bounds elements, -I");
new P0, .FixedIntegerArray
set P0, 1
set I1, -1
set I0, P0[I1]
end
CODE
-FixedIntegerArray: index out of bounds!
+/FixedIntegerArray: index out of bounds!
+current instr\.:.*/
OUTPUT