summaryrefslogtreecommitdiff
path: root/gcc/c-decl.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-09 09:53:11 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-09 09:53:11 +0000
commited32c0902c335ab8c19e7a2930b2f053cea374cc (patch)
tree953955594cbb90ca5de652ff6d175d5cd1fca58d /gcc/c-decl.c
parente00d3c8b8e89c54ada5fb4d86bf02cdba5f2670b (diff)
downloadgcc-ed32c0902c335ab8c19e7a2930b2f053cea374cc.tar.gz
2007-07-09 Richard Guenther <rguenther@suse.de>
cp/ * decl.c (start_preparsed_function): Do not promote return type. * c-decl.c (start_function): Do not promote return type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126480 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-decl.c')
-rw-r--r--gcc/c-decl.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index bde95aa0252..012339eec62 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -6270,18 +6270,6 @@ start_function (struct c_declspecs *declspecs, struct c_declarator *declarator,
declare_parm_level ();
restype = TREE_TYPE (TREE_TYPE (current_function_decl));
- /* Promote the value to int before returning it. */
- if (c_promoting_integer_type_p (restype))
- {
- /* It retains unsignedness if not really getting wider. */
- if (TYPE_UNSIGNED (restype)
- && (TYPE_PRECISION (restype)
- == TYPE_PRECISION (integer_type_node)))
- restype = unsigned_type_node;
- else
- restype = integer_type_node;
- }
-
resdecl = build_decl (RESULT_DECL, NULL_TREE, restype);
DECL_ARTIFICIAL (resdecl) = 1;
DECL_IGNORED_P (resdecl) = 1;