DEBUG XFORM FAIL: Issue an error message as part of transformation.
authorBen Pfaff <blp@cs.stanford.edu>
Sun, 12 Dec 2010 06:17:01 +0000 (22:17 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Sun, 12 Dec 2010 06:17:01 +0000 (22:17 -0800)
PSPP only returns a failure exit status if an error message is issued, but
DEBUG XFORM FAIL doesn't issue an error message.  This means that, if PSPP
has no other errors, then it's difficult to tell that the transformation
really did what it should have.  This commit fixes the potential problem.

src/language/xforms/fail.c
tests/language/stats/rank.at

index d1cfabf6676478deb66baca38b371431c5ddd1d6..3ca945243e767199d70190332dc64863ee8c6392 100644 (file)
 
 #include <stdlib.h>
 
-#include <data/case.h>
-#include <data/procedure.h>
-#include <data/transformations.h>
-#include <language/command.h>
-#include <language/lexer/lexer.h>
+#include "data/case.h"
+#include "data/procedure.h"
+#include "data/transformations.h"
+#include "language/command.h"
+#include "language/lexer/lexer.h"
+#include "libpspp/message.h"
 
 static int trns_fail (void *x, struct ccase **c, casenumber n);
-
-
 \f
 /* A transformation which is guaranteed to fail. */
 
@@ -34,10 +33,10 @@ static int
 trns_fail (void *x UNUSED, struct ccase **c UNUSED,
           casenumber n UNUSED)
 {
+  msg (SE, "DEBUG XFORM FAIL transformation executed");
   return TRNS_ERROR;
 }
 
-
 int
 cmd_debug_xform_fail (struct lexer *lexer, struct dataset *ds)
 {
index ac44189c25b3588446ffd9325c48d16b72ee69f1..99a0459fcfa388f93da9efb864d30ac269ccfe56 100644 (file)
@@ -538,6 +538,8 @@ Variables Created By RANK
 
 x into Rx(RANK of x)
 
+rank.sps:14: error: RANK: DEBUG XFORM FAIL transformation executed
+
 rank.sps:14: error: Stopping syntax file processing here to avoid a cascade of dependent command failures.
 ])
 AT_CLEANUP