exit_test (version 1.0)

You can also look at:
#! /usr/bin/perl

##############################################################################
#
# SYNTAX: exit_test code caller level message
#
# DESCRIPTION: Check a generic routine for errors.
#
# VERSION: 1.0
#
# HISTORY: 0.0 -> 1.0 1999-05-07
# HISTORY: Converted from ksh to perl
#
# CALLS: $UTIL/exception
#
##############################################################################

($code, $caller, $level, $message) = @ARGV;

$DEBUG = $ENV{"DEBUG"};

if ( "$DEBUG" ) {
    print "$0: code=$code\n";
    print "$0: caller=$caller\n";
    print "$0: level=$level\n";
    print "$0: message=$message\n";
}

if ( $code != 0 ) {
    ###################
    # There is an error
    ###################
    `$ENV{"UTIL"}/exception $caller $level "${message} Exit code=$code"`;
}

exit $code;