|
From: Julian S. <js...@ac...> - 2009-07-06 06:05:16
Attachments:
msgtu-diffs-1.txt.bz2
|
Greetings. I'd like to merge branches/MESSAGING_TIDYUP to the trunk in the next couple of days. This branch tidies up and rationalises what could be called the "messaging" system -- that part of V to do with presenting output to the user. In particular it brings significant improvements to XML output. Changes are: * XML and normal text output now have separate file descriptors, which solves longstanding problems for XML consumers caused by the XML output getting polluted by unexpected non-XML output. * This also means that we no longer have to hardwire all manner of output settings (verbosity, etc) when XML is requested. * The XML output format has been revised, cleaned up, and made more suitable for use by error detecting tools in general (various Memcheck-specific features have been removed). XML output is enabled for Ptrcheck and Helgrind, and Memcheck is updated to the new format. * One side effect is that the behaviour of VG_(message) has been made to be consistent with printf: it no longer automatically adds a newline at the end of the output. This means multiple calls to it can be used to build up a single line message; or a single call can write a multi-line message. The ==pid== preamble is automatically inserted at each newline. * VG_(message)(Vg_UserMsg, ..args..) now has the abbreviated form VG_(UMSG)(..args..); ditto VG_(DMSG) for Vg_DebugMsg and VG_(EMSG) for Vg_DebugExtraMsg. A couple of other useful printf derivatives have been added to pub_tool_libcprint.h, most particularly VG_(vcbprintf). * There's a small change in the core-tool interface to do with error handling: VG_(needs_tool_errors) has a new method void (*before_pp_Error)(Error* err) which, if non-NULL, is called just before void (*pp_Error)(Error* err). This is to give tools the chance to look at errors before any part of them is printed, so they can print any XML preamble they like. * coregrind/m_errormgr.c has been overhauled and cleaned up, and is a bit simpler and more commented. In particular pp_Error and VG_(maybe_record_error) are significantly changed. The diff is huge, but mostly very boring. Most of the changes are of the form - VG_(message)(Vg_UserMsg, "this is a message %d", n); + VG_(message)(Vg_UserMsg, "this is a message %d\n", n); Unfortunately as a result of this, it touches a large number of source files. I will re-check the diff in detail before committing. I don't want to break anything with this, and I'm a bit concerned that the diff is so big and touches so many files, that unrelated changes could slip though -- hence the re-check. In the diff there's many changes like this: Property changes on: exp-ptrcheck/h_intercepts.c ___________________________________________________________________ Deleted: svn:mergeinfo Anybody have any idea what they mean? Are they significant? J |
|
From: Nicholas N. <n.n...@gm...> - 2009-07-12 22:46:25
|
On Mon, Jul 6, 2009 at 7:48 AM, Julian Seward<js...@ac...> wrote: > > * VG_(message)(Vg_UserMsg, ..args..) now has the abbreviated form > VG_(UMSG)(..args..); ditto VG_(DMSG) for Vg_DebugMsg and > VG_(EMSG) for Vg_DebugExtraMsg. A couple of other useful > printf derivatives have been added to pub_tool_libcprint.h, > most particularly VG_(vcbprintf). I know that these names exist because you converted the VG_UMSG/VG_DMSG macros to functions. So VG_(umsg) and VG_(dmsg) would be better names now. > In the diff there's many changes like this: > > Property changes on: exp-ptrcheck/h_intercepts.c > ___________________________________________________________________ > Deleted: svn:mergeinfo I had lots of those when I did the Darwin merge... I just ignored them. Not sure what it means. Nick |
|
From: Tom H. <to...@co...> - 2009-07-12 23:11:16
|
On 12/07/09 23:39, Nicholas Nethercote wrote: > On Mon, Jul 6, 2009 at 7:48 AM, Julian Seward<js...@ac...> wrote: > >> In the diff there's many changes like this: >> >> Property changes on: exp-ptrcheck/h_intercepts.c >> ___________________________________________________________________ >> Deleted: svn:mergeinfo > > I had lots of those when I did the Darwin merge... I just ignored > them. Not sure what it means. It's the new merge tracking stuff in recent subversions - that property tracks which revisions have been merged so that if you merge again it knows it doesn't need to merge them again. Tom -- Tom Hughes (to...@co...) http://www.compton.nu/ |
|
From: Samuel B. <na...@gm...> - 2009-07-19 22:29:43
|
At Mon, 13 Jul 2009 00:10:51 +0100, Tom Hughes wrote: > > On 12/07/09 23:39, Nicholas Nethercote wrote: > > On Mon, Jul 6, 2009 at 7:48 AM, Julian Seward<js...@ac...> wrote: > > > >> In the diff there's many changes like this: > >> > >> Property changes on: exp-ptrcheck/h_intercepts.c > >> ___________________________________________________________________ > >> Deleted: svn:mergeinfo > > > > I had lots of those when I did the Darwin merge... I just ignored > > them. Not sure what it means. > > It's the new merge tracking stuff in recent subversions - that property > tracks which revisions have been merged so that if you merge again it > knows it doesn't need to merge them again. I believe it's recommended to ban pre-1.5 clients from committing (using a commit hook) to repositories that allow merge info, in order to prevent it from being lost (or worse) ... Ah, yes, see this section of the SVN book: http://svnbook.red-bean.com/en/1.5/svn.branchmerge.advanced.html#svn.branchmerge.advanced.pre1.5clients |