]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
tm.texi.in (HANDLE_SYSV_PRAGMA, [...]): Remove.
authorJoseph Myers <joseph@codesourcery.com>
Sun, 21 Nov 2010 00:54:14 +0000 (00:54 +0000)
committerJoseph Myers <jsm28@gcc.gnu.org>
Sun, 21 Nov 2010 00:54:14 +0000 (00:54 +0000)
* doc/tm.texi.in (HANDLE_SYSV_PRAGMA,
HANDLE_PRAGMA_PACK_PUSH_POP): Remove.
(HANDLE_PRAGMA_PACK_WITH_EXPANSION): Don't refer to
HANDLE_SYSV_PRAGMA.
* doc/tm.texi: Regenerate.
* system.h (HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_SYSV_PRAGMA,
HANDLE_PRAGMA_WEAK): Poison.
* config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't
define.
* config/alpha/osf5.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/alpha/vms.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/arm/arm.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/cris/cris.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/darwin.h (HANDLE_SYSV_PRAGMA): Don't define.
(HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/elfos.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/freebsd.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/frv/frv.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/i386/cygming.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't
define.
* config/i386/djgpp.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Don't define.
(HANDLE_PRAGMA_WEAK): Don't undefine.
* config/i386/netware.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't
define.
* config/i386/vxworks.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/ia64/hpux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/interix.h (HANDLE_SYSV_PRAGMA): Don't define.
(HANDLE_PRAGMA_WEAK): Don't undefine.
* config/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/m32r/linux.h (HANDLE_SYSV_PRAGMA): Don't define.
(HANDLE_PRAGMA_PACK): Don't undefine.
* config/m32r/m32r.h (HANDLE_SYSV_PRAGMA): Don't undefine.
* config/mep/mep.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/mips/elf.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/mips/sde.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/netbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
(HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/openbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/pa/pa-hpux.h (HANDLE_SYSV_PRAGMA): Don't define.
(HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/rs6000/sysv4.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't
define.
* config/rx/rx.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/score/elf.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/spu/spu.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
* config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Don't define.
* config/xtensa/elf.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.

c-family:
* c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
HANDLE_PRAGMA_VISIBILITY.
* c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
HANDLE_PRAGMA_VISIBILITY): Don't define.
(HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.

cp:
* name-lookup.c (handle_namespace_attrs): Don't check
HANDLE_PRAGMA_VISIBILITY.
* parser.c (cp_parser_namespace_definition): Don't check
HANDLE_PRAGMA_VISIBILITY.

testsuite:
* g++.dg/cpp/_Pragma1.C: Test for all non-Solaris targets.
* gcc.dg/cpp/_Pragma6.c: Test for all non-Solaris targets.
* gcc.dg/pack-test-1.c: Test for all non-default_packed targets.
* gcc.dg/pack-test-2.c: Test for all targets.
* gcc.dg/pragma-align.c: Test for all targets.
* gcc.dg/pragma-pack-4.c: Do not skip for AVR.
* gcc.dg/ucnid-10.c: Test for all targets.

From-SVN: r166992

54 files changed:
gcc/ChangeLog
gcc/c-family/ChangeLog
gcc/c-family/c-pragma.c
gcc/c-family/c-pragma.h
gcc/config/alpha/elf.h
gcc/config/alpha/linux.h
gcc/config/alpha/osf5.h
gcc/config/alpha/vms.h
gcc/config/arm/arm.h
gcc/config/arm/netbsd.h
gcc/config/cris/cris.h
gcc/config/darwin.h
gcc/config/elfos.h
gcc/config/freebsd.h
gcc/config/frv/frv.h
gcc/config/i386/cygming.h
gcc/config/i386/djgpp.h
gcc/config/i386/i386-interix.h
gcc/config/i386/netware.h
gcc/config/i386/vxworks.h
gcc/config/ia64/hpux.h
gcc/config/ia64/ia64.h
gcc/config/interix.h
gcc/config/linux.h
gcc/config/m32r/linux.h
gcc/config/m32r/m32r.h
gcc/config/mep/mep.h
gcc/config/mips/elf.h
gcc/config/mips/sde.h
gcc/config/mmix/mmix.h
gcc/config/netbsd.h
gcc/config/openbsd.h
gcc/config/pa/pa-hpux.h
gcc/config/rs6000/aix.h
gcc/config/rs6000/sysv4.h
gcc/config/rx/rx.h
gcc/config/score/elf.h
gcc/config/spu/spu.h
gcc/config/stormy16/stormy16.h
gcc/config/xtensa/elf.h
gcc/cp/ChangeLog
gcc/cp/name-lookup.c
gcc/cp/parser.c
gcc/doc/tm.texi
gcc/doc/tm.texi.in
gcc/system.h
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp/_Pragma1.C
gcc/testsuite/gcc.dg/cpp/_Pragma6.c
gcc/testsuite/gcc.dg/pack-test-1.c
gcc/testsuite/gcc.dg/pack-test-2.c
gcc/testsuite/gcc.dg/pragma-align.c
gcc/testsuite/gcc.dg/pragma-pack-4.c
gcc/testsuite/gcc.dg/ucnid-10.c

index 6e122603a5d4990f04065651dec53764bd528a2a..684e920cdd119e5c8f5c79fbf03fac610552b7d4 100644 (file)
@@ -1,3 +1,59 @@
+2010-11-20  Joseph Myers  <joseph@codesourcery.com>
+
+       * doc/tm.texi.in (HANDLE_SYSV_PRAGMA,
+       HANDLE_PRAGMA_PACK_PUSH_POP): Remove.
+       (HANDLE_PRAGMA_PACK_WITH_EXPANSION): Don't refer to
+       HANDLE_SYSV_PRAGMA.
+       * doc/tm.texi: Regenerate.
+       * system.h (HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_SYSV_PRAGMA,
+       HANDLE_PRAGMA_WEAK): Poison.
+       * config/alpha/elf.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't
+       define.
+       * config/alpha/osf5.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/alpha/vms.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/arm/arm.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/arm/netbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/cris/cris.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/darwin.h (HANDLE_SYSV_PRAGMA): Don't define.
+       (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/elfos.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/freebsd.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/frv/frv.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/i386/cygming.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't
+       define.
+       * config/i386/djgpp.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/i386/i386-interix.h (HANDLE_SYSV_PRAGMA): Don't define.
+       (HANDLE_PRAGMA_WEAK): Don't undefine.
+       * config/i386/netware.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't
+       define.
+       * config/i386/vxworks.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/ia64/hpux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/ia64/ia64.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/interix.h (HANDLE_SYSV_PRAGMA): Don't define.
+       (HANDLE_PRAGMA_WEAK): Don't undefine.
+       * config/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/m32r/linux.h (HANDLE_SYSV_PRAGMA): Don't define.
+       (HANDLE_PRAGMA_PACK): Don't undefine.
+       * config/m32r/m32r.h (HANDLE_SYSV_PRAGMA): Don't undefine.
+       * config/mep/mep.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/mips/elf.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/mips/sde.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/mmix/mmix.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/netbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
+       (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/openbsd.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/pa/pa-hpux.h (HANDLE_SYSV_PRAGMA): Don't define.
+       (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/rs6000/aix.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/rs6000/sysv4.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't
+       define.
+       * config/rx/rx.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/score/elf.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/spu/spu.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+       * config/stormy16/stormy16.h (HANDLE_SYSV_PRAGMA): Don't define.
+       * config/xtensa/elf.h (HANDLE_PRAGMA_PACK_PUSH_POP): Don't define.
+
 2010-11-20  Eric Botcazou  <ebotcazou@adacore.com>
 
        PR target/31100
index f10fde75fac92a9665cc9a39c5c73180dd0a3cdf..86e75ce84c9bc022abf64e0cb600cfc689c12f18 100644 (file)
@@ -1,3 +1,12 @@
+2010-11-20  Joseph Myers  <joseph@codesourcery.com>
+
+       * c-pragma.c: Remove conditionals on HANDLE_PRAGMA_PACK,
+       HANDLE_PRAGMA_PACK_PUSH_POP, HANDLE_PRAGMA_WEAK and
+       HANDLE_PRAGMA_VISIBILITY.
+       * c-pragma.h (HANDLE_PRAGMA_WEAK, HANDLE_PRAGMA_PACK,
+       HANDLE_PRAGMA_VISIBILITY): Don't define.
+       (HANDLE_SYSV_PRAGMA, HANDLE_PRAGMA_PACK_PUSH_POP): Don't test.
+
 2010-11-20  Nathan Froyd  <froydnj@codesourcery.com>
 
        PR c++/16189
index 9c00983596fc4b11c5ce2150d0e937a7cf0acf7e..2250bef9fc0de8311b41cd8a144adfd0591d9528 100644 (file)
@@ -54,10 +54,8 @@ typedef struct GTY(()) align_stack {
 
 static GTY(()) struct align_stack * alignment_stack;
 
-#ifdef HANDLE_PRAGMA_PACK
 static void handle_pragma_pack (cpp_reader *);
 
-#ifdef HANDLE_PRAGMA_PACK_PUSH_POP
 /* If we have a "global" #pragma pack(<n>) in effect when the first
    #pragma pack(push,<n>) is encountered, this stores the value of
    maximum_field_alignment in effect.  When the final pop_alignment()
@@ -125,13 +123,6 @@ pop_alignment (tree id)
 
   alignment_stack = entry;
 }
-#else  /* not HANDLE_PRAGMA_PACK_PUSH_POP */
-#define SET_GLOBAL_ALIGNMENT(ALIGN) (maximum_field_alignment = (ALIGN))
-#define push_alignment(ID, N) \
-    GCC_BAD ("#pragma pack(push[, id], <n>) is not supported on this target")
-#define pop_alignment(ID) \
-    GCC_BAD ("#pragma pack(pop[, id], <n>) is not supported on this target")
-#endif /* HANDLE_PRAGMA_PACK_PUSH_POP */
 
 /* #pragma pack ()
    #pragma pack (N)
@@ -244,7 +235,6 @@ handle_pragma_pack (cpp_reader * ARG_UNUSED (dummy))
     case pop:   pop_alignment (id);           break;
     }
 }
-#endif  /* HANDLE_PRAGMA_PACK */
 
 typedef struct GTY(()) pending_weak_d
 {
@@ -257,7 +247,6 @@ DEF_VEC_ALLOC_O(pending_weak,gc);
 
 static GTY(()) VEC(pending_weak,gc) *pending_weaks;
 
-#ifdef HANDLE_PRAGMA_WEAK
 static void apply_pragma_weak (tree, tree);
 static void handle_pragma_weak (cpp_reader *);
 
@@ -380,17 +369,6 @@ handle_pragma_weak (cpp_reader * ARG_UNUSED (dummy))
       pe->value = value;
     }
 }
-#else
-void
-maybe_apply_pragma_weak (tree ARG_UNUSED (decl))
-{
-}
-
-void
-maybe_apply_pending_pragma_weaks (void)
-{
-}
-#endif /* HANDLE_PRAGMA_WEAK */
 
 /* GCC supports two #pragma directives for renaming the external
    symbol associated with a declaration (DECL_ASSEMBLER_NAME), for
@@ -617,7 +595,6 @@ maybe_apply_renaming_pragma (tree decl, tree asmname)
 }
 
 
-#ifdef HANDLE_PRAGMA_VISIBILITY
 static void handle_pragma_visibility (cpp_reader *);
 
 static VEC (int, heap) *visstack;
@@ -710,8 +687,6 @@ handle_pragma_visibility (cpp_reader *dummy ATTRIBUTE_UNUSED)
     warning (OPT_Wpragmas, "junk at end of %<#pragma GCC visibility%>");
 }
 
-#endif
-
 static void
 handle_pragma_diagnostic(cpp_reader *ARG_UNUSED(dummy))
 {
@@ -1316,19 +1291,13 @@ init_pragma (void)
     cpp_register_deferred_pragma (parse_in, "GCC", "pch_preprocess",
                                  PRAGMA_GCC_PCH_PREPROCESS, false, false);
 
-#ifdef HANDLE_PRAGMA_PACK
 #ifdef HANDLE_PRAGMA_PACK_WITH_EXPANSION
   c_register_pragma_with_expansion (0, "pack", handle_pragma_pack);
 #else
   c_register_pragma (0, "pack", handle_pragma_pack);
 #endif
-#endif
-#ifdef HANDLE_PRAGMA_WEAK
   c_register_pragma (0, "weak", handle_pragma_weak);
-#endif
-#ifdef HANDLE_PRAGMA_VISIBILITY
   c_register_pragma ("GCC", "visibility", handle_pragma_visibility);
-#endif
 
   c_register_pragma ("GCC", "diagnostic", handle_pragma_diagnostic);
   c_register_pragma ("GCC", "target", handle_pragma_target);
index eab23db6cd9a6ce79deafee99190828bfab6eef6..1c29ec455eb56a913bb39fa226f2d32852200be6 100644 (file)
@@ -1,6 +1,6 @@
 /* Pragma related interfaces.
    Copyright (C) 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
-   2007, 2008  Free Software Foundation, Inc.
+   2007, 2008, 2009, 2010  Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -75,26 +75,9 @@ typedef enum pragma_omp_clause {
 
 extern struct cpp_reader* parse_in;
 
-#define HANDLE_PRAGMA_WEAK SUPPORTS_WEAK
-
-#ifdef HANDLE_SYSV_PRAGMA
-/* We always support #pragma pack for SYSV pragmas.  */
-#ifndef HANDLE_PRAGMA_PACK
-#define HANDLE_PRAGMA_PACK 1
-#endif
-#endif /* HANDLE_SYSV_PRAGMA */
-
-
-#ifdef HANDLE_PRAGMA_PACK_PUSH_POP
-/* If we are supporting #pragma pack(push... then we automatically
-   support #pragma pack(<n>)  */
-#define HANDLE_PRAGMA_PACK 1
-#endif /* HANDLE_PRAGMA_PACK_PUSH_POP */
-
 /* It's safe to always leave visibility pragma enabled as if
    visibility is not supported on the host OS platform the
    statements are ignored.  */
-#define HANDLE_PRAGMA_VISIBILITY 1
 extern void push_visibility (const char *, int);
 extern bool pop_visibility (int);
 
index 78b2858db5630b8f647644c989650afe48198328..78cafedb970bd78899b9825ddb27f19b9dc63aff 100644 (file)
@@ -400,9 +400,6 @@ do {                                                                        \
   "%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
    %{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s"
 
-/* We support #pragma.  */
-#define HANDLE_SYSV_PRAGMA 1
-
 /* Select a format to encode pointers in exception handling data.  CODE
    is 0 for data, 1 for code labels, 2 for function pointers.  GLOBAL is
    true if the symbol may be affected by dynamic relocations.
index 712d66d8656cfd1e539652a8a0fabe5814327b68..86b6594f45b33afd119e0c277f15c843c79da29a 100644 (file)
@@ -1,7 +1,7 @@
 /* Definitions of target machine for GNU compiler,
    for Alpha Linux-based GNU systems.
-   Copyright (C) 1996, 1997, 1998, 2002, 2003, 2004, 2005, 2006, 2007
-   Free Software Foundation, Inc.
+   Copyright (C) 1996, 1997, 1998, 2002, 2003, 2004, 2005, 2006, 2007, 2009,
+   2010 Free Software Foundation, Inc.
    Contributed by Richard Henderson.
 
 This file is part of GCC.
@@ -61,9 +61,6 @@ along with GCC; see the file COPYING3.  If not see
 #undef WCHAR_TYPE
 #define WCHAR_TYPE "int"
 
-/* Define this so that all GNU/Linux targets handle the same pragmas.  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP
-
 #define OPTION_GLIBC  (linux_libc == LIBC_GLIBC)
 
 /* Determine whether the entire c99 runtime is present in the
index 4f639e2137b8b6576026bc5c8aa04ec048f71a8e..84a3c248eca6c657018ef01b41fa74254d6d2534 100644 (file)
@@ -268,9 +268,6 @@ __enable_execute_stack (void *addr)                                 \
 #define TARGET_ASM_OPEN_PAREN ""
 #define TARGET_ASM_CLOSE_PAREN ""
 
-/* Handle #pragma weak and #pragma pack.  */
-#define HANDLE_SYSV_PRAGMA 1
-
 /* Handle #pragma extern_prefix.  */
 #define TARGET_HANDLE_PRAGMA_EXTERN_PREFIX 1
 
index 2c151a7e816ed7d51d056b2c88b305d650d2ad98..9985b67728ed56b1b92c06d650b9b0315fe3b5b6 100644 (file)
@@ -69,8 +69,6 @@ along with GCC; see the file COPYING3.  If not see
 #define POINTER_SIZE 32
 #define POINTERS_EXTEND_UNSIGNED 0
 
-#define HANDLE_SYSV_PRAGMA 1
-
 #define MAX_OFILE_ALIGNMENT 524288  /* 8 x 2^16 by DEC Ada Test CD40VRA */
 
 /* The maximum alignment 'malloc' honors.  */
index 483b2228e543020693b7ffaf814a1375b56113c6..b7df3239fb546e8e8dbe298b2c0a4f0b73e5a43a 100644 (file)
@@ -2097,9 +2097,6 @@ typedef struct
 #define ARM_INDEX_REGISTER_RTX_P(X)  \
   (GET_CODE (X) == REG && ARM_REG_OK_FOR_INDEX_P (X))
 \f
-/* Define this for compatibility reasons. */
-#define HANDLE_PRAGMA_PACK_PUSH_POP
-
 /* Specify the machine mode that this machine uses
    for the index in the tablejump instruction.  */
 #define CASE_VECTOR_MODE Pmode
index 4b8de79a4d45c18ccf5aa6648e733ceb057ceb76..4a1adbae9915c85ac5c5d303e1891af61faa4e77 100644 (file)
@@ -1,5 +1,5 @@
 /* NetBSD/arm a.out version.
-   Copyright (C) 1993, 1994, 1997, 1998, 2003, 2004, 2005, 2007, 2008
+   Copyright (C) 1993, 1994, 1997, 1998, 2003, 2004, 2005, 2007, 2008, 2010
    Free Software Foundation, Inc.
    Contributed by Mark Brinicombe (amb@physig.ph.kcl.ac.uk)
 
@@ -71,8 +71,6 @@
 #undef PTRDIFF_TYPE
 #define PTRDIFF_TYPE "int"
 
-#define HANDLE_SYSV_PRAGMA 1
-
 /* We don't have any limit on the length as out debugger is GDB.  */
 #undef DBX_CONTIN_LENGTH
 
index 943b0021608cd6ec3537a06ae85e3a623682e331..4049a6b4663c6701eec2270682491c24e39c382f 100644 (file)
@@ -1334,9 +1334,6 @@ enum cris_pic_symbol_type
 
 #define NO_IMPLICIT_EXTERN_C
 
-/* No specific purpose other than warningless compatibility.  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-
 /*
  * Local variables:
  * eval: (c-set-style "gnu")
index c80c2614e642ecbb77768c173c83b210dbe9fd39..086e428f2d4977f6174d60ea3543edf9a1b1645f 100644 (file)
@@ -869,11 +869,6 @@ enum machopic_addr_class {
 #undef TARGET_ASM_NAMED_SECTION
 #define TARGET_ASM_NAMED_SECTION darwin_asm_named_section
 
-/* Handle pragma weak and pragma pack.  */
-#define HANDLE_SYSV_PRAGMA 1
-
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-
 #define DARWIN_REGISTER_TARGET_PRAGMAS()                       \
   do {                                                         \
     if (!flag_preprocess_only)                                 \
index 8c415bad4421717ba6c673c27b90a2f85fbca6e8..e483216ef7fb45b6728f787cf68f83febd419057 100644 (file)
@@ -65,10 +65,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #define PCC_BITFIELD_TYPE_MATTERS 1
 #endif
 
-/* Handle #pragma weak and #pragma pack.  */
-
-#define HANDLE_SYSV_PRAGMA 1
-
 /* All ELF targets can support DWARF-2.  */
 
 #define DWARF2_DEBUGGING_INFO 1
index 1a7dac9630d7f5ff0bf0060aae68226250f7885e..51caad294be411b3a6ebec59989943cdec8505b4 100644 (file)
@@ -45,9 +45,6 @@ along with GCC; see the file COPYING3.  If not see
 #undef  LIB_SPEC
 #define LIB_SPEC FBSD_LIB_SPEC
 
-/* Define this so we can compile MS code for use with WINE.  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-
 /************************[  Target stuff  ]***********************************/
 
 /* All FreeBSD Architectures support the ELF object file format.  */
index b498c614ce51105233cae84fe30412c296b8fc82..49cee4cf334a8f2a618ec3d55f5306d063bd307e 100644 (file)
@@ -2306,13 +2306,6 @@ fprintf (STREAM, "\t.word .L%d\n", VALUE)
    `QImode'.  */
 #define FUNCTION_MODE QImode
 
-/* Define this macro to handle System V style pragmas: #pragma pack and
-   #pragma weak.  Note, #pragma weak will only be supported if SUPPORT_WEAK is
-   defined.
-
-   Defined in svr4.h.  */
-#define HANDLE_SYSV_PRAGMA 1
-
 /* A C expression for the maximum number of instructions to execute via
    conditional execution instructions instead of a branch.  A value of
    BRANCH_COST+1 is the default if the machine does not use
index 4ee2a04349e2dcb420edec4deab83b9742f8e977..28c3082bd599587491943501cf3fc84418658419 100644 (file)
@@ -178,9 +178,6 @@ along with GCC; see the file COPYING3.  If not see
 #undef LONG_TYPE_SIZE
 #define LONG_TYPE_SIZE 32
 \f
-/* Enable parsing of #pragma pack(push,<n>) and #pragma pack(pop).  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-
 union tree_node;
 #define TREE union tree_node *
 \f
index 2a8cef6842b473c0ffa2541a063604f318470bec..de355c4709dfb671ff7be770a8bab3a74f713316 100644 (file)
@@ -24,11 +24,6 @@ along with GCC; see the file COPYING3.  If not see
 /* Don't assume anything about the header files.  */
 #define NO_IMPLICIT_EXTERN_C
 
-#define HANDLE_SYSV_PRAGMA 1
-
-/* Enable parsing of #pragma pack(push,<n>) and #pragma pack(pop).  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-
 /* If defined, a C expression whose value is a string containing the
    assembler operation to identify the following data as
    uninitialized global data.  If not defined, and neither
index c92e42e92926931c9cdfd739d7d69d617b103e88..a2f579a1c443b71d1cd0a109ab8c37b348b04adb 100644 (file)
@@ -1,6 +1,6 @@
 /* Target definitions for GCC for Intel 80386 running Interix
-   Parts Copyright (C) 1991, 1999, 2000, 2002, 2003, 2004, 2007, 2008
-   Free Software Foundation, Inc.
+   Parts Copyright (C) 1991, 1999, 2000, 2002, 2003, 2004, 2007, 2008, 2009,
+   2010 Free Software Foundation, Inc.
 
    Parts:
      by Douglas B. Rupp (drupp@cs.washington.edu).
@@ -30,9 +30,6 @@ along with GCC; see the file COPYING3.  If not see
 #define SDB_DEBUGGING_INFO 1
 #define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
 
-#define HANDLE_SYSV_PRAGMA 1
-#undef HANDLE_PRAGMA_WEAK  /* until the link format can handle it */
-
 /* By default, target has a 80387, uses IEEE compatible arithmetic,
    and returns float values in the 387 and needs stack probes
    We also align doubles to 64-bits for MSVC default compatibility
index 6b423e36fc14e1cc7f1690cd4a6fa33436a55f5b..7f90e1dd8141c3c82f5f17a2e07bb1d78331e48d 100644 (file)
@@ -1,6 +1,7 @@
 /* Core target definitions for GCC for Intel 80x86 running Netware.
    and using dwarf for the debugging format.
-   Copyright (C) 1993, 1994, 2004, 2007, 2008 Free Software Foundation, Inc.
+   Copyright (C) 1993, 1994, 2004, 2007, 2008, 2009, 2010
+   Free Software Foundation, Inc.
 
    Written by David V. Henkel-Wallace (gumby@cygnus.com)
 
@@ -104,9 +105,6 @@ do {                                                                        \
 #undef DBX_REGISTER_NUMBER
 #define DBX_REGISTER_NUMBER(n) (svr4_dbx_register_map[n])
 
-/* Enable parsing of #pragma pack(push,<n>) and #pragma pack(pop).  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP
-
 /* Default structure packing is 1-byte. */
 #define TARGET_DEFAULT_PACK_STRUCT 1
 
index fe5630004894c292e66d9cb89966129fac9fa3bc..f7f929850162d41d725a9a2f762806ab53506144 100644 (file)
@@ -1,5 +1,5 @@
 /* IA32 VxWorks target definitions for GNU compiler.
-   Copyright (C) 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2004, 2005, 2007, 2010 Free Software Foundation, Inc.
    Updated by CodeSourcery, LLC.
 
 This file is part of GCC.
@@ -18,8 +18,6 @@ You should have received a copy of the GNU General Public License
 along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
-#define HANDLE_SYSV_PRAGMA 1
-
 #undef  TARGET_VERSION
 #define TARGET_VERSION fprintf (stderr, " (80586, VxWorks syntax)");
 
index c0dae0ae9ea65e14b8c17c19fc736504f387545a..b422441d343bfaf82aa40ac9ee0661ddd815e524 100644 (file)
@@ -1,5 +1,5 @@
 /* Definitions of target machine GNU compiler.  IA-64 version.
-   Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007
+   Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010
    Free Software Foundation, Inc.
    Contributed by Steve Ellcey <sje@cup.hp.com> and
                   Reva Cuthbertson <reva@cup.hp.com>
@@ -213,9 +213,6 @@ do {                                                                \
 #undef NO_PROFILE_COUNTERS
 #define NO_PROFILE_COUNTERS 0
 
-#undef HANDLE_PRAGMA_PACK_PUSH_POP
-#define HANDLE_PRAGMA_PACK_PUSH_POP
-
 /* The HP-UX linker has a bug that causes calls from functions in
    .text.unlikely to functions in .text to cause a segfault.  Until
    it is fixed, prevent code from being put into .text.unlikely or
index e2705589b811daa84b9d9837e85a16f54465d6c2..0b512f25cc87c897c40a985b60362097b2a1491b 100644 (file)
@@ -1778,12 +1778,6 @@ do {                                                                     \
 
 #define FUNCTION_MODE Pmode
 
-/* Define this macro to handle System V style pragmas: #pragma pack and
-   #pragma weak.  Note, #pragma weak will only be supported if SUPPORT_WEAK is
-   defined.  */
-
-#define HANDLE_SYSV_PRAGMA 1
-
 /* A C expression for the maximum number of instructions to execute via
    conditional execution instructions instead of a branch.  A value of
    BRANCH_COST+1 is the default if the machine does not use
index 658c534277a00d122e2cb16504a498d164ff7748..aa3871214e82a413c481c027779b9a41c38cae21 100644 (file)
@@ -61,9 +61,6 @@ for windows/multi thread */
 
 #define STDC_0_IN_SYSTEM_HEADERS 1
 
-#define HANDLE_SYSV_PRAGMA 1
-#undef HANDLE_PRAGMA_WEAK  /* until the link format can handle it */
-
 /* Names to predefine in the preprocessor for this target machine.  */
 
 #define DBX_DEBUGGING_INFO 1
index 7c0ca95db42e0f047ec71b11e45dbe4f296223bb..4f3b4b8681a797fd7914701db52b0021b9ceebc8 100644 (file)
@@ -102,9 +102,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
 #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
 #endif
 
-/* Define this so we can compile MS code for use with WINE.  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP
-
 #undef LINK_GCC_C_SEQUENCE_SPEC
 #define LINK_GCC_C_SEQUENCE_SPEC \
   "%{static:--start-group} %G %L %{static:--end-group}%{!static:%G}"
index 0515e5b3b44bf87f2ef3d05e58786fee16ebf2ef..9856e81fa2611edd26a53efda8f37abda8492e7d 100644 (file)
@@ -1,5 +1,5 @@
 /* Definitions for Renesas M32R running Linux-based GNU systems using ELF.
-   Copyright (C) 2003, 2004, 2006, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2003, 2004, 2006, 2007, 2010 Free Software Foundation, Inc.
 
    This file is part of GCC.
 
    supposed to be outputting something that will assemble under SVr4.
    This gets us pretty close.  */
 
-#define HANDLE_SYSV_PRAGMA
-
-#undef  HANDLE_PRAGMA_PACK
-
 #undef  TARGET_VERSION
 #define TARGET_VERSION fprintf (stderr, " (M32R GNU/Linux with ELF)");
 
index d24cda6e82c99f24ac6fa7a7d3658100788a034f..72e3dc9798bb8ca02c3637b17fe3d7d0e05822ad 100644 (file)
@@ -22,7 +22,6 @@
 - longlong.h?
 */
 
-#undef HANDLE_SYSV_PRAGMA
 #undef SIZE_TYPE
 #undef PTRDIFF_TYPE
 #undef WCHAR_TYPE
index 48d05b68d812028810188e9b9c1c585ca250ca12..9a7b285cb8826b1205575377382e7f174bae3d41 100644 (file)
@@ -804,8 +804,6 @@ typedef struct
 
 #define REGISTER_TARGET_PRAGMAS()       mep_register_pragmas ()
 
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-   
 /* If defined, a C expression to determine the base term of address X.
    This macro is used in only one place: `find_base_term' in alias.c.
 
index 8967b3d1715014c217a1b1de86f6a95156fc7b66..572553742f43e7323ff9ac2c652183e7f4234da5 100644 (file)
@@ -1,5 +1,5 @@
 /* Target macros for mips*-elf targets.
-   Copyright (C) 1994, 1997, 1999, 2000, 2002, 2003, 2004, 2007
+   Copyright (C) 1994, 1997, 1999, 2000, 2002, 2003, 2004, 2007, 2010
    Free Software Foundation, Inc.
 
 This file is part of GCC.
@@ -49,5 +49,3 @@ along with GCC; see the file COPYING3.  If not see
 #define ENDFILE_SPEC "crtend%O%s crtn%O%s"
 
 #define NO_IMPLICIT_EXTERN_C 1
-
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
index 29eaccc87242345bdeb2e8a0dc2fdbb3e24e0a86..dfa40b91a9410ef4abb0f0f589683f08924c1ac9 100644 (file)
@@ -94,9 +94,6 @@ along with GCC; see the file COPYING3.  If not see
 #undef PTRDIFF_TYPE
 #define PTRDIFF_TYPE "long int"
 
-/* Enable parsing of #pragma pack(push,<n>) and #pragma pack(pop).  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-
 /* Use standard ELF-style local labels (not '$' as on early Irix).  */
 #undef LOCAL_LABEL_PREFIX
 #define LOCAL_LABEL_PREFIX "."
index 251c88b938f72fd3ded1e1450754ef46b113cde1..1d8665bdf3b585b550756dddd405f7de5af55753 100644 (file)
@@ -887,8 +887,6 @@ typedef struct { int regs; int lib; } CUMULATIVE_ARGS;
 
 #define NO_IMPLICIT_EXTERN_C
 
-#define HANDLE_SYSV_PRAGMA 1
-
 /* These are checked.  */
 #define DOLLARS_IN_IDENTIFIERS 0
 #define NO_DOLLAR_IN_LABEL
index 4f82809c8c18bc0f0955ec7041a558cc6568b2b0..ddf6567dc5311d60c07c8cf763904e1c640e5a66 100644 (file)
@@ -1,6 +1,6 @@
 /* Base configuration file for all NetBSD targets.
    Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-   2007 Free Software Foundation, Inc.
+   2007, 2009, 2010 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -158,10 +158,6 @@ along with GCC; see the file COPYING3.  If not see
 #undef TARGET_POSIX_IO
 #define TARGET_POSIX_IO
 
-/* Handle #pragma weak and #pragma pack.  */
-
-#define HANDLE_SYSV_PRAGMA 1
-
 /* Don't assume anything about the header files.  */
 #undef  NO_IMPLICIT_EXTERN_C
 #define NO_IMPLICIT_EXTERN_C    1
@@ -224,6 +220,3 @@ __enable_execute_stack (void *addr)                                 \
   /* 7 == PROT_READ | PROT_WRITE | PROT_EXEC */                                \
   (void) mprotect (page, end - page, 7);                               \
 }
-
-/* Define this so we can compile MS code for use with WINE.  */
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
index d15dff15f98f3b7977275ac78ba9e3b5f61ea7b7..b1076a7b4d6c7ecbcb4db20f180d9d620e070879 100644 (file)
@@ -282,12 +282,6 @@ do {                                                                        \
 /* Storage layout.  */
 
 \f
-/* bug work around: we don't want to support #pragma weak, but the current
-   code layout needs HANDLE_PRAGMA_WEAK asserted for __attribute((weak)) to
-   work.  On the other hand, we don't define HANDLE_PRAGMA_WEAK directly,
-   as this depends on a few other details as well...  */
-#define HANDLE_SYSV_PRAGMA 1
-
 /* Stack is explicitly denied execution rights on OpenBSD platforms.  */
 #define ENABLE_EXECUTE_STACK                                           \
 extern void __enable_execute_stack (void *);                           \
index b600b0e3d4c543e06c28aba5a3ffbb9ce376e526..69a9d1905f7bbb3f335ad8005ebb538d02ec02e0 100644 (file)
@@ -1,5 +1,5 @@
 /* Definitions of target machine for GNU compiler, for HP-UX.
-   Copyright (C) 1991, 1995, 1996, 2002, 2003, 2004, 2007, 2008
+   Copyright (C) 1991, 1995, 1996, 2002, 2003, 2004, 2007, 2008, 2009, 2010
    Free Software Foundation, Inc.
 
 This file is part of GCC.
@@ -114,12 +114,4 @@ along with GCC; see the file COPYING3.  If not see
 #undef TARGET_HPUX_UNWIND_LIBRARY
 #define TARGET_HPUX_UNWIND_LIBRARY 1
 
-/* Handle #pragma weak and #pragma pack.  */
-#undef HANDLE_SYSV_PRAGMA
-#define HANDLE_SYSV_PRAGMA
-
-/* Define this so we can compile MS code for use with WINE.  */
-#undef HANDLE_PRAGMA_PACK_PUSH_POP
-#define HANDLE_PRAGMA_PACK_PUSH_POP
-
 #define MD_UNWIND_SUPPORT "config/pa/hpux-unwind.h"
index 9d5a380a40d2f2c7a4dbd9b1cb76ee30fb9ab492..7f60d329beda3ac98707ddffa8a799b77dd0552f 100644 (file)
@@ -56,9 +56,6 @@
 #define ASM_OUTPUT_DWARF_TABLE_REF rs6000_aix_asm_output_dwarf_table_ref
 #endif
 
-/* Handle #pragma weak and #pragma pack.  */
-#define HANDLE_SYSV_PRAGMA 1
-
 /* This is the only version of nm that collect2 can work with.  */
 #define REAL_NM_FILE_NAME "/usr/ucb/nm"
 
index d557ce1626a1c0f4c51edb2e0581141b24ffb528..ae27682a6827f3d1b631611420af0a7255e41538 100644 (file)
@@ -1062,18 +1062,6 @@ ncrtn.o%s"
 /* Function name to call to do profiling.  */
 #define RS6000_MCOUNT "_mcount"
 
-/* Define this macro (to a value of 1) if you want to support the
-   Win32 style pragmas #pragma pack(push,<n>)' and #pragma
-   pack(pop)'.  The pack(push,<n>) pragma specifies the maximum
-   alignment (in bytes) of fields within a structure, in much the
-   same way as the __aligned__' and __packed__' __attribute__'s
-   do.  A pack value of zero resets the behavior to the default.
-   Successive invocations of this pragma cause the previous values to
-   be stacked, so that invocations of #pragma pack(pop)' will return
-   to the previous value.  */
-
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-
 /* Select a format to encode pointers in exception handling data.  CODE
    is 0 for data, 1 for code labels, 2 for function pointers.  GLOBAL is
    true if the symbol may be affected by dynamic relocations.  */
index 9eb25e8aa224aaac8b579c533d19c8887de48bdd..233fac2f3dcfc60ed806f399b444801a18dbd69c 100644 (file)
@@ -151,8 +151,6 @@ extern enum rx_cpu_types  rx_cpu_type;
 
 #define LEGITIMATE_CONSTANT_P(X)       rx_is_legitimate_constant (X)
 
-#define HANDLE_PRAGMA_PACK_PUSH_POP    1
-
 #define HAVE_PRE_DECCREMENT            1
 #define HAVE_POST_INCREMENT            1
 
index d04373ecd85affed3687f0781be406dd8c887839..30fc7f016cc1f047c1d3be7fb10fbc54d6c9e905 100644 (file)
@@ -1,5 +1,5 @@
 /* elf.h for Sunplus S+CORE processor
-   Copyright (C) 2005, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2005, 2007, 2010 Free Software Foundation, Inc.
 
    This file is part of GCC.
 
@@ -95,6 +95,3 @@
 
 #undef  ENDFILE_SPEC
 #define ENDFILE_SPEC            "crtend%O%s crtn%O%s"
-
-/* We support #pragma.  */
-#define HANDLE_SYSV_PRAGMA      1
index 98d2f24573feb739a1ce12cdb5ac806a7e173fae..b5e054b18d9c570bc6b9fdd999f3096a9879600c 100644 (file)
@@ -512,8 +512,6 @@ targetm.resolve_overloaded_builtin = spu_resolve_overloaded_builtin;        \
 
 #define NO_IMPLICIT_EXTERN_C 1
 
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
-
 /* Canonicalize a comparison from one we don't have to one we do have.  */
 #define CANONICALIZE_COMPARISON(CODE,OP0,OP1) \
   do {                                                                    \
index 1ac73c41b9b3a3192004a53667629ad330b9b93b..1781bc3adea05ee6a20fef6033a2081c0dde081d 100644 (file)
@@ -587,5 +587,3 @@ enum reg_class
 #define FUNCTION_MODE HImode
 
 #define NO_IMPLICIT_EXTERN_C
-
-#define HANDLE_SYSV_PRAGMA 1
index f0d18059539c4cadc082929aad0e688396d39f77..90b1c717666984ed13c45b338d4c677623c8709b 100644 (file)
@@ -1,6 +1,6 @@
 /* Xtensa/Elf configuration.
    Derived from the configuration for GCC for Intel i386 running Linux.
-   Copyright (C) 2001, 2003, 2006, 2007 Free Software Foundation, Inc.
+   Copyright (C) 2001, 2003, 2006, 2007, 2010 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -98,5 +98,3 @@ do \
              "GCC", PREFIX_PRIORITY_LAST, 0, 0); \
   } \
 while (0)
-
-#define HANDLE_PRAGMA_PACK_PUSH_POP 1
index 8d3b7770b4a9846bf060216743c8524412aface0..6daf31b38a802077de574ff6e8dfe84cac39786b 100644 (file)
@@ -1,3 +1,10 @@
+2010-11-20  Joseph Myers  <joseph@codesourcery.com>
+
+       * name-lookup.c (handle_namespace_attrs): Don't check
+       HANDLE_PRAGMA_VISIBILITY.
+       * parser.c (cp_parser_namespace_definition): Don't check
+       HANDLE_PRAGMA_VISIBILITY.
+
 2010-11-20  Nathan Froyd  <froydnj@codesourcery.com>
 
        PR c++/16189
index 5fe60f904586b44584528ca3ae4722823226a328..dc735443db251ad3e836aa88d56622f9f3bac38e 100644 (file)
@@ -3239,7 +3239,6 @@ handle_namespace_attrs (tree ns, tree attributes)
       tree name = TREE_PURPOSE (d);
       tree args = TREE_VALUE (d);
 
-#ifdef HANDLE_PRAGMA_VISIBILITY
       if (is_attribute_p ("visibility", name))
        {
          tree x = args ? TREE_VALUE (args) : NULL_TREE;
@@ -3260,7 +3259,6 @@ handle_namespace_attrs (tree ns, tree attributes)
          saw_vis = true;
        }
       else
-#endif
        {
          warning (OPT_Wattributes, "%qD attribute directive ignored",
                   name);
index 14961ce3ee946b386bb21a16badfbb03d4ca45c5..3ed0579538a9a2f450410d5e01ee7f23f9747eaa 100644 (file)
@@ -13838,10 +13838,8 @@ cp_parser_namespace_definition (cp_parser* parser)
   /* Parse the body of the namespace.  */
   cp_parser_namespace_body (parser);
 
-#ifdef HANDLE_PRAGMA_VISIBILITY
   if (has_visibility)
     pop_visibility (1);
-#endif
 
   /* Finish the namespace.  */
   pop_namespace ();
index 1639e943c9f20fcbcee8291017fd450097f0b205..58d5bbd55f739b9f974ae30aa261838fc6cc5323 100644 (file)
@@ -10666,55 +10666,8 @@ rule to the makefile fragment pointed to by @code{tmake_file} that shows
 how to build this object file.
 @end deftypefun
 
-@findex #pragma
-@findex pragma
-@defmac HANDLE_SYSV_PRAGMA
-Define this macro (to a value of 1) if you want the System V style
-pragmas @samp{#pragma pack(<n>)} and @samp{#pragma weak <name>
-[=<value>]} to be supported by gcc.
-
-The pack pragma specifies the maximum alignment (in bytes) of fields
-within a structure, in much the same way as the @samp{__aligned__} and
-@samp{__packed__} @code{__attribute__}s do.  A pack value of zero resets
-the behavior to the default.
-
-A subtlety for Microsoft Visual C/C++ style bit-field packing
-(e.g.@: -mms-bitfields) for targets that support it:
-When a bit-field is inserted into a packed record, the whole size
-of the underlying type is used by one or more same-size adjacent
-bit-fields (that is, if its long:3, 32 bits is used in the record,
-and any additional adjacent long bit-fields are packed into the same
-chunk of 32 bits.  However, if the size changes, a new field of that
-size is allocated).
-
-If both MS bit-fields and @samp{__attribute__((packed))} are used,
-the latter will take precedence.  If @samp{__attribute__((packed))} is
-used on a single field when MS bit-fields are in use, it will take
-precedence for that field, but the alignment of the rest of the structure
-may affect its placement.
-
-The weak pragma only works if @code{SUPPORTS_WEAK} and
-@code{ASM_WEAKEN_LABEL} are defined.  If enabled it allows the creation
-of specifically named weak labels, optionally with a value.
-@end defmac
-
-@findex #pragma
-@findex pragma
-@defmac HANDLE_PRAGMA_PACK_PUSH_POP
-Define this macro (to a value of 1) if you want to support the Win32
-style pragmas @samp{#pragma pack(push[,@var{n}])} and @samp{#pragma
-pack(pop)}.  The @samp{pack(push,[@var{n}])} pragma specifies the maximum
-alignment (in bytes) of fields within a structure, in much the same way as
-the @samp{__aligned__} and @samp{__packed__} @code{__attribute__}s do.  A
-pack value of zero resets the behavior to the default.  Successive
-invocations of this pragma cause the previous values to be stacked, so
-that invocations of @samp{#pragma pack(pop)} will return to the previous
-value.
-@end defmac
-
 @defmac HANDLE_PRAGMA_PACK_WITH_EXPANSION
-Define this macro, as well as
-@code{HANDLE_SYSV_PRAGMA}, if macros should be expanded in the
+Define this macro if macros should be expanded in the
 arguments of @samp{#pragma pack}.
 @end defmac
 
index 502145e28fa7679d89d8a8af82a3f7114d1ca527..d9fed9bdadfe6396724c011166baea7a55fa5bf3 100644 (file)
@@ -10628,55 +10628,8 @@ rule to the makefile fragment pointed to by @code{tmake_file} that shows
 how to build this object file.
 @end deftypefun
 
-@findex #pragma
-@findex pragma
-@defmac HANDLE_SYSV_PRAGMA
-Define this macro (to a value of 1) if you want the System V style
-pragmas @samp{#pragma pack(<n>)} and @samp{#pragma weak <name>
-[=<value>]} to be supported by gcc.
-
-The pack pragma specifies the maximum alignment (in bytes) of fields
-within a structure, in much the same way as the @samp{__aligned__} and
-@samp{__packed__} @code{__attribute__}s do.  A pack value of zero resets
-the behavior to the default.
-
-A subtlety for Microsoft Visual C/C++ style bit-field packing
-(e.g.@: -mms-bitfields) for targets that support it:
-When a bit-field is inserted into a packed record, the whole size
-of the underlying type is used by one or more same-size adjacent
-bit-fields (that is, if its long:3, 32 bits is used in the record,
-and any additional adjacent long bit-fields are packed into the same
-chunk of 32 bits.  However, if the size changes, a new field of that
-size is allocated).
-
-If both MS bit-fields and @samp{__attribute__((packed))} are used,
-the latter will take precedence.  If @samp{__attribute__((packed))} is
-used on a single field when MS bit-fields are in use, it will take
-precedence for that field, but the alignment of the rest of the structure
-may affect its placement.
-
-The weak pragma only works if @code{SUPPORTS_WEAK} and
-@code{ASM_WEAKEN_LABEL} are defined.  If enabled it allows the creation
-of specifically named weak labels, optionally with a value.
-@end defmac
-
-@findex #pragma
-@findex pragma
-@defmac HANDLE_PRAGMA_PACK_PUSH_POP
-Define this macro (to a value of 1) if you want to support the Win32
-style pragmas @samp{#pragma pack(push[,@var{n}])} and @samp{#pragma
-pack(pop)}.  The @samp{pack(push,[@var{n}])} pragma specifies the maximum
-alignment (in bytes) of fields within a structure, in much the same way as
-the @samp{__aligned__} and @samp{__packed__} @code{__attribute__}s do.  A
-pack value of zero resets the behavior to the default.  Successive
-invocations of this pragma cause the previous values to be stacked, so
-that invocations of @samp{#pragma pack(pop)} will return to the previous
-value.
-@end defmac
-
 @defmac HANDLE_PRAGMA_PACK_WITH_EXPANSION
-Define this macro, as well as
-@code{HANDLE_SYSV_PRAGMA}, if macros should be expanded in the
+Define this macro if macros should be expanded in the
 arguments of @samp{#pragma pack}.
 @end defmac
 
index a4f1da6c1704affd5c8e5307c6ac7a2b0b511938..42332b3bd0138592fcb53709621e42e78e3770d5 100644 (file)
@@ -777,7 +777,8 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
        ORDER_REGS_FOR_LOCAL_ALLOC FUNCTION_OUTGOING_VALUE                 \
        ASM_DECLARE_CONSTANT_NAME MODIFY_TARGET_NAME SWITCHES_NEED_SPACES  \
        SWITCH_CURTAILS_COMPILATION SWITCH_TAKES_ARG WORD_SWITCH_TAKES_ARG \
-       TARGET_OPTION_TRANSLATE_TABLE
+       TARGET_OPTION_TRANSLATE_TABLE HANDLE_PRAGMA_PACK_PUSH_POP          \
+       HANDLE_SYSV_PRAGMA HANDLE_PRAGMA_WEAK
 
 /* Hooks that are no longer used.  */
  #pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE  \
index 1d6a14ad0177451f6449ad31ab8b93514ac564e2..87e7ab5c5e4a06aae81a02a16e1046d04aa914f9 100644 (file)
@@ -1,3 +1,13 @@
+2010-11-20  Joseph Myers  <joseph@codesourcery.com>
+
+       * g++.dg/cpp/_Pragma1.C: Test for all non-Solaris targets.
+       * gcc.dg/cpp/_Pragma6.c: Test for all non-Solaris targets.
+       * gcc.dg/pack-test-1.c: Test for all non-default_packed targets.
+       * gcc.dg/pack-test-2.c: Test for all targets.
+       * gcc.dg/pragma-align.c: Test for all targets.
+       * gcc.dg/pragma-pack-4.c: Do not skip for AVR.
+       * gcc.dg/ucnid-10.c: Test for all targets.
+
 2010-11-20  Eric Botcazou  <ebotcazou@adacore.com>
 
        * gcc.target/sparc/sparc-align-1.c: New test.
index 2ca13efbdb1a18f71ea185ba0bcaf26edb52f56d..2a4086b8125a853f2cb9557eea79354dd3eba993 100644 (file)
@@ -1,8 +1,7 @@
 // PR c++/27748
 // This is supposed to succeed only if
-// the target defines HANDLE_PRAGMA_PACK_PUSH_POP 
-// and doesn't define HANDLE_PRAGMA_PACK_WITH_EXPANSION.
-// { dg-do compile { target { ! { powerpc-ibm-aix* *-*-solaris2* fido-*-* m68k-*-* mips-sgi-irix* sh*-[us]*-elf m32c-*-* *-*-vxworks alpha*-dec-osf* } } } }
+// the target doesn't define HANDLE_PRAGMA_PACK_WITH_EXPANSION.
+// { dg-do compile { target { ! { *-*-solaris2* } } } }
 
 #define push bar
 #define foo _Pragma ("pack(push)")
index dfdaf792ef6a1f2fe253e9955ec7b051d1159eaa..7f3f7763e7505be8e8af5ed842a7d9fc32f319c1 100644 (file)
@@ -1,8 +1,7 @@
 /* PR c/27747 */
 /* This is supposed to succeed only if
-   the target defines HANDLE_PRAGMA_PACK_PUSH_POP
-   and doesn't define HANDLE_PRAGMA_PACK_WITH_EXPANSION.  */
-/* { dg-do compile { target { ! { powerpc-ibm-aix* *-*-solaris2* fido-*-* m68k-*-* sh*-[us]*-elf m32c-*-* *-*-vxworks moxie-*-* mips-sgi-irix* alpha*-dec-osf* } } } } */
+   the target doesn't define HANDLE_PRAGMA_PACK_WITH_EXPANSION.  */
+/* { dg-do compile { target { ! { *-*-solaris2* } } } } */
 
 #define push bar
 #define foo _Pragma ("pack(push)")
index 8bd3f6c7528e74219aa56258cbbcb474b14dbd85..e019e7837919afdf4858aec78181f71bc297f187 100644 (file)
@@ -1,7 +1,7 @@
 /* Test semantics of #pragma pack.
    Contributed by Mike Coleman <mcoleman2@kc.rr.com> */
 
-/* { dg-do compile { target { { *-*-linux* *-*-cygwin* powerpc*-*-eabi* } && { ! default_packed } } } } */
+/* { dg-do compile { target { ! default_packed } } } */
 
 /* Mainly we're just testing whether pushing and popping seem to be
    working correctly, and verifying the (alignment == 1) case, which
index 86e4d8df4acd2ac43d6dec9e9a52f3bede731df1..5c2f6ae466270f1f3cfa58b177d790f9ed2529cb 100644 (file)
@@ -1,7 +1,7 @@
 /* Tests for syntax checking of #pragma pack.
    Contributed by Mike Coleman <mcoleman2@kc.rr.com> */
 
-/* { dg-do compile { target *-*-linux* *-*-cygwin* powerpc*-*-eabi* } } */
+/* { dg-do compile } */
 
 #pragma pack(pop)               /* { dg-warning "without matching" } */
 
index c1b4ded37320b03c75c7bb6d58aa386c10641d86..3569a1fb24127d58b72c874121a88489f9bd0767 100644 (file)
@@ -1,6 +1,6 @@
-/* Prove that HANDLE_SYSTEMV_PRAGMA alignment handling works somewhat. */
+/* Prove that pragma alignment handling works somewhat. */
 
-/* { dg-do run { target i?86-*-linux* x86_64-*-linux* i?86-*-*bsd* *-*-solaris2.* } } */
+/* { dg-do run } */
 
 extern void abort (void);
 
index 05a24e5d6a507f664e08f898bfc7381a2b1d8e6e..c2ea59e9dacee28a1365fe9fa9ae75610d0eda46 100644 (file)
@@ -1,6 +1,5 @@
 /* PR c/28286 */
 /* { dg-do compile } */
-/* { dg-skip-if "no Pragma pack" { "avr-*-*" } { "*" } { "" } } */
 
 
 #pragma pack(0.5)         /* { dg-warning "invalid constant" } */
index 39148108b3330e9650acd12d4910e7e06541572e..bbcde1ff6052e4d8d0c6207a7915132d335d1f6f 100644 (file)
@@ -1,6 +1,6 @@
 /* Verify diagnostics for extended identifiers refer to UCNs (in the C
    locale).  Test #pragma pack diagnostics.  */
-/* { dg-do compile { target *-*-linux* *-*-cygwin* powerpc*-*-eabi* } } */
+/* { dg-do compile } */
 /* { dg-options "-std=gnu99 -fextended-identifiers" } */
 
 #pragma pack(push)