diff options
author | Joseph Myers <joseph@codesourcery.com> | 2005-06-15 16:55:47 +0100 |
---|---|---|
committer | Joseph Myers <jsm28@gcc.gnu.org> | 2005-06-15 16:55:47 +0100 |
commit | 46bdb9cffb6b1cd45bc8032f9b1d7e9e101ba7b0 (patch) | |
tree | 1872e122192fae90234ef8f17d82cd485d62d6cf /gcc/c-tree.h | |
parent | 38e19e4c73b8614fb094c5c36abdd7da47a26a50 (diff) | |
download | gcc-46bdb9cffb6b1cd45bc8032f9b1d7e9e101ba7b0.zip gcc-46bdb9cffb6b1cd45bc8032f9b1d7e9e101ba7b0.tar.gz gcc-46bdb9cffb6b1cd45bc8032f9b1d7e9e101ba7b0.tar.bz2 |
c-tree.h (default_function_array_conversion): Declare.
* c-tree.h (default_function_array_conversion): Declare.
* c-typeck.c (default_function_array_conversion): Export. Correct
comment.
(default_conversion): Do not call
default_function_array_conversion. Do not allow FUNCTION_TYPE.
(build_function_call): Call default_function_array_conversion on
the function.
(convert_arguments): Do not call it on the function arguments.
(build_unary_op): Do not allow ARRAY_TYPE or FUNCTION_TYPE for
TRUTH_NOT_EXPR. Call default_function_array_conversion for taking
address of ARRAY_REF.
(build_compound_expr): Do not call
default_function_array_conversion.
(build_c_cast): Do not call default_function_array_conversion.
(convert_for_assignment): Do not call default_conversion.
(digest_init): Call default_function_array_conversion to convert
string constants and compound literals to pointers, but not
otherwise.
(output_init_element): Likewise.
(build_asm_expr): Do not call default_function_array_conversion.
(c_process_expr_stmt): Likewise.
(c_objc_common_truthvalue_conversion): Likewise. Do not allow
FUNCTION_TYPE.
* c-parser.c (c_parser_expression_conv): New.
(c_parser_asm_operands, c_parser_expr_list): Add convert_p
argument. All callers changed. Call
default_function_array_conversion if convert_p.
(c_parser_initializer, c_parser_initval): Call
default_function_array_conversion except for string constants and
compound literals.
(c_parser_initelt): Call default_function_array_conversion for
ObjC expression received.
(c_parser_statement_after_labels): Call c_parser_expression_conv
for return and expression statements.
(c_parser_paren_condition, c_parser_for_statement,
c_parser_conditional_expression): Call c_parser_expression_conv.
(c_parser_expr_no_commas, c_parser_conditional_expression,
c_parser_binary_expression, c_parser_cast_expression,
c_parser_unary_expression): Call
default_function_array_conversion.
objc:
* objc-act.c (my_build_string_pointer): New.
(objc_get_class_reference, get_super_receiver): Call
my_build_string_pointer instead of my_build_string when building
function arguments.
testsuite:
* gcc.dg/noncompile/20040203-3.c: Update expected message.
From-SVN: r100984
Diffstat (limited to 'gcc/c-tree.h')
-rw-r--r-- | gcc/c-tree.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/c-tree.h b/gcc/c-tree.h index 7af8130..e2e3bf8 100644 --- a/gcc/c-tree.h +++ b/gcc/c-tree.h @@ -523,6 +523,7 @@ extern bool c_mark_addressable (tree); extern void c_incomplete_type_error (tree, tree); extern tree c_type_promotes_to (tree); extern tree default_conversion (tree); +extern tree default_function_array_conversion (tree); extern tree composite_type (tree, tree); extern tree build_component_ref (tree, tree); extern tree build_indirect_ref (tree, const char *); |