I created this test code that only Asserts on failure. You will need Debug On or Asserts=>on. It also checks that the return value works, and calling a procedure without a return value still happens.
Test13630IgnoreReturn PROCEDURE()
IgnoreReturn_Incr1 PROCEDURE(*LONG p_InOutIcrement1),LONG
IgnoreReturn_Incr2 PROCEDURE(*LONG p_InOutIcrement2),LONG,PROC
NoReturn_Incr3 PROCEDURE(*LONG p_InOutIcrement3)
code
Test13630IgnoreReturn PROCEDURE()
N LONG
R LONG
CODE
OMIT('!***debug on***',_DEBUG_)
Message('Test13630IgnoreReturn Test requires Debug Build')
!***debug on***
N=1
IgnoreReturn_Incr1(N) !Check Return Ignored
ASSERT(N=2,'IgnoreReturn_Incr1() not called? N=' & N)
N=1
IgnoreReturn_Incr2(N) !Check Return Ignored
ASSERT(N=3,'IgnoreReturn_Incr2() not called? N=' & N)
N=1
NoReturn_Incr3(N) !Check No Return still called
ASSERT(N=4,'NoReturn_Incr3() not called? N=' & N)
N=1
R=IgnoreReturn_Incr1(N) !Check Return worked
ASSERT(R=2,'IgnoreReturn_Incr1() return not 1, R=' & R)
N=1
R=IgnoreReturn_Incr2(N) !Check Return worked
ASSERT(R=3,'IgnoreReturn_Incr2() return not 3, R=' & R)
message('Test13630IgnoreReturn() all done')
IgnoreReturn_Incr1 PROCEDURE(*LONG p_InOutIcrement1)!,LONG
CODE
p_InOutIcrement1 += 1
RETURN p_InOutIcrement1
IgnoreReturn_Incr2 PROCEDURE(*LONG p_InOutIcrement2)!,LONG,PROC
CODE
p_InOutIcrement2 += 2
RETURN p_InOutIcrement2
NoReturn_Incr3 PROCEDURE(*LONG p_InOutIcrement3)
CODE
p_InOutIcrement3 += 3
RETURN