+2004-09-24 Zack Weinberg <zack@codesourcery.com>
+
+ * objc-act.c: Change annotate_with_locus to SET_EXPR_LOCATION
+ throughout.
+ (objc_init): Only set input_line to 0 #ifndef USE_MAPPED_LOCATION.
+ (build_selector_translation_table): Use %J in diagnostic
+ instead of diddling input_line. Fix spelling.
+
2004-09-21 Ziemowit Laski <zlaski@apple.com>
* objc-act.c (objc_fold_objc_type_ref): New function.
(gen_type_name, gen_type_name_0): New functions.
(gen_method_decl): Remove second parameter; call gen_type_name()
instead of gen_declaration_1().
- (dump_interface): Adjust calls to gen_declaration() and
+ (dump_interface): Adjust calls to gen_declaration() and
gen_method_decl(); do not allocate a separate string buffer.
(init_objc): Allocate a larger string buffer to accommodate
dump_interface(); adjust call to build_module_descriptor();
objc_check_decl, build_encode_expr): Remove prototypes.
(imp_count, cat_count): Make GGC-aware.
(OBJC_SET_TYPE_NAME): New macro.
-
+
2004-09-03 Ziemowit Laski <zlaski@apple.com>
* config-lang.in: Update copyright notice.
(build_protocol_expr): Rename prototype to objc_build_prototype_expr().
(build_objc_string_object): Rename prototype to
objc_build_string_object().
-
+
2004-09-01 Ziemowit Laski <zlaski@apple.com>
* objc-act.c (lookup_interface): Make function 'static' and add a
(objc_check_decl, get_class_reference, objc_declare_alias,
objc_declare_class, objc_is_object_ptr): Call objc_is_class_name()
instead of is_class_name().
- (get_super_receiver, objc_clear_super_receiver): Call
+ (get_super_receiver, objc_clear_super_receiver): Call
objc_get_current_scope() instead of get_current_scope().
(is_class_name): Rename to objc_is_class_name.
(lookup_objc_ivar): Rename to objc_lookup_ivar.
(LANG_HOOKS_FINISH, LANG_HOOKS_INIT_OPTIONS,
LANG_HOOKS_INITIALIZE_DIAGNOSTICS, LANG_HOOKS_HANDLE_OPTION,
LANG_HOOKS_MISSING_ARGUMENT, LANG_HOOKS_POST_OPTIONS,
- LANG_HOOKS_GET_ALIAS_SET, LANG_HOOKS_SAFE_FROM_P,
- LANG_HOOKS_EXPAND_EXPR, LANG_HOOKS_MARK_ADDRESSABLE,
+ LANG_HOOKS_GET_ALIAS_SET, LANG_HOOKS_SAFE_FROM_P,
+ LANG_HOOKS_EXPAND_EXPR, LANG_HOOKS_MARK_ADDRESSABLE,
LANG_HOOKS_PARSE_FILE, LANG_HOOKS_TRUTHVALUE_CONVERSION,
LANG_HOOKS_FINISH_INCOMPLETE_DECL, LANG_HOOKS_UNSAFE_FOR_REEVAL,
- LANG_HOOKS_STATICP, LANG_HOOKS_SET_DECL_ASSEMBLER_NAME,
+ LANG_HOOKS_STATICP, LANG_HOOKS_SET_DECL_ASSEMBLER_NAME,
LANG_HOOKS_NO_BODY_BLOCKS, LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL,
LANG_HOOKS_PRINT_IDENTIFIER, LANG_HOOKS_FUNCTION_ENTER_NESTED,
LANG_HOOKS_FUNCTION_LEAVE_NESTED, LANG_HOOKS_DUP_LANG_SPECIFIC_DECL,
#endif
return false;
+#ifndef USE_MAPPED_LOCATION
/* Force the line number back to 0; check_newline will have
raised it to 1, which will make the builtin functions appear
not to be built in. */
input_line = 0;
+#endif
/* If gen_declaration desired, open the output file. */
if (flag_gen_declaration)
}
}
if (!found)
- {
- /* Adjust line number for warning message. */
- int save_lineno = input_line;
- if (flag_next_runtime && TREE_PURPOSE (chain))
- input_line = DECL_SOURCE_LINE (TREE_PURPOSE (chain));
- warning ("creating selector for non existant method %s",
- IDENTIFIER_POINTER (TREE_VALUE (chain)));
- input_line = save_lineno;
- }
+ warning ("%Jcreating selector for nonexistent method %qE",
+ TREE_PURPOSE (chain), TREE_VALUE (chain));
}
expr = build_selector (TREE_VALUE (chain));
{
t = build (MODIFY_EXPR, void_type_node, cur_try_context->rethrow_decl,
cur_try_context->caught_decl);
- annotate_with_locus (t, cur_try_context->end_catch_locus);
+ SET_EXPR_LOCATION (t, cur_try_context->end_catch_locus);
append_to_statement_list (t, last);
t = next_sjlj_build_try_exit ();
- annotate_with_locus (t, cur_try_context->end_catch_locus);
+ SET_EXPR_LOCATION (t, cur_try_context->end_catch_locus);
append_to_statement_list (t, last);
}
/* Build the outermost varible binding level. */
bind = build (BIND_EXPR, void_type_node, rethrow_decl, NULL, NULL);
- annotate_with_locus (bind, cur_try_context->try_locus);
+ SET_EXPR_LOCATION (bind, cur_try_context->try_locus);
TREE_SIDE_EFFECTS (bind) = 1;
/* Initialize rethrow_decl. */
t = build (MODIFY_EXPR, void_type_node, rethrow_decl,
convert (objc_object_type, null_pointer_node));
- annotate_with_locus (t, cur_try_context->try_locus);
+ SET_EXPR_LOCATION (t, cur_try_context->try_locus);
append_to_statement_list (t, &BIND_EXPR_BODY (bind));
/* Build the outermost TRY_FINALLY_EXPR. */
try_fin = build (TRY_FINALLY_EXPR, void_type_node, NULL, NULL);
- annotate_with_locus (try_fin, cur_try_context->try_locus);
+ SET_EXPR_LOCATION (try_fin, cur_try_context->try_locus);
TREE_SIDE_EFFECTS (try_fin) = 1;
append_to_statement_list (try_fin, &BIND_EXPR_BODY (bind));
}
else
catch_seq = next_sjlj_build_exc_extract (rethrow_decl);
- annotate_with_locus (catch_seq, cur_try_context->end_try_locus);
+ SET_EXPR_LOCATION (catch_seq, cur_try_context->end_try_locus);
/* Build the main register-and-try if statement. */
t = next_sjlj_build_enter_and_setjmp ();
- annotate_with_locus (t, cur_try_context->try_locus);
+ SET_EXPR_LOCATION (t, cur_try_context->try_locus);
COND_EXPR_THEN (t) = catch_seq;
COND_EXPR_ELSE (t) = cur_try_context->try_body;
TREE_OPERAND (try_fin, 0) = t;
t = build_stmt (COND_EXPR,
lang_hooks.truthvalue_conversion (rethrow_decl),
NULL, t);
- annotate_with_locus (t, cur_try_context->finally_locus);
+ SET_EXPR_LOCATION (t, cur_try_context->finally_locus);
append_to_statement_list (t, &TREE_OPERAND (try_fin, 1));
append_to_statement_list (cur_try_context->finally_body,
t = build_stmt (COND_EXPR,
lang_hooks.truthvalue_conversion (rethrow_decl),
t, NULL);
- annotate_with_locus (t, cur_try_context->end_finally_locus);
+ SET_EXPR_LOCATION (t, cur_try_context->end_finally_locus);
append_to_statement_list (t, &TREE_OPERAND (try_fin, 1));
return bind;
if (c->catch_list)
{
stmt = build_stmt (TRY_CATCH_EXPR, stmt, c->catch_list);
- annotate_with_locus (stmt, cur_try_context->try_locus);
+ SET_EXPR_LOCATION (stmt, cur_try_context->try_locus);
}
if (c->finally_body)
{
stmt = build_stmt (TRY_FINALLY_EXPR, stmt, c->finally_body);
- annotate_with_locus (stmt, cur_try_context->try_locus);
+ SET_EXPR_LOCATION (stmt, cur_try_context->try_locus);
}
}
add_stmt (stmt);
mutex = save_expr (mutex);
args = tree_cons (NULL, mutex, NULL);
call = build_function_call (objc_sync_enter_decl, args);
- annotate_with_locus (call, start_locus);
+ SET_EXPR_LOCATION (call, start_locus);
add_stmt (call);
/* Build the mutex unlock. */
args = tree_cons (NULL, mutex, NULL);
call = build_function_call (objc_sync_exit_decl, args);
- annotate_with_locus (call, input_location);
+ SET_EXPR_LOCATION (call, input_location);
/* Put the that and the body in a TRY_FINALLY. */
objc_begin_try_stmt (start_locus, body);