]> ocean-lang.org Git - ocean/commitdiff
oceani: don't try to print a 'then' clause for a switch.
authorNeilBrown <neil@brown.name>
Sat, 11 Oct 2014 06:07:25 +0000 (17:07 +1100)
committerNeilBrown <neil@brown.name>
Sat, 11 Oct 2014 06:09:54 +0000 (17:09 +1100)
'switch' doesn't have a 'then', so don't try to print it.

Signed-off-by: NeilBrown <neil@brown.name>
csrc/oceani.mdc

index bd2c41afc02a1daa34ed6921fb60ba12e6ea4638..47d5f8a30a1aaffbca3a72240ed907f2c44e6f26 100644 (file)
@@ -1814,13 +1814,18 @@ defined.
                            cast(binode, cs->condpart)->op == Block) {
                                printf(":\n");
                                print_exec(cs->condpart, indent+1, bracket);
-                               do_indent(indent, "then:\n");
-                               print_exec(cs->thenpart, indent+1, bracket);
+                               if (cs->thenpart) {
+                                       do_indent(indent, "then:\n");
+                                       print_exec(cs->thenpart, indent+1, bracket);
+                               }
                        } else {
                                printf(" ");
                                print_exec(cs->condpart, 0, bracket);
-                               printf(":\n");
-                               print_exec(cs->thenpart, indent+1, bracket);
+                               if (cs->thenpart) {
+                                       printf(":\n");
+                                       print_exec(cs->thenpart, indent+1, bracket);
+                               } else
+                                       printf("\n");
                        }
                }
                for (cp = cs->casepart; cp; cp = cp->next) {