Bulletin number: 14 Products affected: D700D Description: Functions return bad values on T800 Component: Compiler Date: Tue Feb 27 14:57:18 GMT 1990 ----- The TDS2 compiler causes bad values to be returned from functions if the RESULT line contains expressions. This only occurs when compling for a T8. The two functions below illustrate the problem and a workaround using local variables in the function. This one will return bad values: REAL32, REAL32 FUNCTION badfunc(VAL REAL32 param1, param2) VALOF SKIP RESULT (param1 + param2), (param2) : The two local variables res1 and res2 avoid putting any expressions into the RESULT line. REAL32, REAL32 FUNCTION goodfunc(VAL REAL32 param1, param2) REAL32 res1, res2: VALOF SEQ res1 := param1 + param2 res2 := param2 RESULT res1, res2 : Works fine on TDS3