> Yes clauses execute in order and that's both by > design and a behavior that is part of the D language > specification (though perhaps implicitly). If there's > a documentation change that would clarify this > please propose it and then make the change on the > wiki. > > - ahl
Thanks to all for the fast replies! My inclination would be to extend http://wikis.sun.com/display/DTrace/D+Program+Structure#Program+Clauses+and+Declarations as follows: ... a D program source file consists of one or more probe clauses that describe the instrumentation to be enabled by DTrace. ***A single probe description may match multiple providers and a D program may declare multiple probe descriptions matching the same provider. Whenever multiple probes match a provider they fire in the order they were declared in.*** Each probe clause has the general form: To really do it right, though, we should also add a new section, between Actions and CPP, which explains how in-order firing can be exploited to implement control flow, preserve predicate caching when some of the predicates are non-cacheable, etc. It might also point out the gotchas that could come up if you declare clauses in the wrong order and cause unintended control flow (e.g. by accidentally changing a variable some later clause was predicated on). Ryan BTW, I tried replying directly from my mail client, but it bounced... do I need to do something special before sending to the list? -- This message posted from opensolaris.org _______________________________________________ dtrace-discuss mailing list [email protected]
