[PATCH] Deprecate -frepo option.
authorNathan Sidwell <nathan@acm.org>
Fri, 6 Sep 2019 12:51:44 +0000 (12:51 +0000)
committerNathan Sidwell <nathan@gcc.gnu.org>
Fri, 6 Sep 2019 12:51:44 +0000 (12:51 +0000)
https://gcc.gnu.org/ml/gcc-patches/2019-09/msg00379.html
PR c++/91125
* cp-tree.h (IDENTIFIER_REPO_CHOSEN, DECL_REPO_AVAILABLE_P): Delete.
(struct lang_decl_base): Remove repo_available_p.
* decl.c (duplicate_decls): Don't copy DECL_REPO_AVAILABLE_P.

From-SVN: r275456

gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/decl.c

index 28285d9e182b03aa31fc8402392fe9f1b29353e8..48582cea2f21bd377bf42f0288d011ae402e8647 100644 (file)
@@ -1,7 +1,11 @@
 2019-09-06  Nathan Sidwell  <nathan@acm.org>
 
-       Reserve TREE_LANG_FLAG_3 for modules.
-       gcc/cp/
+       PR c++/91125
+       * cp-tree.h (IDENTIFIER_REPO_CHOSEN, DECL_REPO_AVAILABLE_P): Delete.
+       (struct lang_decl_base): Remove repo_available_p.
+       * decl.c (duplicate_decls): Don't copy DECL_REPO_AVAILABLE_P.
+
+       (Reserve TREE_LANG_FLAG_3 for modules.
        * cp-tree.h (DECL_CONSTRUCTION_VTABLE_P): Delete.
        (DECL_NON_TRIVIALLY_INITIALIZED_P): Move to TREE_LANG_FLAG_6.
        * class.c (build_ctor_vtbl_group): Don't set
index 60e0846020a05c57d2bb6a3ec57eaef9306d72ef..95e5eda7e87ced9bac476a6d4fd066ddc63743c5 100644 (file)
@@ -465,8 +465,7 @@ extern GTY(()) tree cp_global_trees[CPTI_MAX];
       FUNCTION_RVALUE_QUALIFIED (in FUNCTION_TYPE, METHOD_TYPE)
       CALL_EXPR_REVERSE_ARGS (in CALL_EXPR, AGGR_INIT_EXPR)
       CONSTRUCTOR_PLACEHOLDER_BOUNDARY (in CONSTRUCTOR)
-   6: IDENTIFIER_REPO_CHOSEN (in IDENTIFIER_NODE)
-      TYPE_MARKED_P (in _TYPE)
+   6: TYPE_MARKED_P (in _TYPE)
       DECL_NON_TRIVIALLY_INITIALIZED_P (in VAR_DECL)
       RANGE_FOR_IVDEP (in RANGE_FOR_STMT)
       CALL_EXPR_OPERATOR_SYNTAX (in CALL_EXPR, AGGR_INIT_EXPR)
@@ -1112,12 +1111,6 @@ enum cp_identifier_kind {
 #define IDENTIFIER_VIRTUAL_P(NODE) \
   TREE_LANG_FLAG_5 (IDENTIFIER_NODE_CHECK (NODE))
 
-/* True iff NAME is the DECL_ASSEMBLER_NAME for an entity with vague
-   linkage which the prelinker has assigned to this translation
-   unit.  */
-#define IDENTIFIER_REPO_CHOSEN(NAME) \
-  (TREE_LANG_FLAG_6 (IDENTIFIER_NODE_CHECK (NAME)))
-
 /* True if this identifier is a reserved word.  C_RID_CODE (node) is
    then the RID_* value of the keyword.  Value 1.  */
 #define IDENTIFIER_KEYWORD_P(NODE)             \
@@ -2590,7 +2583,6 @@ struct GTY(()) lang_decl_base {
   unsigned use_template : 2;
   unsigned not_really_extern : 1;         /* var or fn */
   unsigned initialized_in_class : 1;      /* var or fn */
-  unsigned repo_available_p : 1;          /* var or fn */
   unsigned threadprivate_or_deleted_p : 1; /* var or fn */
   unsigned anticipated_p : 1;             /* fn, type or template */
   /* anticipated_p reused as DECL_OMP_PRIVATIZED_MEMBER in var */
@@ -2601,7 +2593,7 @@ struct GTY(()) lang_decl_base {
   unsigned concept_p : 1;                  /* applies to vars and functions */
   unsigned var_declared_inline_p : 1;     /* var */
   unsigned dependent_init_p : 1;          /* var */
-  /* 1 spare bit */
+  /* 2 spare bits */
 };
 
 /* True for DECL codes which have template info and access.  */
@@ -3162,11 +3154,6 @@ struct GTY(()) lang_decl {
 #define DECL_EXTERN_C_FUNCTION_P(NODE) \
   (DECL_NON_THUNK_FUNCTION_P (NODE) && DECL_EXTERN_C_P (NODE))
 
-/* True iff DECL is an entity with vague linkage whose definition is
-   available in this translation unit.  */
-#define DECL_REPO_AVAILABLE_P(NODE) \
-  (DECL_LANG_SPECIFIC (NODE)->u.base.repo_available_p)
-
 /* True if DECL is declared 'constexpr'.  */
 #define DECL_DECLARED_CONSTEXPR_P(DECL) \
   DECL_LANG_FLAG_8 (VAR_OR_FUNCTION_DECL_CHECK (STRIP_TEMPLATE (DECL)))
index 825e1e61b5eb9100b9885d35daa6418277e2d919..88e2c3beb2bcc51d31868948f199c548296cc4e8 100644 (file)
@@ -2388,7 +2388,6 @@ duplicate_decls (tree newdecl, tree olddecl, bool newdecl_is_friend)
       /* Don't really know how much of the language-specific
         values we should copy from old to new.  */
       DECL_IN_AGGR_P (newdecl) = DECL_IN_AGGR_P (olddecl);
-      DECL_REPO_AVAILABLE_P (newdecl) = DECL_REPO_AVAILABLE_P (olddecl);
       DECL_INITIALIZED_IN_CLASS_P (newdecl)
        |= DECL_INITIALIZED_IN_CLASS_P (olddecl);