------- Comment #1 from burnus at gcc dot gnu dot org 2007-03-16 13:42 ------- The first two lines work, but the M() calls fail (SIGSEGV):
D.1257 = *a3; if (D.1257 > M.0) [...] D.1258 = *a4; That is: There is no optional check. cmplx has one: D.1260 = y != 0B ? *y : 0.0; __result_t1 = COMPLEX_EXPR <*x, D.1260>; -- burnus at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |burnus at gcc dot gnu dot | |org Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|0000-00-00 00:00:00 |2007-03-16 13:42:06 date| | Summary|wrong code generated with |[Regression 4.3] wrong code: |gfortran |Max() with optional | |arguments http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31198