summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg
diff options
context:
space:
mode:
authortkoenig <tkoenig@138bc75d-0d04-0410-961f-82ee72b054a4>2006-05-28 20:25:15 +0000
committertkoenig <tkoenig@138bc75d-0d04-0410-961f-82ee72b054a4>2006-05-28 20:25:15 +0000
commit076901c30aebfad3f647022acf62d67229cfa8ff (patch)
treed10973bffbe6cff83f2b74ebd3c5762ac2392da0 /gcc/testsuite/gfortran.dg
parentd81d63f7421b34985e24c10735fc2a373e6abbcb (diff)
downloadgcc-076901c30aebfad3f647022acf62d67229cfa8ff.tar.gz
2006-05-28 Thomas Koenig <Thomas.Koenig@online.de>
* intrinsics/string_intrinsics.c (compare_string): Use memcmp instead of strncmp to avoid tripping over CHAR(0) in a string. 2006-05-28 Thomas Koenig <Thomas.Koenig@online.de> * gfortran.dg/string_null_compare_1.f: New test case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@114175 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gfortran.dg')
-rw-r--r--gcc/testsuite/gfortran.dg/string_null_compare_1.f15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/string_null_compare_1.f b/gcc/testsuite/gfortran.dg/string_null_compare_1.f
new file mode 100644
index 00000000000..2e6eb1b2b88
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/string_null_compare_1.f
@@ -0,0 +1,15 @@
+! { dg-do run }
+! PR 27784 - Different strings should compare unequal even if they
+! have CHAR(0) in them.
+
+ program main
+ character*3 str1, str2
+ call setval(str1, str2)
+ if (str1 == str2) call abort
+ end
+
+ subroutine setval(str1, str2)
+ character*3 str1, str2
+ str1 = 'a' // CHAR(0) // 'a'
+ str2 = 'a' // CHAR(0) // 'c'
+ end