https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107000
--- Comment #7 from anlauf at gcc dot gnu.org --- (In reply to Steve Kargl from comment #6) > Yes, that would work! I was thinking of something more complex > such as looking at the types of the operand(s), but simplification > probably handles +1 and -1 correctly and punts on +'1' and -'1'. I played some more and found that we would regress on e.g. print *, [real :: 1, +real(2.0)] while print *, [real :: 1, real(2.0)] is fine. So we need a better solution...