]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/testsuite/gdb.python/py-template.exp
Copyright year update in most files of the GDB Project.
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.python / py-template.exp
index 713ad5f376383517e7fc49df14402b619254e9e7..5fc823434706b25f26faaad1bcdc21518b5f0ea5 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+# Copyright (C) 2008-2012 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -20,6 +20,8 @@ if $tracelevel then {
     strace $tracelevel
 }
 
+if { [skip_cplus_tests] } { continue }
+
 set testfile "py-template"
 set srcfile ${testfile}.cc
 set binfile ${objdir}/${subdir}/${testfile}
@@ -35,41 +37,36 @@ gdb_exit
 gdb_start
 gdb_reinitialize_dir $srcdir/$subdir
 
-gdb_test_multiple "python print 23" "verify python support" {
-    -re "not supported.*$gdb_prompt $" {
-      unsupported "python support is disabled"
-      return -1
-    }
-    -re "$gdb_prompt $"        {}
-}
+# Skip all tests if Python scripting is not enabled.
+if { [skip_python_tests] } { continue }
 
-proc test_template_arg {type} {
-    global testfile srcdir subdir srcfile binfile
-    if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" \
+proc test_template_arg {exefile type} {
+    global testfile srcdir subdir srcfile
+    if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${exefile}" \
                executable \
                [list debug c++ additional_flags="-DTYPE=$type"]] != "" } {
        untested $type
        return -1
     }
-    gdb_load ${binfile}
+    gdb_load ${exefile}
     if ![runto_main ] then {
        perror "couldn't run to breakpoint"
        return
     }
     # There is no executable code in main(), so we are where we want to be
-    gdb_test "print foo" ""
-    gdb_test "python foo = gdb.history(0)" ""
+    gdb_test "print foo" ".*"
+    gdb_test_no_output "python foo = gdb.history(0)"
 
     # Replace '*' with '\*' in regex.
     regsub -all {\*} $type {\*} t
     gdb_test "python print foo.type.template_argument(0)" $t $type
 }
 
-test_template_arg "const int"
-test_template_arg "volatile int"
-test_template_arg "const int &"
-test_template_arg "volatile int &"
-test_template_arg "volatile int * const"
-test_template_arg "volatile int * const *"
-test_template_arg "const int * volatile"
-test_template_arg "const int * volatile * const * volatile *"
+test_template_arg "${binfile}-ci" "const int"
+test_template_arg "${binfile}-vi" "volatile int"
+test_template_arg "${binfile}-cir" "const int &"
+test_template_arg "${binfile}-vir" "volatile int &"
+test_template_arg "${binfile}-vipc" "volatile int * const"
+test_template_arg "${binfile}-vipcp" "volatile int * const *"
+test_template_arg "${binfile}-cipv" "const int * volatile"
+test_template_arg "${binfile}-cipvpcpvp" "const int * volatile * const * volatile *"