anchor.diff:              gpb_codegen:format_fn(
                 mk_fn(v_msg_, MsgName),
                 fun('<msg-match>', Path) -> '<field-verifications>', ok;
  -                 ('<else-clause>', _) -> expr
  +                 ('<else-clause>', _) -> dummy_expr
                 end,
                 [replace_tree('<msg-match>', record_match(MsgName, RFields)),
                  splice_trees('<field-verifications>', field_verifiers(FVars)),
  
positive.code:       fun('<sym>', _Path) -> ok;
           (X, Path) -> mk_type_error({invalid_enum, '<EnumName>'}, X, Path)
        end,
        [splice_clauses('<sym>', [gpb_codegen:fn_clause(
                                    fun('<sym>', _Path) -> ok end,
                                    [replace_term('<sym>', EnumSym)])
                                  || {EnumSym, _Value} <- EnumMembers]),
         replace_term('<EnumName>', EnumName)]).
  
  
negative.code:       fun('<EnumName>') -> '<Values>';
           (_) -> error
        end,
        [repeat_clauses('<EnumName>',
                        [[replace_term('<EnumName>', EnumName),
                          replace_term('<Values>', Values)]
                         || {{enum, EnumName}, Values} <- Enums])]).
  
  format_enum_value_symbol_converter_exports(Defs) ->
  