@@ -1071,18 +1071,26 @@ static void r_print_format_long_double(const RPrint* p, int endian, int mode, co
1071
1071
r_mem_swaporcopy ((ut8 * )& val_f , buf + i , sizeof (long double ), endian );
1072
1072
if (MUSTSET ) {
1073
1073
r_print_printf (p , "wv8 %s @ 0x%08" PFMT64x "\n" , setval ,
1074
- seeki + ((elem >= 0 ) ? elem * 8 : 0 ));
1074
+ seeki + ((elem >= 0 ) ? elem * 8 : 0 ));
1075
1075
} else if ((mode & R_PRINT_DOT ) || MUSTSEESTRUCT ) {
1076
+ #if R2_NO_LONG_DOUBLE_FMT
1077
+ r_print_printf (p , "%.17g" , (double )val_f );
1078
+ #else
1076
1079
r_print_printf (p , "%.17Lg" , val_f );
1080
+ #endif
1077
1081
} else {
1078
1082
if (MUSTSEE ) {
1079
1083
if (!SEEVALUE && !ISQUIET ) {
1080
1084
r_print_printf (p , "0x%08" PFMT64x " = " ,
1081
- seeki + ((elem >= 0 ) ? elem * 8 : 0 ));
1085
+ seeki + ((elem >= 0 ) ? elem * 8 : 0 ));
1082
1086
}
1083
1087
}
1084
1088
if (size == -1 ) {
1089
+ #if R2_NO_LONG_DOUBLE_FMT
1090
+ r_print_printf (p , "%.17g" , (double )val_f );
1091
+ #else
1085
1092
r_print_printf (p , "%.17Lg" , val_f );
1093
+ #endif
1086
1094
} else {
1087
1095
if (!SEEVALUE ) {
1088
1096
r_print_printf (p , "[ " );
@@ -1092,7 +1100,11 @@ static void r_print_format_long_double(const RPrint* p, int endian, int mode, co
1092
1100
updateAddr (buf + i , 9999 , endian , & addr , NULL );
1093
1101
r_mem_swaporcopy ((ut8 * )& val_f , buf + i , sizeof (double ), endian );
1094
1102
if (elem == -1 || elem == 0 ) {
1103
+ #if R2_NO_LONG_DOUBLE_FMT
1104
+ r_print_printf (p , "%.17g" , (double )val_f );
1105
+ #else
1095
1106
r_print_printf (p , "%.17Lg" , val_f );
1107
+ #endif
1096
1108
if (elem == 0 ) {
1097
1109
elem = -2 ;
1098
1110
}
0 commit comments