Require Import Recdef.

Function dumb_works (a:nat) {struct a} :=
  match (fun x => x) a with O => O | S n' => dumb_works n' end.

Function dumb_nope (a:nat) {struct a} :=
  match (id (fun x => x)) a with O => O | S n' => dumb_nope n' end.

(* This check is just present to ensure Function worked well *)
Check R_dumb_nope_complete.
