Lines Matching refs:rdsym
1137 sym_t *rdsym = dcs->d_redeclared_symbol;
1138 if (rdsym != NULL) {
1139 debug_sym("rdsym: ", rdsym, "\n");
1140 lint_assert(is_member(rdsym));
1143 rdsym->u.s_member.sm_containing_type) {
1146 symtab_remove_forever(rdsym);
1897 check_old_style_definition(const sym_t *rdsym, const sym_t *dsym)
1900 const sym_t *old_params = rdsym->u.s_old_style_params;
1938 message_at(300, &rdsym->s_def_pos);
1995 sym_t *rdsym = dcs->d_redeclared_symbol;
1996 if (rdsym != NULL) {
2001 * rdsym->s_old_style_params and compare them with the params
2004 bool redec = rdsym->s_osdef && dsym->s_type->t_proto &&
2005 check_old_style_definition(rdsym, dsym);
2017 print_previous_declaration(rdsym);
2024 if (rdsym->s_osdef && !dsym->s_type->t_proto) {
2025 dsym->s_osdef = rdsym->s_osdef;
2027 rdsym->u.s_old_style_params;
2028 dsym->s_def_pos = rdsym->s_def_pos;
2031 if (rdsym->s_type->t_proto && !dsym->s_type->t_proto)
2032 dsym->s_def_pos = rdsym->s_def_pos;
2033 else if (rdsym->s_def == DEF && dsym->s_def != DEF)
2034 dsym->s_def_pos = rdsym->s_def_pos;
2036 copy_usage_info(dsym, rdsym);
2039 if (rdsym->s_def == DEF)
2043 if (rdsym->s_inline)
2046 complete_type(dsym, rdsym);
2049 symtab_remove_forever(rdsym);
2109 copy_usage_info(sym_t *sym, const sym_t *rdsym)
2112 sym->s_set_pos = rdsym->s_set_pos;
2113 sym->s_use_pos = rdsym->s_use_pos;
2114 sym->s_set = rdsym->s_set;
2115 sym->s_used = rdsym->s_used;
2127 sym_t *rdsym = dcs->d_redeclared_symbol;
2128 if (rdsym->s_scl == ENUM_CONST) {
2131 print_previous_declaration(rdsym);
2134 if (rdsym->s_scl == TYPEDEF) {
2137 print_previous_declaration(rdsym);
2143 print_previous_declaration(rdsym);
2146 if (rdsym->s_def == DEF && dsym->s_def == DEF) {
2149 print_previous_declaration(rdsym);
2152 if (!types_compatible(rdsym->s_type, dsym->s_type,
2156 type_name(dsym->s_type), type_name(rdsym->s_type));
2157 print_previous_declaration(rdsym);
2160 if (rdsym->s_scl == EXTERN && dsym->s_scl == EXTERN)
2162 if (rdsym->s_scl == STATIC && dsym->s_scl == STATIC)
2164 if (rdsym->s_scl == STATIC && dsym->s_def == DECL)
2166 if (rdsym->s_scl == EXTERN && rdsym->s_def == DEF) {
2173 print_previous_declaration(rdsym);
2176 if (rdsym->s_scl == EXTERN) {
2179 print_previous_declaration(rdsym);
2192 print_previous_declaration(rdsym);
2601 check_local_hiding(const sym_t *dsym, const sym_t *rdsym)
2606 warning(86, dsym->s_name, type_name(rdsym->s_type));
2610 warning(87, dsym->s_name, type_name(rdsym->s_type));
2614 warning(88, dsym->s_name, type_name(rdsym->s_type));
2625 check_local_redeclaration(const sym_t *dsym, sym_t *rdsym)
2627 if (rdsym->s_block_level == 0) {
2629 check_local_hiding(dsym, rdsym);
2631 } else if (rdsym->s_block_level == block_level) {
2634 if (rdsym->s_param) {
2643 symtab_remove_forever(rdsym);
2647 } else if (rdsym->s_block_level < block_level && hflag)
2651 if (rdsym->s_block_level == block_level) {
2654 symtab_remove_forever(rdsym);