Created attachment 267467 [details]
When a form contains a <fieldset> that does not include a <legend>, then the label for inputs are incorrect.
So with the attached file, VoiceOver will describe the field as:
"Field A, edit text, Intro (not a legend). Field A, Field A"
You will notice the repetition of "Field A" three times.
If the <p> is changed into a <legend> this becomes:
"Field A, edit text, Intro (a legend)"
This second example is correct, where it just includes the field <label>, type, and the associated <legend>.
I suspect the problem is when a <legend> does not exist, WebKit just takes all of the fieldsets text instead, resulting in the duplication.
This was also tested on WebKit nightly r194142.
Created attachment 267468 [details]
Screenshot of VoiceOver output.