I don't know why exactly that was duplicated, but that was separated explicitly back then in df6fa302882eb317e80b94ffaaccaaf2af4205e1 . Now looking at that I realized that it is also duplicated in user32 and that part probably needs the same change.
@julliard I am not sure is there still the reason to keep that separate and not use ucrtbase printf if that passes the tests?