summaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-10 00:20:16 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2005-12-10 00:20:16 +0000
commit2943ce06ec3e9fad4753d65f4663c58f1dc69f88 (patch)
tree7670fde6cf99d8c4dcfee7a32b97bae2259e7736 /gcc/testsuite
parentf9155c66224f7811b6a3998a177d8938b47d397f (diff)
downloadgcc-2943ce06ec3e9fad4753d65f4663c58f1dc69f88.tar.gz
* dwarf2out.c (default_eh_frame_section): Delete, moving handling
of EH_FRAME_SECTION_NAME into... (switch_to_eh_frame_section): ...here. Try to set eh_frame_section if it is still null. * except.c (default_exception_section): Delete, moving most of the code to... (switch_to_exception_section): ...this new function. Set exception_section if it is still null, then switch to it. (output_function_exception_table): Use switch_to_exception_section. * varasm.c (exception_section, eh_frame_section): Update comments. (get_section): Hoist use of SECTION_NAMED. (init_varasm_once): Don't set exception_section and eh_frame_section. * output.h (default_exception_section): Delete. (default_eh_frame_section): Delete. testsuite/ * gcc.dg/20051207-1.c, * gcc.dg/20051207-2.c, * gcc.dg/20051207-3.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108336 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/gcc.dg/20051207-1.c5
-rw-r--r--gcc/testsuite/gcc.dg/20051207-2.c5
-rw-r--r--gcc/testsuite/gcc.dg/20051207-3.c7
4 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 8e33451994a..63ef74e45e3 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2005-12-10 Richard Sandiford <richard@codesourcery.com>
+
+ * gcc.dg/20051207-1.c,
+ * gcc.dg/20051207-2.c,
+ * gcc.dg/20051207-3.c: New tests.
+
2005-12-09 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
PR testsuite/20772
diff --git a/gcc/testsuite/gcc.dg/20051207-1.c b/gcc/testsuite/gcc.dg/20051207-1.c
new file mode 100644
index 00000000000..326fb0271a0
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20051207-1.c
@@ -0,0 +1,5 @@
+/* GCC doesn't generate any .eh_frame data for this TU itself, so it
+ shouldn't warn about "a" conflicting with the built-in idea of
+ .eh_frame, even if it thinks that .eh_frame should be read-only. */
+/* { dg-require-named-sections "" } */
+int a __attribute__((section (".eh_frame"))) = 1;
diff --git a/gcc/testsuite/gcc.dg/20051207-2.c b/gcc/testsuite/gcc.dg/20051207-2.c
new file mode 100644
index 00000000000..8a8708794a4
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20051207-2.c
@@ -0,0 +1,5 @@
+/* GCC doesn't generate any .eh_frame data for this TU itself, so it
+ shouldn't warn about "a" conflicting with the built-in idea of
+ .eh_frame, even if it thinks that .eh_frame should be read-write. */
+/* { dg-require-named-sections "" } */
+const int a __attribute__((section (".eh_frame"))) = 1;
diff --git a/gcc/testsuite/gcc.dg/20051207-3.c b/gcc/testsuite/gcc.dg/20051207-3.c
new file mode 100644
index 00000000000..3d4b2a48c39
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20051207-3.c
@@ -0,0 +1,7 @@
+/* GCC doesn't generate any .eh_frame data for this TU itself, so it
+ shouldn't warn about "a" conflicting with the built-in idea of
+ .eh_frame. The warning therefore belongs on the second decl. */
+/* { dg-options "-fno-unit-at-a-time" } */
+/* { dg-require-named-sections "" } */
+int a __attribute__((section (".eh_frame"))) = 1;
+const int b __attribute__((section (".eh_frame"))) = 1; /* { dg-error "section type conflict" } */