Lines Matching refs:newdecl

1791 diagnose_arglist_conflict (tree newdecl, tree olddecl,  in diagnose_arglist_conflict()  argument
1799 || (!prototype_p (newtype) && DECL_INITIAL (newdecl) == NULL_TREE))) in diagnose_arglist_conflict()
1832 validate_proto_after_old_defn (tree newdecl, tree newtype, tree oldtype) in validate_proto_after_old_defn() argument
1868 "than previous old-style definition", newdecl); in validate_proto_after_old_defn()
1874 "than previous old-style definition", newdecl); in validate_proto_after_old_defn()
1884 newdecl, i); in validate_proto_after_old_defn()
1896 newdecl); in validate_proto_after_old_defn()
1927 diagnose_mismatched_decls (tree newdecl, tree olddecl, in diagnose_mismatched_decls() argument
1938 if (olddecl == error_mark_node || newdecl == error_mark_node) in diagnose_mismatched_decls()
1941 *newtypep = newtype = TREE_TYPE (newdecl); in diagnose_mismatched_decls()
1947 if (TREE_CODE (olddecl) != TREE_CODE (newdecl)) in diagnose_mismatched_decls()
1954 error ("%q+D redeclared as different kind of symbol", newdecl); in diagnose_mismatched_decls()
1957 else if (TREE_PUBLIC (newdecl)) in diagnose_mismatched_decls()
1960 newdecl); in diagnose_mismatched_decls()
1963 "a built-in function", newdecl); in diagnose_mismatched_decls()
1972 error ("redeclaration of enumerator %q+D", newdecl); in diagnose_mismatched_decls()
2006 location_t loc = DECL_SOURCE_LOCATION (newdecl); in diagnose_mismatched_decls()
2010 newdecl, oldtype) in diagnose_mismatched_decls()
2025 location_t newloc = DECL_SOURCE_LOCATION (newdecl); in diagnose_mismatched_decls()
2031 mismatch_argno, newdecl, mismatch_expect); in diagnose_mismatched_decls()
2036 newdecl, mismatch_expect); in diagnose_mismatched_decls()
2055 TREE_THIS_VOLATILE (newdecl) |= TREE_THIS_VOLATILE (olddecl); in diagnose_mismatched_decls()
2061 else if (TREE_CODE (newdecl) == FUNCTION_DECL && DECL_INITIAL (newdecl) in diagnose_mismatched_decls()
2064 && C_FUNCTION_IMPLICIT_INT (newdecl) && !DECL_INITIAL (olddecl)) in diagnose_mismatched_decls()
2067 "conflicting types for %q+D", newdecl); in diagnose_mismatched_decls()
2069 TREE_TYPE (newdecl) = *newtypep = newtype = oldtype; in diagnose_mismatched_decls()
2070 C_FUNCTION_IMPLICIT_INT (newdecl) = 0; in diagnose_mismatched_decls()
2074 else if (TREE_CODE (newdecl) == FUNCTION_DECL in diagnose_mismatched_decls()
2080 "conflicting types for %q+D", newdecl); in diagnose_mismatched_decls()
2098 c_addr_space_name (old_addr), newdecl); in diagnose_mismatched_decls()
2102 c_addr_space_name (new_addr), newdecl); in diagnose_mismatched_decls()
2108 newdecl); in diagnose_mismatched_decls()
2113 error ("conflicting type qualifiers for %q+D", newdecl); in diagnose_mismatched_decls()
2116 error ("conflicting types for %q+D", newdecl); in diagnose_mismatched_decls()
2117 diagnose_arglist_conflict (newdecl, olddecl, newtype, oldtype); in diagnose_mismatched_decls()
2128 if (TREE_CODE (newdecl) == TYPE_DECL) in diagnose_mismatched_decls()
2138 error ("redefinition of typedef %q+D with different type", newdecl); in diagnose_mismatched_decls()
2143 if (DECL_IN_SYSTEM_HEADER (newdecl) in diagnose_mismatched_decls()
2145 || TREE_NO_WARNING (newdecl) in diagnose_mismatched_decls()
2152 newdecl); in diagnose_mismatched_decls()
2156 "redefinition of typedef %q+D", newdecl)) in diagnose_mismatched_decls()
2170 else if (TREE_CODE (newdecl) == FUNCTION_DECL) in diagnose_mismatched_decls()
2179 if (!TREE_PUBLIC (newdecl) in diagnose_mismatched_decls()
2180 || (DECL_INITIAL (newdecl) in diagnose_mismatched_decls()
2181 && !prototype_p (TREE_TYPE (newdecl)))) in diagnose_mismatched_decls()
2183 warning_at (DECL_SOURCE_LOCATION (newdecl), in diagnose_mismatched_decls()
2185 "a built-in function", newdecl); in diagnose_mismatched_decls()
2190 if (!prototype_p (TREE_TYPE (newdecl))) in diagnose_mismatched_decls()
2198 warning_at (DECL_SOURCE_LOCATION (newdecl), in diagnose_mismatched_decls()
2202 newdecl, TREE_TYPE (olddecl)); in diagnose_mismatched_decls()
2206 if (DECL_INITIAL (newdecl)) in diagnose_mismatched_decls()
2215 || DECL_EXTERN_INLINE (newdecl) in diagnose_mismatched_decls()
2220 && (!DECL_DECLARED_INLINE_P (newdecl) in diagnose_mismatched_decls()
2222 DECL_ATTRIBUTES (newdecl)))) in diagnose_mismatched_decls()
2224 && same_translation_unit_p (newdecl, olddecl)) in diagnose_mismatched_decls()
2227 error ("redefinition of %q+D", newdecl); in diagnose_mismatched_decls()
2240 if (!validate_proto_after_old_defn (newdecl, newtype, oldtype)) in diagnose_mismatched_decls()
2255 if (TREE_PUBLIC (olddecl) && !TREE_PUBLIC (newdecl)) in diagnose_mismatched_decls()
2267 "non-static declaration", newdecl); in diagnose_mismatched_decls()
2272 else if (TREE_PUBLIC (newdecl) && !TREE_PUBLIC (olddecl)) in diagnose_mismatched_decls()
2278 "static declaration", newdecl); in diagnose_mismatched_decls()
2286 "follows static declaration", newdecl); in diagnose_mismatched_decls()
2293 && DECL_DECLARED_INLINE_P (newdecl)) in diagnose_mismatched_decls()
2296 DECL_ATTRIBUTES (newdecl)) != NULL; in diagnose_mismatched_decls()
2303 newa ? newdecl : olddecl); in diagnose_mismatched_decls()
2304 error_at (DECL_SOURCE_LOCATION (newa ? olddecl : newdecl), in diagnose_mismatched_decls()
2309 else if (VAR_P (newdecl)) in diagnose_mismatched_decls()
2313 if (C_DECL_THREADPRIVATE_P (olddecl) && !DECL_THREAD_LOCAL_P (newdecl)) in diagnose_mismatched_decls()
2320 else if (DECL_THREAD_LOCAL_P (newdecl) != DECL_THREAD_LOCAL_P (olddecl)) in diagnose_mismatched_decls()
2323 if (DECL_THREAD_LOCAL_P (newdecl)) in diagnose_mismatched_decls()
2325 "non-thread-local declaration", newdecl); in diagnose_mismatched_decls()
2328 "thread-local declaration", newdecl); in diagnose_mismatched_decls()
2335 if (DECL_INITIAL (newdecl) && DECL_INITIAL (olddecl)) in diagnose_mismatched_decls()
2338 error ("redefinition of %q+D", newdecl); in diagnose_mismatched_decls()
2351 if (DECL_FILE_SCOPE_P (newdecl) in diagnose_mismatched_decls()
2352 && TREE_PUBLIC (newdecl) != TREE_PUBLIC (olddecl)) in diagnose_mismatched_decls()
2354 if (DECL_EXTERNAL (newdecl)) in diagnose_mismatched_decls()
2360 "declaration with no linkage", newdecl); in diagnose_mismatched_decls()
2368 "follows static declaration", newdecl); in diagnose_mismatched_decls()
2374 if (TREE_PUBLIC (newdecl)) in diagnose_mismatched_decls()
2376 "static declaration", newdecl); in diagnose_mismatched_decls()
2379 "non-static declaration", newdecl); in diagnose_mismatched_decls()
2387 else if (!DECL_FILE_SCOPE_P (newdecl)) in diagnose_mismatched_decls()
2389 if (DECL_EXTERNAL (newdecl)) in diagnose_mismatched_decls()
2398 "extern declaration", newdecl); in diagnose_mismatched_decls()
2404 error ("redeclaration of %q+D with no linkage", newdecl); in diagnose_mismatched_decls()
2414 && DECL_FILE_SCOPE_P (newdecl) in diagnose_mismatched_decls()
2415 && !DECL_EXTERNAL (newdecl) in diagnose_mismatched_decls()
2417 warned |= warning_at (DECL_SOURCE_LOCATION (newdecl), in diagnose_mismatched_decls()
2421 newdecl); in diagnose_mismatched_decls()
2426 if (CODE_CONTAINS_STRUCT (TREE_CODE (newdecl), TS_DECL_WITH_VIS) in diagnose_mismatched_decls()
2427 && DECL_VISIBILITY_SPECIFIED (newdecl) && DECL_VISIBILITY_SPECIFIED (olddecl) in diagnose_mismatched_decls()
2428 && DECL_VISIBILITY (newdecl) != DECL_VISIBILITY (olddecl)) in diagnose_mismatched_decls()
2431 "(old visibility preserved)", newdecl); in diagnose_mismatched_decls()
2434 if (TREE_CODE (newdecl) == FUNCTION_DECL) in diagnose_mismatched_decls()
2435 warned |= diagnose_mismatched_attributes (olddecl, newdecl); in diagnose_mismatched_decls()
2447 if (TREE_CODE (newdecl) == PARM_DECL in diagnose_mismatched_decls()
2448 && (!TREE_ASM_WRITTEN (olddecl) || TREE_ASM_WRITTEN (newdecl))) in diagnose_mismatched_decls()
2451 error ("redefinition of parameter %q+D", newdecl); in diagnose_mismatched_decls()
2462 && !(TREE_CODE (newdecl) == FUNCTION_DECL in diagnose_mismatched_decls()
2463 && DECL_INITIAL (newdecl) && !DECL_INITIAL (olddecl)) in diagnose_mismatched_decls()
2465 && !(TREE_CODE (newdecl) == FUNCTION_DECL in diagnose_mismatched_decls()
2466 && !fndecl_built_in_p (newdecl) in diagnose_mismatched_decls()
2470 && !(DECL_EXTERNAL (olddecl) && !DECL_EXTERNAL (newdecl)) in diagnose_mismatched_decls()
2472 && !(TREE_CODE (newdecl) == PARM_DECL in diagnose_mismatched_decls()
2473 && TREE_ASM_WRITTEN (olddecl) && !TREE_ASM_WRITTEN (newdecl)) in diagnose_mismatched_decls()
2475 && !(VAR_P (newdecl) in diagnose_mismatched_decls()
2476 && DECL_INITIAL (newdecl) && !DECL_INITIAL (olddecl))) in diagnose_mismatched_decls()
2479 newdecl); in diagnose_mismatched_decls()
2497 merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype) in merge_decls() argument
2499 bool new_is_definition = (TREE_CODE (newdecl) == FUNCTION_DECL in merge_decls()
2500 && DECL_INITIAL (newdecl) != NULL_TREE); in merge_decls()
2501 bool new_is_prototype = (TREE_CODE (newdecl) == FUNCTION_DECL in merge_decls()
2502 && prototype_p (TREE_TYPE (newdecl))); in merge_decls()
2509 if (TREE_CODE (newdecl) == PARM_DECL in merge_decls()
2510 && TREE_ASM_WRITTEN (olddecl) && !TREE_ASM_WRITTEN (newdecl)) in merge_decls()
2528 DECL_ATTRIBUTES (newdecl) in merge_decls()
2529 = targetm.merge_decl_attributes (olddecl, newdecl); in merge_decls()
2533 if (TREE_CODE (newdecl) == TYPE_DECL) in merge_decls()
2547 if (TYPE_NAME (TREE_TYPE (newdecl)) == newdecl) in merge_decls()
2549 tree remove = TREE_TYPE (newdecl); in merge_decls()
2558 if (DECL_ORIGINAL_TYPE (newdecl) in merge_decls()
2559 && DECL_ORIGINAL_TYPE (newdecl) != remove) in merge_decls()
2560 for (tree t = TYPE_MAIN_VARIANT (DECL_ORIGINAL_TYPE (newdecl)); in merge_decls()
2562 if (TYPE_NAME (TYPE_NEXT_VARIANT (t)) == newdecl) in merge_decls()
2581 TREE_TYPE (newdecl) in merge_decls()
2586 if (!comptypes (oldtype, TREE_TYPE (newdecl))) in merge_decls()
2588 if (TREE_TYPE (newdecl) != error_mark_node) in merge_decls()
2589 layout_type (TREE_TYPE (newdecl)); in merge_decls()
2590 if (TREE_CODE (newdecl) != FUNCTION_DECL in merge_decls()
2591 && TREE_CODE (newdecl) != TYPE_DECL in merge_decls()
2592 && TREE_CODE (newdecl) != CONST_DECL) in merge_decls()
2593 layout_decl (newdecl, 0); in merge_decls()
2598 DECL_SIZE (newdecl) = DECL_SIZE (olddecl); in merge_decls()
2599 DECL_SIZE_UNIT (newdecl) = DECL_SIZE_UNIT (olddecl); in merge_decls()
2600 SET_DECL_MODE (newdecl, DECL_MODE (olddecl)); in merge_decls()
2601 if (DECL_ALIGN (olddecl) > DECL_ALIGN (newdecl)) in merge_decls()
2603 SET_DECL_ALIGN (newdecl, DECL_ALIGN (olddecl)); in merge_decls()
2604 DECL_USER_ALIGN (newdecl) |= DECL_USER_ALIGN (olddecl); in merge_decls()
2607 > DECL_WARN_IF_NOT_ALIGN (newdecl)) in merge_decls()
2608 SET_DECL_WARN_IF_NOT_ALIGN (newdecl, in merge_decls()
2614 COPY_DECL_RTL (olddecl, newdecl); in merge_decls()
2617 if (TREE_READONLY (newdecl)) in merge_decls()
2620 if (TREE_THIS_VOLATILE (newdecl)) in merge_decls()
2624 if (TREE_DEPRECATED (newdecl)) in merge_decls()
2633 && !DECL_IN_SYSTEM_HEADER (newdecl) ) in merge_decls()
2634 DECL_SOURCE_LOCATION (newdecl) = DECL_SOURCE_LOCATION (olddecl); in merge_decls()
2636 && DECL_IN_SYSTEM_HEADER (newdecl) in merge_decls()
2638 DECL_SOURCE_LOCATION (olddecl) = DECL_SOURCE_LOCATION (newdecl); in merge_decls()
2639 else if ((DECL_INITIAL (newdecl) == NULL_TREE in merge_decls()
2643 DECL_SOURCE_LOCATION (newdecl) = DECL_SOURCE_LOCATION (olddecl); in merge_decls()
2646 if (DECL_INITIAL (newdecl) == NULL_TREE) in merge_decls()
2647 DECL_INITIAL (newdecl) = DECL_INITIAL (olddecl); in merge_decls()
2651 C_DECL_THREADPRIVATE_P (newdecl) = 1; in merge_decls()
2657 COPY_DECL_ASSEMBLER_NAME (olddecl, newdecl); in merge_decls()
2662 DECL_VISIBILITY (newdecl) = DECL_VISIBILITY (olddecl); in merge_decls()
2663 DECL_VISIBILITY_SPECIFIED (newdecl) = 1; in merge_decls()
2666 if (TREE_CODE (newdecl) == FUNCTION_DECL) in merge_decls()
2668 DECL_STATIC_CONSTRUCTOR(newdecl) |= DECL_STATIC_CONSTRUCTOR(olddecl); in merge_decls()
2669 DECL_STATIC_DESTRUCTOR (newdecl) |= DECL_STATIC_DESTRUCTOR (olddecl); in merge_decls()
2670 DECL_NO_LIMIT_STACK (newdecl) |= DECL_NO_LIMIT_STACK (olddecl); in merge_decls()
2671 DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT (newdecl) in merge_decls()
2673 TREE_THIS_VOLATILE (newdecl) |= TREE_THIS_VOLATILE (olddecl); in merge_decls()
2674 DECL_IS_MALLOC (newdecl) |= DECL_IS_MALLOC (olddecl); in merge_decls()
2676 DECL_SET_IS_OPERATOR_NEW (newdecl, true); in merge_decls()
2678 DECL_SET_IS_OPERATOR_DELETE (newdecl, true); in merge_decls()
2679 TREE_READONLY (newdecl) |= TREE_READONLY (olddecl); in merge_decls()
2680 DECL_PURE_P (newdecl) |= DECL_PURE_P (olddecl); in merge_decls()
2681 DECL_IS_NOVOPS (newdecl) |= DECL_IS_NOVOPS (olddecl); in merge_decls()
2685 merge_weak (newdecl, olddecl); in merge_decls()
2688 if (TREE_CODE (newdecl) == FUNCTION_DECL) in merge_decls()
2690 TREE_PUBLIC (newdecl) &= TREE_PUBLIC (olddecl); in merge_decls()
2693 TREE_PUBLIC (olddecl) = TREE_PUBLIC (newdecl); in merge_decls()
2703 if (TREE_CODE (newdecl) == FUNCTION_DECL in merge_decls()
2705 && (DECL_DECLARED_INLINE_P (newdecl) in merge_decls()
2707 && (!DECL_DECLARED_INLINE_P (newdecl) in merge_decls()
2710 && DECL_EXTERNAL (newdecl) in merge_decls()
2711 && !lookup_attribute ("gnu_inline", DECL_ATTRIBUTES (newdecl)) in merge_decls()
2713 DECL_EXTERNAL (newdecl) = 0; in merge_decls()
2718 && (DECL_DECLARED_INLINE_P (newdecl) in merge_decls()
2721 DECL_EXTERNAL (newdecl) = 0; in merge_decls()
2723 if (DECL_EXTERNAL (newdecl)) in merge_decls()
2725 TREE_STATIC (newdecl) = TREE_STATIC (olddecl); in merge_decls()
2726 DECL_EXTERNAL (newdecl) = DECL_EXTERNAL (olddecl); in merge_decls()
2729 TREE_PUBLIC (newdecl) = TREE_PUBLIC (olddecl); in merge_decls()
2730 if (!DECL_EXTERNAL (newdecl)) in merge_decls()
2732 DECL_CONTEXT (newdecl) = DECL_CONTEXT (olddecl); in merge_decls()
2733 DECL_COMMON (newdecl) = DECL_COMMON (olddecl); in merge_decls()
2738 TREE_STATIC (olddecl) = TREE_STATIC (newdecl); in merge_decls()
2739 TREE_PUBLIC (olddecl) = TREE_PUBLIC (newdecl); in merge_decls()
2742 if (TREE_CODE (newdecl) == FUNCTION_DECL) in merge_decls()
2750 DECL_UNINLINABLE (newdecl) = 1; in merge_decls()
2755 if (DECL_DECLARED_INLINE_P (newdecl) in merge_decls()
2757 DECL_DECLARED_INLINE_P (newdecl) = 1; in merge_decls()
2759 DECL_UNINLINABLE (newdecl) = DECL_UNINLINABLE (olddecl) in merge_decls()
2760 = (DECL_UNINLINABLE (newdecl) || DECL_UNINLINABLE (olddecl)); in merge_decls()
2762 DECL_DISREGARD_INLINE_LIMITS (newdecl) in merge_decls()
2764 = (DECL_DISREGARD_INLINE_LIMITS (newdecl) in merge_decls()
2772 copy_decl_built_in_function (newdecl, olddecl); in merge_decls()
2773 C_DECL_DECLARED_BUILTIN (newdecl) = 1; in merge_decls()
2776 C_DECL_BUILTIN_PROTOTYPE (newdecl) = 0; in merge_decls()
2777 if (DECL_BUILT_IN_CLASS (newdecl) == BUILT_IN_NORMAL) in merge_decls()
2779 enum built_in_function fncode = DECL_FUNCTION_CODE (newdecl); in merge_decls()
2795 copy_attributes_to_builtin (newdecl); in merge_decls()
2799 C_DECL_BUILTIN_PROTOTYPE (newdecl) in merge_decls()
2805 && !DECL_FUNCTION_SPECIFIC_TARGET (newdecl)) in merge_decls()
2806 DECL_FUNCTION_SPECIFIC_TARGET (newdecl) in merge_decls()
2810 && !DECL_FUNCTION_SPECIFIC_OPTIMIZATION (newdecl)) in merge_decls()
2811 DECL_FUNCTION_SPECIFIC_OPTIMIZATION (newdecl) in merge_decls()
2818 DECL_RESULT (newdecl) = DECL_RESULT (olddecl); in merge_decls()
2819 DECL_INITIAL (newdecl) = DECL_INITIAL (olddecl); in merge_decls()
2820 DECL_STRUCT_FUNCTION (newdecl) = DECL_STRUCT_FUNCTION (olddecl); in merge_decls()
2821 DECL_SAVED_TREE (newdecl) = DECL_SAVED_TREE (olddecl); in merge_decls()
2822 DECL_ARGUMENTS (newdecl) = copy_list (DECL_ARGUMENTS (olddecl)); in merge_decls()
2823 for (t = DECL_ARGUMENTS (newdecl); t ; t = DECL_CHAIN (t)) in merge_decls()
2824 DECL_CONTEXT (t) = newdecl; in merge_decls()
2828 DECL_ABSTRACT_ORIGIN (newdecl) in merge_decls()
2835 TREE_USED (newdecl) = 1; in merge_decls()
2836 else if (TREE_USED (newdecl)) in merge_decls()
2839 DECL_READ_P (newdecl) |= DECL_READ_P (olddecl); in merge_decls()
2841 DECL_PRESERVE_P (newdecl) = 1; in merge_decls()
2842 else if (DECL_PRESERVE_P (newdecl)) in merge_decls()
2846 if (VAR_P (olddecl) && VAR_P (newdecl) in merge_decls()
2847 && !lookup_attribute ("common", DECL_ATTRIBUTES (newdecl)) in merge_decls()
2848 && !lookup_attribute ("nocommon", DECL_ATTRIBUTES (newdecl))) in merge_decls()
2849 DECL_COMMON (newdecl) = DECL_COMMON (newdecl) && DECL_COMMON (olddecl); in merge_decls()
2862 (char *) newdecl + sizeof (struct tree_common), in merge_decls()
2864 DECL_USER_ALIGN (olddecl) = DECL_USER_ALIGN (newdecl); in merge_decls()
2873 (char *) newdecl + sizeof (struct tree_decl_common), in merge_decls()
2880 && DECL_SECTION_NAME (newdecl) != NULL) in merge_decls()
2881 set_decl_section_name (olddecl, DECL_SECTION_NAME (newdecl)); in merge_decls()
2887 if (VAR_P (olddecl) && DECL_THREAD_LOCAL_P (newdecl)) in merge_decls()
2888 set_decl_tls_model (olddecl, DECL_TLS_MODEL (newdecl)); in merge_decls()
2899 (char *) newdecl + sizeof (struct tree_decl_common), in merge_decls()
2906 (char *) newdecl + sizeof (struct tree_decl_common), in merge_decls()
2932 duplicate_decls (tree newdecl, tree olddecl) in duplicate_decls() argument
2936 if (!diagnose_mismatched_decls (newdecl, olddecl, &newtype, &oldtype)) in duplicate_decls()
2943 merge_decls (newdecl, olddecl, newtype, oldtype); in duplicate_decls()
2951 if (TREE_CODE (newdecl) == FUNCTION_DECL) in duplicate_decls()
2952 DECL_STRUCT_FUNCTION (newdecl) = NULL; in duplicate_decls()
2953 if (VAR_OR_FUNCTION_DECL_P (newdecl)) in duplicate_decls()
2955 struct symtab_node *snode = symtab_node::get (newdecl); in duplicate_decls()
2959 ggc_free (newdecl); in duplicate_decls()