On Oct 10, 2007, at 9:58 AM, Ethan Mallove wrote:

- what's your "pass" criteria?  Is it looking at wifexited and
wexitstatus?

I have this:

  pass = &eq(&test_wexitstatus(), 0)

I'm guessing it should it be changed to this?

  pass = &and(&test_wifexited(), &eq(&test_wexitstatus(), 0))

Yes -- try this.

- what does solaris return as an exit code in this case?

Looks like 137.

  $ cc -G -o libbar.so bar.c
  $ file libbar.so
libbar.so: ELF 32-bit MSB dynamic lib SPARC32PLUS Version 1, V8+ Required, dynamically linked, not stripped
  $ cc foo.c -L`pwd` -R`pwd` -lbar -o foo
  $ ldd foo
          libbar.so =>     /home/emallove/tmp/libbar.so
          ...
  $ ./foo
  $ echo $?
  0
  $ rm libbar.so
  $ ldd foo
          libbar.so =>     (file not found)
          ...
  $ ./foo
ld.so.1: foo: fatal: libbar.so: open failed: No such file or directory
  Killed
  $ echo $?
  137

I honestly don't remember if $? is the exit code or the aggregate return (i.e., it includes the bit indicating died-due-to-signal-or-not).

--
Jeff Squyres
Cisco Systems

Reply via email to