Currently the fixit system runs in one of two modes, either fix the particular problems specified through the -fixit-at parameter, or fix only the problems found in the main file. As a bonus bug, in the fix-all mode, clang's diagnostic output will claim that it's applied changes to files that it isn't actually touching.<div>

<br></div><div>This patch makes fixits apply to all files when no -fixit-at or -o flag is specified. For compatibility with our tests, clang -fixit -o foo will still only output the main file (but see FIXME in patch). This also exposes the fileid's out the FixItRewriter so that users can write their own frontend action which chooses file names other than the default <a href="http://foo.fixit.cc">foo.fixit.cc</a>.</div>

<div><br></div><div>Finally, this uncovered PR6813 in case you're wondering what the 3 xfailed tests are about.</div><div><br></div><div>Please review!</div><div><br></div><div>Nick</div><div><br></div>