| /* APPLE LOCAL begin radar 4167459 */ |
| /* { dg-do compile { target i?86-*-darwin* } } */ |
| /* { dg-skip-if "" { i?86-*-darwin* } { "-m64" } { "" } } */ |
| /* { dg-options "-O -march=pentium4" } */ |
| extern double foo(double); |
| |
| typedef union { |
| int int_val; |
| double real_val; |
| } Val_type; |
| |
| typedef enum { UNKNOWN, INT, REAL, BOOL, FCT, STRING } Data_type; |
| |
| void ln(int res, int op1) |
| { |
| Data_type res_type, op1_type; |
| Val_type res_val, op1_val; |
| |
| res_val.real_val = foo((double)((op1_type == REAL) ? op1_val.real_val : op1_val.int_val)); |
| |
| st_set_val_type(res, res_type, res_val); |
| } |
| /* APPLE LOCAL end radar 4167459 */ |