Ethan --

Ok, I think I fixed it the supposed-to-fail problem. I tried for a while to make a funclet wrapper around perl's map function, but the syntax for how you had to call it got uglier and uglier. So I gave up. Instead, I made a &prepend() funclet, and use it like this:

simple_failures:tests = &find_executables(&prepend("src/", &cat ("supposed_to_fail")))

It ain't sexy, but it works.  This should get you up and going.

The bad news is that in doing this, I think I had a bad realization: for any funclet that can take an array as an argument, it really can take one of three things:

- a string
- an array of strings
- a reference to an array of strings

The third is because all funclets that return arrays actually return references to arrays (ie., they "return \@ret;"). I think that all the functlets need to be expanded to be able to handle this possibility. This isn't hard, but it is menial labor and I don't have the brainpower to handle that at the moment.

This came up because

  &find_executables(&prepend("src/", &cat("supposed_to_fail")))

&cat() returns an \@array which then gets fed to &prepend(). &prepend () then returns an \@array which gets fed to &find_executables(). It took me a while to figure out that this is what was happening.

Can you confirm this conclusion (that we need to update all the funclets), just to make sure I'm not out of my mind?

--
Jeff Squyres
Cisco Systems

Reply via email to