1 /* Copyright (C) 2011 Red Hat, Inc. 2 This file is part of elfutils. 3 4 This file is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; either version 3 of the License, or 7 (at your option) any later version. 8 9 elfutils is distributed in the hope that it will be useful, but 10 WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License 15 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 16 17 #include <config.h> 18 19 #include ELFUTILS_HEADER(dw) 20 #include <fcntl.h> 21 #include <stdio.h> 22 #include <string.h> 23 #include <assert.h> 24 25 int 26 main (int argc, char **argv) 27 { 28 assert (argc > 1); 29 30 int i = open (argv[1], O_RDONLY); 31 assert (i >= 0); 32 33 Dwarf *dw = dwarf_begin (i, DWARF_C_READ); 34 assert (dw != NULL); 35 36 Dwarf_Die die_mem, *die; 37 die = dwarf_offdie (dw, 11, &die_mem); 38 assert (die == &die_mem); 39 assert (dwarf_tag (die) == 0); 40 41 die = dwarf_offdie (dw, 11, &die_mem); 42 assert (die == &die_mem); 43 assert (dwarf_tag (die) == 0); 44 45 dwarf_end (dw); 46 return 0; 47 } 48