correct more error detection

This commit is contained in:
Jeff Epler 2023-08-05 14:46:50 -05:00
parent 9a354a4eb8
commit c918d8048d
No known key found for this signature in database
GPG Key ID: D5BF15AB975AB4DE

View File

@ -447,10 +447,10 @@ static void consider_instruction(introspect_t *state, uint16_t full_instruction,
uint16_t bit_count = full_instruction & 0x001f;
if (source == 0) {
if (!state->has_in_pin) {
mp_raise_ValueError_varg(translate("Missing first_in_pin. %q[%u] shifts in from pin(s)"), i);
mp_raise_ValueError_varg(translate("Missing first_in_pin. %q[%u] shifts in from pin(s)"), what, i);
}
if (bit_count > state->in_pin_count) {
mp_raise_ValueError_varg(translate("%q[%u] shifts in more bits than pin count"), i);
mp_raise_ValueError_varg(translate("%q[%u] shifts in more bits than pin count"), what, i);
}
}
if (state->auto_push) {
@ -465,10 +465,10 @@ static void consider_instruction(introspect_t *state, uint16_t full_instruction,
// Check for pins or pindirs destination.
if (destination == 0x0 || destination == 0x4) {
if (!state->has_out_pin) {
mp_raise_ValueError_varg(translate("Missing first_out_pin. %q[%u] shifts out to pin(s)"), i);
mp_raise_ValueError_varg(translate("Missing first_out_pin. %q[%u] shifts out to pin(s)"), what, i);
}
if (bit_count > state->out_pin_count) {
mp_raise_ValueError_varg(translate("%q[%u] shifts out more bits than pin count"), i);
mp_raise_ValueError_varg(translate("%q[%u] shifts out more bits than pin count"), what, i);
}
}
if (state->auto_pull) {
@ -481,7 +481,7 @@ static void consider_instruction(introspect_t *state, uint16_t full_instruction,
uint16_t destination = (full_instruction & 0x00e0) >> 5;
// Check for pins or pindirs destination.
if ((destination == 0x00 || destination == 0x4) && !state->has_set_pin) {
mp_raise_ValueError_varg(translate("Missing first_set_pin. %q[%u] sets pin(s)"), i);
mp_raise_ValueError_varg(translate("Missing first_set_pin. %q[%u] sets pin(s)"), what, i);
}
}
if (instruction == pio_instr_bits_mov) {
@ -489,10 +489,10 @@ static void consider_instruction(introspect_t *state, uint16_t full_instruction,
uint16_t destination = (full_instruction & 0x00e0) >> 5;
// Check for pins or pindirs destination.
if (destination == 0x0 && !state->has_out_pin) {
mp_raise_ValueError_varg(translate("Missing first_out_pin. %q[%u] writes pin(s)"), i);
mp_raise_ValueError_varg(translate("Missing first_out_pin. %q[%u] writes pin(s)"), what, i);
}
if (source == 0x0 && !state->has_out_pin) {
mp_raise_ValueError_varg(translate("Missing first_in_pin. %q[%u] reads pin(s)"), i);
if (source == 0x0 && !state->has_in_pin) {
mp_raise_ValueError_varg(translate("Missing first_in_pin. %q[%u] reads pin(s)"), what, i);
}
if (destination == 0x6) {
state->in_loaded = true;