https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91858
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- mpc_tan (m, m, 0) with (gdb) p *m $14 = {re = {{_mpfr_prec = 24, _mpfr_sign = 1, _mpfr_exp = 14, _mpfr_d = 0x3713c48}}, im = {{_mpfr_prec = 24, _mpfr_sign = 1, _mpfr_exp = 14, _mpfr_d = 0x3710278}}} (gdb) p *m->re._mpfr_d@4 $36 = {11258999068426240000, 32, 81, 57753152} (gdb) p *m->im._mpfr_d@4 $37 = {11258999068426240000, 32, 81, 57738592} I guess there's only one limb, the rest looks garbage. We're using mpfr_set_str on the re/im part from "0x0.9c4p+14" here.