=== Introduction === DDT is a testing system which applies directed differential testing techniques to C/C++ compilers. The basic idea is to compare different compiler options and/or compilers against each other for a variety of test cases, which are generated on demand. Differences in behavior usually indicate a bug in one or more of the compilers or option-sets. DDT has these main capabilities: It generates its own test cases according to a specified profile, using a stochastic grammar for C. It can reduce a test case that exhibits compiler differences to a (near) minimum number of source lines. It can eliminate false positives that are due to runtime behavior left explicitly undefined by the C standard. It can test compilers that reside on remote computer systems, as well as compilers on the local system. This 1.0x1 release offers a working prototype of these technologies. The software is roughly alpha quality. That is, it runs and gets useful results, but there are lots of little bugs, and the usability gets a little bumpy in spots. At present, all of DDT is implemented in Tcl/Tk. It can be run on a variety of UNIX systems using Tcl7.4/Tk4.0 or later. We also have some preliminary support for running DDT on Windows 95/NT, using Tcl7.5/Tk4.1 or later. In addition to DDT itself, we have also developed two supporting packages: DDT-Tcl, and rshx. DDT-Tcl is an optional Tcl extension implemented in C, which improves the performance of DDT's source code generator. rshx is a set of Bourne shell scripts which are used by DDT when testing compilers on remote machines. Both are available on the DDT download page. === Installation === Installing DDT is simple---just unpack the kit, and you're done. Of course, you do need to ensure that Tcl/Tk is properly installed on your system. For that, you'll find a good Tcl/Tk starting point on the DDT download page. === Mailing Lists === We have setup three mailing lists for DDT, divided in the usual way for an evolving software system: ddt-announce, ddt-users, and ddt-workers. We use Majordomo to manage them, so to subscribe to a particular mailing list (say ddt-users), you would send an e-mail message like this one: To: majordomo@sdtad.zko.dec.com subscribe ddt-users help end In reply, Majordomo will send you a welcome message confirming your subscription, plus some general information about the DDT mailing lists. If you include the help command as shown above, Majordomo will also explain all of the commands available to you. === Reporting Bugs === Please report bugs and/or bug fixes to the ddt-users mailing list, so that everyone using DDT can benefit immediately. If at all possible, post your fixes as context diffs which can be applied by Larry Wall's "patch" program. === Contacting Us === Ordinarily, the best way to reach the core DDT team here at Digital is to send a message to either the ddt-users or the ddt-workers mailing list, as appropriate. That way everyone using or working on DDT will benefit from the discussion. However, if for some reason you want to limit your correspondence to just us, you can send a message to this address: ddt@sdtad.zko.dec.com