Blame tests/run-typeiter.sh

Packit 032894
#! /bin/sh
Packit 032894
# Copyright (C) 2012, 2015 Red Hat, Inc.
Packit 032894
# This file is part of elfutils.
Packit 032894
#
Packit 032894
# This file is free software; you can redistribute it and/or modify
Packit 032894
# it under the terms of the GNU General Public License as published by
Packit 032894
# the Free Software Foundation; either version 3 of the License, or
Packit 032894
# (at your option) any later version.
Packit 032894
#
Packit 032894
# elfutils is distributed in the hope that it will be useful, but
Packit 032894
# WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 032894
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit 032894
# GNU General Public License for more details.
Packit 032894
#
Packit 032894
# You should have received a copy of the GNU General Public License
Packit 032894
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
Packit 032894
Packit 032894
. $srcdir/test-subr.sh
Packit 032894
Packit 032894
# struct s1
Packit 032894
# {
Packit 032894
#   char c;
Packit 032894
#   short s;
Packit 032894
#   int i;
Packit 032894
#   long l;
Packit 032894
#   float f;
Packit 032894
#   double d;
Packit 032894
# };
Packit 032894
# 
Packit 032894
# s1 S1;
Packit 032894
# 
Packit 032894
# int func (s1 *p)
Packit 032894
# {
Packit 032894
#   return p->i;
Packit 032894
# }
Packit 032894
# 
Packit 032894
# int main()
Packit 032894
# {
Packit 032894
#   return func (&S1;;
Packit 032894
# }
Packit 032894
#
Packit 032894
# g++ -gdwarf-4 -g -fdebug-types-section
Packit 032894
Packit 032894
# echo 'struct A{ struct B {} x;};A a; A::B b;int main(){return 0;}' \
Packit 032894
#  | g++ -x c++  -g -fdebug-types-section -o testfile-debug-types -
Packit 032894
Packit 032894
testfiles testfile59 testfile-debug-types
Packit 032894
Packit 032894
testrun_compare ${abs_builddir}/typeiter testfile59 <<\EOF
Packit 032894
ok
Packit 032894
EOF
Packit 032894
Packit 032894
testrun_compare ${abs_builddir}/typeiter2 testfile59 <<\EOF
Packit 032894
ok s1 [25]
Packit 032894
EOF
Packit 032894
Packit 032894
testrun_compare ${abs_builddir}/typeiter2 testfile-debug-types <<\EOF
Packit 032894
ok A [68]
Packit 032894
ok B [38]
Packit 032894
EOF
Packit 032894
Packit 032894
exit 0