From 1cd385f3b354a78ae8d02333f40cd065073c9b19 Mon Sep 17 00:00:00 2001 From: xleroy Date: Sat, 21 Dec 2013 17:00:43 +0000 Subject: Support "default" cases in the middle of a "switch", not just at the end. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2383 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e --- cfrontend/SimplExprspec.v | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'cfrontend/SimplExprspec.v') diff --git a/cfrontend/SimplExprspec.v b/cfrontend/SimplExprspec.v index a4242619..9dfa42e9 100644 --- a/cfrontend/SimplExprspec.v +++ b/cfrontend/SimplExprspec.v @@ -479,13 +479,12 @@ Inductive tr_stmt: Csyntax.statement -> statement -> Prop := tr_stmt (Csyntax.Sgoto lbl) (Sgoto lbl) with tr_lblstmts: Csyntax.labeled_statements -> labeled_statements -> Prop := - | tr_default: forall s ts, - tr_stmt s ts -> - tr_lblstmts (Csyntax.LSdefault s) (LSdefault ts) - | tr_case: forall n s ls ts tls, + | tr_ls_nil: + tr_lblstmts Csyntax.LSnil LSnil + | tr_ls_cons: forall c s ls ts tls, tr_stmt s ts -> tr_lblstmts ls tls -> - tr_lblstmts (Csyntax.LScase n s ls) (LScase n ts tls). + tr_lblstmts (Csyntax.LScons c s ls) (LScons c ts tls). (** * Correctness proof with respect to the specification. *) -- cgit