anchor.diff:                     undefined ->
                          ok;
                      '<oneof-pattern>' ->
  -                       '<verify-fn>'('<OFVar>', ['<OFName>', '<FName>' | Path]);
  +                       '<verify-fn>'('<OFVar>', ['<OFName>', '<FName>' | Path],
  +                                     'MaybeTrUserData');
                      _ ->
                          mk_type_error(invalid_oneof, '<F>', ['<FName>' | Path])
                  end,
  
positive.code:                                      ?expr({'<OFName>','<OFVar>'})),
                          replace_term('<verify-fn>', FVerifierFn2),
                          replace_tree('<OFVar>', OFVar),
                          replace_term('<OFName>', OFName)]
                     end
                     || #?gpb_field{name=OFName, type=Type}=F <- OFields])]);
          {maps, omitted} ->
              ?expr(
                 case 'M' of
                     '<oneof-pattern>' ->
                         '<verify-fn>'('<OFVar>', ['<OFName>', '<FName>' | Path]);
                     '#{<FName> := <F>}' ->
                         mk_type_error(invalid_oneof, '<F>', ['<FName>' | Path]);
                     _ ->
  
negative.code:                           %% "Expression produces a value of type
                            %% ['ok'], but this value is unmatched"
                            %% with the -Wunmatched_returns flag.
                            _ = ['<verify-fn>'(Elem, ['<FName>' | Path],
                                               'MaybeTrUserData')
                                 || Elem <- '<F>'],
                            ok;
                       true ->
  