anchor.diff:                  records ->
                       [record_create(
                          MsgName,
  -                       [{FName, Expr} || {FName, m, Expr, _} <- ExprInfos2])];
  +                       [{FName, Expr} || {FName, P, Expr, _} <- ExprInfos2,
  +                                         P == m orelse P == d])];
                   {maps, present_undefined} ->
                       [map_create(
                          [{FName, Expr} || {FName, _, Expr, _} <- ExprInfos2])];
  
positive.code:                          false ->
                               {?expr(undefined), ?expr('$undef')}
                       end,
                   case Occurrence of
                       repeated -> {FName, m, ?expr([]),        ?expr([])};
                       required -> {FName, o, ?expr(undefined), ?expr('$undef')};
                       optional -> {FName, o, Undefined,        Undef}
                   end;
               #gpb_oneof{name=FName} ->
                   {FName, o, ?expr(undefined), ?expr('$undef')}
  
negative.code: msg_decoder_initial_params(MsgName, MsgDef, Defs, TrUserDataVar, AnRes, Opts) ->
      ExprInfos1 =
          [case Field of
               #?gpb_field{name=FName, occurrence=Occurrence, type=Type,
                           opts=FOpts} ->
                   {Undefined, Undef} =
                       case gpb:is_msg_proto3(MsgName, Defs) of
                           true ->
  