OK, 29 tests failed, 18 failed in the email, which ones are different?
Use the --record and --compare options so you know which ones changed while you were working with the code -- that's why they were added.
To quickly expand on this, in MySQL do a "source maintenance/testRunner.sql", which will create the two tables needed for storing test results, then do a: php maintenance/parserTests.php --quiet --quick --record --color=no (You can even skip the sourcing the table definitions if you want, as Ashar added sourcing this automatically if you use the --record option and the tables don't exist; and the extra command-line options shown above are just the ones I use) Then you'd make your changes (so it's probably not going to help you right now if you've already modified stuff), and then do a: php maintenance/parserTests.php --quiet --quick --compare --color=no ... and any items which are different should appear under the "previously passing test(s) now FAILING!" or "previously failing test(s) now PASSING!" or "previously PASSING test(s) removed" or "new PASSING test(s)" or "previously passing test(s) now FAILING!" or "previously FAILING test(s) removed" or "new FAILING test(s)" sections. Things that haven't changed should be under "still FAILING test(s)". When you want, you'd update your baseline again with the --record option (e.g. svn checkout time can sometimes be a good time to do this)
Not that I understand why we have expected failing tests at all.
Think of a never-passed test as the oppression of hope by reality :-)
-- All the best, Nick.