Remove C/C++ relevant code in Fortran specific file.

Remove code relevant for printing C/C++ Integer values in a
Fortran specific file to unify printing of Fortran values.
This does not change the output.
This commit is contained in:
Christoph Weinmann
2017-09-08 15:11:47 +02:00
committed by Tim Wiederhake
parent e0f86435f8
commit 469412dd9c
5 changed files with 74 additions and 16 deletions

View File

@ -1,3 +1,8 @@
2017-09-08 Christoph Weinmann <christoph.t.weinmann@intel.com>
* f-valprint.c (f_val_print): Remove check for one byte
sized integers. Remove printing of character type.
2017-09-08 Frank Penczek <frank.penczek@intel.com>
Christoph Weinmann <christoph.t.weinmann@intel.com>
Bernhard Heckel <bernhard.heckel@intel.com>

View File

@ -310,22 +310,8 @@ f_val_print (struct type *type, int embedded_offset,
original_value, &opts, 0, stream);
}
else
{
val_print_scalar_formatted (type, embedded_offset,
original_value, options, 0, stream);
/* C and C++ has no single byte int type, char is used instead.
Since we don't know whether the value is really intended to
be used as an integer or a character, print the character
equivalent as well. */
if (TYPE_LENGTH (type) == 1)
{
LONGEST c;
fputs_filtered (" ", stream);
c = unpack_long (type, valaddr + embedded_offset);
LA_PRINT_CHAR ((unsigned char) c, type, stream);
}
}
val_print_scalar_formatted (type, embedded_offset,
original_value, options, 0, stream);
break;
case TYPE_CODE_STRUCT:

View File

@ -1,3 +1,8 @@
2017-09-08 Christoph Weinmann <christoph.t.weinmann@intel.com>
* gdb.fortran/printing-types.exp: New file.
* gdb.fortran/printing-types.exp: New file.
2017-09-08 Bernhard Heckel <bernhard.heckel@intel.com>
* gdb.fortran/vla-ptype.exp: Fix typos.

View File

@ -0,0 +1,35 @@
# Copyright 2017 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
if {[skip_fortran_tests]} { return -1 }
standard_testfile .f90
if {[prepare_for_testing $testfile.exp $testfile $srcfile {debug f90}]} {
return -1
}
if {![runto MAIN__]} then {
untested "Could not run to breakpoint MAIN__"
return -1
}
gdb_breakpoint [gdb_get_line_number "write"]
gdb_continue_to_breakpoint "write"
gdb_test "print oneByte" " = 1"
gdb_test "print twobytes" " = 2"
gdb_test "print chvalue" " = \'a\'"
gdb_test "print logvalue" " = \.TRUE\."

View File

@ -0,0 +1,27 @@
! Copyright 2017 Free Software Foundation, Inc.
!
! This program is free software; you can redistribute it and/or modify
! it under the terms of the GNU General Public License as published by
! the Free Software Foundation; either version 3 of the License, or
! (at your option) any later version.
!
! This program is distributed in the hope that it will be useful,
! but WITHOUT ANY WARRANTY; without even the implied warranty of
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
! along with this program. If not, see <http://www.gnu.org/licenses/>.
program prog
integer(1) :: oneByte
integer(2) :: twoBytes
character :: chValue
logical(1) :: logValue
oneByte = 1
twoBytes = 2
chValue = 'a'
logValue = .true.
write(*,*) s
end