The problem seems to be an oversight in rB5cf6f570c65d, where the
default value is not considered when a new attribute is created for
an OutputAttribute. The fix is quite simple, just fill the virtual
array when we aren't ignoring the old values and a default is provided.
Another possible solution would be adding a default value argument to
attribute_try_create. That would be totally valid, and I would be
happy to do that if @Jacques Lucke (JacquesLucke) prefers that solution.