diff --git a/py/compile.c b/py/compile.c
index 9e90f82..7624b03 100644
--- a/py/compile.c
+++ b/py/compile.c
@@ -2689,7 +2689,6 @@
     // compile pass 2 and 3
     emit_t *emit_bc = NULL;
     emit_t *emit_native = NULL;
-    emit_t *emit_viper = NULL;
     emit_inline_asm_t *emit_inline_thumb = NULL;
     for (scope_t *s = comp->scope_head; s != NULL; s = s->next) {
         if (s->emit_options == EMIT_OPT_ASM_THUMB) {
@@ -2705,19 +2704,13 @@
         } else {
             switch (s->emit_options) {
                 case EMIT_OPT_NATIVE_PYTHON:
+                case EMIT_OPT_VIPER:
                     if (emit_native == NULL) {
                         emit_native = emit_x64_new(max_num_labels);
                     }
                     comp->emit = emit_native;
                     comp->emit_method_table = &emit_x64_method_table;
-                    break;
-
-                case EMIT_OPT_VIPER:
-                    if (emit_viper == NULL) {
-                        emit_viper = emit_viper_x64_new(max_num_labels);
-                    }
-                    comp->emit = emit_viper;
-                    comp->emit_method_table = &emit_viper_x64_method_table;
+                    comp->emit_method_table->set_native_types(comp->emit, s->emit_options == EMIT_OPT_VIPER);
                     break;
 
                 default:
