1 /* This testcase is part of GDB, the GNU debugger. 2 3 Copyright 2010-2020 Free Software Foundation, Inc. 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 17 18 #ifdef __cplusplus 19 class SimpleClass 20 { 21 private: 22 int i; 23 24 public: seti(int arg)25 void seti (int arg) 26 { 27 i = arg; 28 } 29 valueofi(void)30 int valueofi (void) 31 { 32 return i; /* Break in class. */ 33 } 34 }; 35 36 namespace { 37 int anon = 10; 38 }; 39 #endif 40 41 #ifdef USE_TWO_FILES 42 extern void function_in_other_file (void); 43 #endif 44 45 int qq = 72; /* line of qq */ 46 static int rr = 42; /* line of rr */ 47 func(int arg)48int func (int arg) 49 { 50 int i = 2; 51 i = i * arg; /* Block break here. */ 52 return arg; 53 } 54 55 struct simple_struct 56 { 57 int a; 58 }; 59 main(int argc,char * argv[])60int main (int argc, char *argv[]) 61 { 62 #ifdef __cplusplus 63 SimpleClass sclass; 64 #endif 65 int a = 0; 66 int result; 67 struct simple_struct ss = { 10 }; 68 enum tag {one, two, three}; 69 enum tag t = one; 70 71 result = func (42); 72 73 #ifdef __cplusplus 74 sclass.seti (42); 75 sclass.valueofi (); 76 #endif 77 78 #ifdef USE_TWO_FILES 79 function_in_other_file (); 80 #endif 81 82 return 0; /* Break at end. */ 83 } 84