aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicola Pero <nicola.pero@meta-innovation.com>2010-09-10 09:54:54 +0000
committerNicola Pero <nicola@gcc.gnu.org>2010-09-10 09:54:54 +0000
commit1c732eb7229d03addf86b550c8e8c0123d98d729 (patch)
tree4d73ce596dfaec0cd0156497918bbf59238741af
parent3dac89f7dfbd804de421819ee0106f98be582a36 (diff)
downloadgcc-1c732eb7229d03addf86b550c8e8c0123d98d729.zip
gcc-1c732eb7229d03addf86b550c8e8c0123d98d729.tar.gz
gcc-1c732eb7229d03addf86b550c8e8c0123d98d729.tar.bz2
* objc.dg/fobjc-exceptions.m: New test.
From-SVN: r164152
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/objc.dg/fobjc-exceptions.m29
2 files changed, 33 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index f9292f1..7f4f87b 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc.dg/fobjc-exceptions.m: New test.
+
2010-09-10 Jan Hubicka <jh@suse.cz>
* g++.dg/inherit/covariant7.C: Fix pattern matching.
diff --git a/gcc/testsuite/objc.dg/fobjc-exceptions.m b/gcc/testsuite/objc.dg/fobjc-exceptions.m
new file mode 100644
index 0000000..afdc15f
--- /dev/null
+++ b/gcc/testsuite/objc.dg/fobjc-exceptions.m
@@ -0,0 +1,29 @@
+/* Test that Objective-C exceptions cause an error with -fobjc-exceptions. */
+/* { dg-do compile } */
+
+@class Object;
+
+int dummy (int number, Object *o)
+{
+ @try { /* { dg-error "fobjc-exceptions" "is required to enable Objective-C exception syntax" } */
+ number++;
+ @throw o; /* { dg-error "fobjc-exceptions" "is required to enable Objective-C exception syntax" } */
+ }
+ @catch (id object)
+ {
+ number++;
+ @throw; /* { dg-error "fobjc-exceptions" "is required to enable Objective-C exception syntax" } */
+ }
+ @finally
+ {
+ number++;
+ }
+
+ @synchronized (o) /* { dg-error "fobjc-exceptions" "is required to enable Objective-C exception syntax" } */
+ {
+ number++;
+ }
+
+ return number;
+}
+