This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/38504] double minus sign when printing integer?



------- Comment #5 from kargl at gcc dot gnu dot org  2008-12-12 16:03 -------
Looking at the -fdump-tree-original, I suspect that the minus sign in
the hex formatted number is redundant.  To keep things short, I've removed
the dt_parm setup code. _gfortran_transfer_integer probably outputs -,
then converts 0x80000000000000 to -9223....

  value = -0x8000000000000000;
  {
    struct __st_parameter_dt dt_parm.2;

    _gfortran_transfer_integer (&dt_parm.2, &value, 8);
    {
      static integer(kind=8) C.1495 = -0x8000000000000000;

      _gfortran_transfer_integer (&dt_parm.2, &C.1495, 8);
    }
    _gfortran_st_write_done (&dt_parm.2);
  }

  value4 = -2147483648;
  {
    struct __st_parameter_dt dt_parm.4;

    _gfortran_st_write (&dt_parm.4);
    _gfortran_transfer_integer (&dt_parm.4, &value4, 4);
    {
      static integer(kind=4) C.1499 = -2147483648;

      _gfortran_transfer_integer (&dt_parm.4, &C.1499, 4);
    }
    _gfortran_st_write_done (&dt_parm.4);
  }


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38504


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]