ce102e96e6
rule that generates a .ci file for each .o file and remove explicit .c.o rules except for callfuncs.o. * gdb.c++/Makefile.in: Add .cc.o transformation rule that generates a .ci file for each .o file and remove explicit .cc.o rules. (clean): Remove *.tmp *.ci files. (EXECUTABLES): Remove templ-info.exp. * gdb.base/compiler.c: New file. * gdb.c++/compiler.cc: New file * gdb.base/scope.exp: Source gdb.base/scope.ci. Change rs6000-*-* xfail for "print 'scope0.c'::filelocal_ro" and "print 'scope1.c'::filelocal" and "print 'scope1.c'::filelocal_bss" and "print 'scope1.c'::filelocal_ro" and "print 'scope1.c'::foo::funclocal" and "print 'scope1.c'::foo::funclocal_ro" and "print 'scope1.c'::bar::funclocal" and "print 'scope0.c'::filelocal_ro" and "print 'scope1.c'::filelocal at foo" and "print 'scope1.c'::filelocal_bss at foo" and "print 'scope1.c'::filelocal_ro at foo" and "print 'scope1.c'::foo::funclocal at foo" and "print 'scope1.c'::foo::funclocal_bss at foo" and "print 'scope1.c'::foo::funclocal_ro at foo" and "print 'scope1.c'::bar::funclocal at foo" and "print 'scope0.c'::filelocal_ro" and "print 'scope1.c'::filelocal" and "print 'scope1.c'::filelocal_bss" and "print 'scope1.c'::filelocal_ro" and "print 'scope1.c'::foo::funclocal" and "print 'scope1.c'::foo::funclocal_bss" and "print 'scope1.c'::foo::funclocal_ro" and "print 'scope1.c'::bar::funclocal" and "print 'scope1.c'::bar::funclocal_bss" to only be xfail'd when not compiled with gcc. Add rs6000-*-* xfail for "print 'scope0.c'::filelocal_bss before run" when compiled with gcc. (test_at_main): Add rs6000-*-* xfail for "print filelocal_ro in test_at_main" when compiled with gcc. * gdb.base/ptype.exp: Source gdb.base/ptype.ci. Add rs6000-*-aix* xfail for "whatis unnamed typedef'd enum (compiler bug in IBM's xlc)" and "ptype t_char_array", not compiled with gcc. * gdb.base/list.exp (test_list_function): Add rs6000-*-* xfail for "list foo (in include file)" when gcc compiled. * gdb.base/funcargs.exp: Source gdb.base/funcargs.ci (integral_args): Add rs6000-*-* xfail for "run to call0a" if not compiled with gcc. (unsigned_integral_args): Add rs6000-*-* xfail for "run to call1a" if not compiled with gcc. (float_and_integral_args): Add rs6000-*-* xfail for "run to call2a" if not compiled with gcc and for "continue to call2b" for any compiler. Add rs6000-*-* xfail to "print f1 after run to call2a" for gcc compiled. (discard_and_shuffle): Add rs6000-*-* xfail for "run to call6a". (shuffle_round_robin): Add rs6000-*-* xfail for "backtrace from call7a" if not compiled with gcc. Add rs6000-*-* xfail for "backtrace from call7b" if compiled with gcc. (call_after_alloca): Add rs6000-*-* xfail for "print c in call_after_alloca" and "print s in call_after_alloca" and "backtrace from call_after_alloca_subr" if not compiled with gcc. (localvars_in_indirect_call): Add rs6000-*-* xfail for "print c in localvars_in_indirect_call" and "print c in localvars_in_indirect_call" and "backtrace in indirectly called function" and "stepping into indirectly called function" if not compiled with gcc. (localvars_after_alloca): Add rs6000-*-* xfail for "print c after runto localvars_after_alloca" and "print s after runto localvars_after_alloca" and "print i after runto localvars_after_alloca" and "print l after runto localvars_after_alloca" for all compilers. * gdb.base/whatis.exp: Source gdb.base/whatis.ci rather than whatis-info.exp. * gdb.base/opaque.exp: Source gdb.base/opaque0.ci rather than opaque-info.exp. Setup rs6000-*-* xfail for "ptype on opaque struct pointer (statically)" and "ptype on opaque struct pointer (dynamically)" when not compiled with gcc. * gdb.base/callfuncs.exp: Source gdb.base/callfuncs.ci rather than callf-info.exp. (do_function_calls): Add clear_xfail for rs6000-*-* for "p t_float_values2(3.14159,float_val2)". Seems to work fine there, both with xlc and gcc. Need to find out what it is doing right and fix other platforms. * gdb.base/callfuncs.exp: Add rs6000-*-* xfail for "call inferior func with struct - returns int", "call inferior func with struct - returns long", "call inferior func with struct - returns float", "call inferior func with struct - returns double", "call inferior func with struct - returns char *", but only if not gcc compiled (presumes xlc compiled). Change rs6000-*-* xfails for "call inferior func with struct - returns char" and " call inferior func with struct - returns short" to only xfail if not using gcc. (clean mostlyclean): Remove *.ci and *.tmp files. * gdb.c++/templates.exp: Source gdb.c++/templates.ci rather than templ-info.exp. * gdb.base/langs.exp: Source gdb.base/langs.ci. Add rs6000-*-* xfail for "up to foo in langs.exp" "up to cppsub_ in langs.exp" and "up to fsub in langs.exp" when not gcc compiled.
31 lines
1.1 KiB
C
31 lines
1.1 KiB
C
/* Often the behavior of any particular test depends upon what compiler was
|
|
used to compile the test. As each test is compiled, this file is
|
|
preprocessed by the same compiler used to compile that specific test
|
|
(different tests might be compiled by different compilers, particularly
|
|
if compiled at different times), and used to generate a *.ci (compiler
|
|
info) file for that test.
|
|
|
|
I.E., when callfuncs is compiled, a callfuncs.ci file will be generated,
|
|
which can then be sourced by callfuncs.exp to give callfuncs.exp access
|
|
to information about the compilation environment.
|
|
|
|
TODO: It might be a good idea to add expect code that tests each
|
|
definition made with 'set" to see if one already exists, and if so
|
|
warn about conflicts if it is being set to something else. */
|
|
|
|
/* This needs to be kept in sync with whatis.c. If this proves to end up
|
|
being hairy, we could use a common header file. */
|
|
|
|
#if defined (__STDC__) || defined (_AIX)
|
|
set signed_keyword_not_used 0
|
|
#else
|
|
set signed_keyword_not_used 1
|
|
#endif
|
|
|
|
#if defined (__GNUC__)
|
|
set gcc_compiled __GNUC__
|
|
#else
|
|
set gcc_compiled 0
|
|
#endif
|
|
|
|
return 0
|