X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=src%2Fbackends%2Fjvm%2Fgenerator-jvm.c;h=c389ebce731e08fd36d13c36fceff9083f2308b9;hb=833752b95ce17f151a60ba00a75e25b4afc67f4d;hp=e4ea3833027a6d27cd502cf3be21e98191cfc4b7;hpb=4e58c0e61815196bcf87405ab9d070631bc72f90;p=dsw-obn.git diff --git a/src/backends/jvm/generator-jvm.c b/src/backends/jvm/generator-jvm.c index e4ea383..c389ebc 100644 --- a/src/backends/jvm/generator-jvm.c +++ b/src/backends/jvm/generator-jvm.c @@ -631,6 +631,13 @@ oberon_generator_init_var(oberon_context_t * ctx, oberon_object_t * var) struct gen_class * c; char * name = var -> name; gen_type_t * t = var -> type -> gen_type; + + assert(name); + if(t == NULL) + { + gen_error("uninitialized type class %i", var -> type -> class); + } + switch(var -> class) { case OBERON_CLASS_VAR_PARAM: @@ -864,10 +871,12 @@ jvm_generate_local_object(gen_proc_t * p, oberon_object_t * x) case OBERON_CLASS_VAR: jvm_generate_var(v); break; + case OBERON_CLASS_CONST: + case OBERON_CLASS_TYPE: case OBERON_CLASS_PROC: break; default: - gen_error("jvm_generate_local_initialization: wat"); + gen_error("jvm_generate_local_initialization: wat class %i", x -> class); break; } } @@ -892,10 +901,12 @@ jvm_generate_local_initialization(gen_proc_t * p, oberon_object_t * x) case OBERON_CLASS_VAR: jvm_generate_var_initialization(p, v); break; + case OBERON_CLASS_CONST: + case OBERON_CLASS_TYPE: case OBERON_CLASS_PROC: break; default: - gen_error("jvm_generate_local_initialization: wat"); + gen_error("jvm_generate_local_initialization: wat class %i", x -> class); break; }