]> Git Repo - binutils.git/blobdiff - gdb/testsuite/gdb.fortran/exprs.exp
Update year range in copyright notice of all files owned by the GDB project.
[binutils.git] / gdb / testsuite / gdb.fortran / exprs.exp
index cccc82a3f5d07359a904612131d6b750000b823d..80560aa69181d5d025db1fc3fb6dba8907ec276f 100644 (file)
@@ -1,47 +1,24 @@
-# Copyright (C) 1994, 1997 Free Software Foundation, Inc.
+# Copyright (C) 1994-2015 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
-# the Free Software Foundation; either version 2 of the License, or
+# the Free Software Foundation; either version 3 of the License, or
 # (at your option) any later version.
-# 
+#
 # This program is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 # GNU General Public License for more details.
-# 
+#
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-# Please email any bugs, comments, and/or additions to this file to:
+# This file was adapted from old Chill tests by Stan Shebs
 
-# This file was adapted from Chill tests by Stan Shebs ([email protected]).
+load_lib "fortran.exp"
 
-if $tracelevel then {
-       strace $tracelevel
-}
-
-set prms_id 0
-set bug_id 0
-
-# Set the current language to fortran.  This counts as a test.  If it
-# fails, then we skip the other tests.
-
-proc set_lang_fortran {} {
-    global gdb_prompt
-    
-    if [gdb_test "set language fortran" ""] {
-       return 0;
-    }
-
-    if ![gdb_test "show language" ".* source language is \"fortran\".*"] {
-       return 1;
-    } else {
-       return 0;
-    }
-}
+if { [skip_fortran_tests] } { continue }
 
 proc test_integer_literals_accepted {} {
     global gdb_prompt
@@ -58,6 +35,13 @@ proc test_character_literals_accepted {} {
     # Test various character values.
 
     gdb_test "p 'a'" " = 'a'"
+
+    # Test various substring expression.
+    gdb_test "p 'abcdefg'(2:4)" " = 'bcd'"
+    gdb_test "p 'abcdefg'(:3)"  " = 'abc'"
+    gdb_test "p 'abcdefg'(5:)"  " = 'efg'"
+    gdb_test "p 'abcdefg'(:)" " = 'abcdefg'"
+
 }
 
 proc test_integer_literals_rejected {} {
@@ -247,7 +231,13 @@ proc test_arithmetic_expressions {} {
     gdb_test "p 6.0 / 3"       " = 2"  "real divided by int"
     gdb_test "p 6.0 / 3.0"     " = 2"  "real divided by real"
 
-    # Test modulo with various operands
+    # Test exponentiation with various operands
+    
+    gdb_test "p 2 ** 3" " = 8" "int powered by int"
+    gdb_test "p 2 ** 2 ** 3" " = 256" "combined exponentiation expression"
+    gdb_test "p (2 ** 2) ** 3" " = 64" "combined exponentiation expression in specified order"
+    gdb_test "p 4 ** 0.5" " = 2" "int powered by real"
+    gdb_test "p 4.0 ** 0.5" " = 2" "real powered by real"
 
 }
 
This page took 0.028651 seconds and 4 git commands to generate.