1/* Test resolving of an opaque type from the loaded shared library. 2 3 Copyright 2007, Free Software Foundation, Inc. 4 5 This file is part of GDB. 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License as published by 9 the Free Software Foundation; either version 3 of the License, or 10 (at your option) any later version. 11 12 This program is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 GNU General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 19 20struct struct_libtype_opaque; 21 22struct struct_libtype_empty 23 { 24 }; 25 26struct struct_libtype_filled 27 { 28 long mainfield_filled; 29 }; 30 31union union_libtype_opaque; 32 33union union_libtype_empty 34 { 35 }; 36 37union union_libtype_filled 38 { 39 long mainfield_filled; 40 }; 41 42int main (void) 43{ 44 volatile struct struct_libtype_opaque *pointer_struct_opaque = (void *) 0; 45 volatile struct struct_libtype_empty *pointer_struct_empty = (void *) 0; 46 volatile struct struct_libtype_filled *pointer_struct_filled = (void *) 0; 47 volatile union union_libtype_opaque *pointer_union_opaque = (void *) 0; 48 volatile union union_libtype_empty *pointer_union_empty = (void *) 0; 49 volatile union union_libtype_filled *pointer_union_filled = (void *) 0; 50 51 return (long) pointer_struct_opaque + (long) pointer_struct_empty 52 + (long) pointer_struct_filled + (long) pointer_union_opaque 53 + (long) pointer_union_empty + (long) pointer_union_filled; 54} 55