4.4.0-0.31
This commit is contained in:
parent
babb47d673
commit
f56bb064e4
@ -1,2 +1,2 @@
|
|||||||
fastjar-0.97.tar.gz
|
fastjar-0.97.tar.gz
|
||||||
gcc-4.4.0-20090328.tar.bz2
|
gcc-4.4.0-20090330.tar.bz2
|
||||||
|
18
gcc.spec
18
gcc.spec
@ -1,9 +1,9 @@
|
|||||||
%define DATE 20090328
|
%define DATE 20090330
|
||||||
%define SVNREV 145167
|
%define SVNREV 145311
|
||||||
%define gcc_version 4.4.0
|
%define gcc_version 4.4.0
|
||||||
# Note, gcc_release must be integer, if you want to add suffixes to
|
# Note, gcc_release must be integer, if you want to add suffixes to
|
||||||
# %{release}, append them after %{gcc_release} on Release: line.
|
# %{release}, append them after %{gcc_release} on Release: line.
|
||||||
%define gcc_release 0.30
|
%define gcc_release 0.31
|
||||||
%define _unpackaged_files_terminate_build 0
|
%define _unpackaged_files_terminate_build 0
|
||||||
%define multilib_64_archs sparc64 ppc64 s390x x86_64
|
%define multilib_64_archs sparc64 ppc64 s390x x86_64
|
||||||
%define include_gappletviewer 1
|
%define include_gappletviewer 1
|
||||||
@ -152,10 +152,7 @@ Patch25: gcc44-pr39226.patch
|
|||||||
Patch26: gcc44-power7.patch
|
Patch26: gcc44-power7.patch
|
||||||
Patch27: gcc44-power7-2.patch
|
Patch27: gcc44-power7-2.patch
|
||||||
Patch28: gcc44-pr38757.patch
|
Patch28: gcc44-pr38757.patch
|
||||||
Patch29: gcc44-altivec-vector.patch
|
|
||||||
Patch30: gcc44-pr39543.patch
|
Patch30: gcc44-pr39543.patch
|
||||||
Patch31: gcc44-pr39558.patch
|
|
||||||
Patch32: gcc44-pr39563.patch
|
|
||||||
|
|
||||||
Patch1000: fastjar-0.97-segfault.patch
|
Patch1000: fastjar-0.97-segfault.patch
|
||||||
|
|
||||||
@ -445,10 +442,7 @@ which are required to compile with the GNAT.
|
|||||||
%patch26 -p0 -b .power7~
|
%patch26 -p0 -b .power7~
|
||||||
%patch27 -p0 -b .power7-2~
|
%patch27 -p0 -b .power7-2~
|
||||||
%patch28 -p0 -b .pr38757~
|
%patch28 -p0 -b .pr38757~
|
||||||
%patch29 -p0 -b .altivec-vector~
|
|
||||||
%patch30 -p0 -b .pr39543~
|
%patch30 -p0 -b .pr39543~
|
||||||
%patch31 -p0 -b .pr39558~
|
|
||||||
%patch32 -p0 -b .pr39563~
|
|
||||||
|
|
||||||
# This testcase doesn't compile.
|
# This testcase doesn't compile.
|
||||||
rm libjava/testsuite/libjava.lang/PR35020*
|
rm libjava/testsuite/libjava.lang/PR35020*
|
||||||
@ -1759,6 +1753,12 @@ fi
|
|||||||
%doc rpm.doc/changelogs/libmudflap/ChangeLog*
|
%doc rpm.doc/changelogs/libmudflap/ChangeLog*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Mar 30 2009 Jakub Jelinek <jakub@redhat.com> 4.4.0-0.31
|
||||||
|
- update from gcc-4_4-branch
|
||||||
|
- PR target/39545
|
||||||
|
- fix Fortran bind(c) function using RESULT() (#492657)
|
||||||
|
- fix bogus warnings on strcmp/strncmp macros (#492846)
|
||||||
|
|
||||||
* Sat Mar 28 2009 Jakub Jelinek <jakub@redhat.com> 4.4.0-0.30
|
* Sat Mar 28 2009 Jakub Jelinek <jakub@redhat.com> 4.4.0-0.30
|
||||||
- update from gcc-4_4-branch
|
- update from gcc-4_4-branch
|
||||||
- PRs c++/39380, c++/28274, c++/29727, c++/35652, c++/36799, c++/37647,
|
- PRs c++/39380, c++/28274, c++/29727, c++/35652, c++/36799, c++/37647,
|
||||||
|
@ -1,51 +0,0 @@
|
|||||||
2009-03-27 Jakub Jelinek <jakub@redhat.com>
|
|
||||||
|
|
||||||
* config/rs6000/rs6000-c.c (rs6000_macro_to_expand): If macro
|
|
||||||
following vector keyword has expansion starting with pixel or bool
|
|
||||||
keyword, expand vector to __vector and pixel or bool to __pixel or
|
|
||||||
__bool.
|
|
||||||
|
|
||||||
* gcc.target/powerpc/altivec-28.c: New test.
|
|
||||||
|
|
||||||
--- gcc/config/rs6000/rs6000-c.c.jj 2008-10-23 13:21:36.000000000 +0200
|
|
||||||
+++ gcc/config/rs6000/rs6000-c.c 2009-03-27 11:45:50.000000000 +0100
|
|
||||||
@@ -188,7 +188,19 @@ rs6000_macro_to_expand (cpp_reader *pfil
|
|
||||||
tok = cpp_peek_token (pfile, idx++);
|
|
||||||
while (tok->type == CPP_PADDING);
|
|
||||||
ident = altivec_categorize_keyword (tok);
|
|
||||||
- if (ident)
|
|
||||||
+ if (ident == C_CPP_HASHNODE (__pixel_keyword))
|
|
||||||
+ {
|
|
||||||
+ expand_this = C_CPP_HASHNODE (__vector_keyword);
|
|
||||||
+ expand_bool_pixel = __pixel_keyword;
|
|
||||||
+ rid_code = RID_MAX;
|
|
||||||
+ }
|
|
||||||
+ else if (ident == C_CPP_HASHNODE (__bool_keyword))
|
|
||||||
+ {
|
|
||||||
+ expand_this = C_CPP_HASHNODE (__vector_keyword);
|
|
||||||
+ expand_bool_pixel = __bool_keyword;
|
|
||||||
+ rid_code = RID_MAX;
|
|
||||||
+ }
|
|
||||||
+ else if (ident)
|
|
||||||
rid_code = (enum rid)(ident->rid_code);
|
|
||||||
}
|
|
||||||
|
|
||||||
--- gcc/testsuite/gcc.target/powerpc/altivec-28.c.jj 2009-03-27 11:47:23.000000000 +0100
|
|
||||||
+++ gcc/testsuite/gcc.target/powerpc/altivec-28.c 2009-03-27 11:50:15.000000000 +0100
|
|
||||||
@@ -0,0 +1,16 @@
|
|
||||||
+/* { dg-do compile { target powerpc*-*-* } } */
|
|
||||||
+/* { dg-require-effective-target powerpc_altivec_ok } */
|
|
||||||
+/* { dg-options "-maltivec" } */
|
|
||||||
+
|
|
||||||
+#define B bool
|
|
||||||
+#define P pixel
|
|
||||||
+#define I int
|
|
||||||
+#define BI bool int
|
|
||||||
+#define PI pixel int
|
|
||||||
+
|
|
||||||
+vector B int i;
|
|
||||||
+vector P int j;
|
|
||||||
+vector B I k;
|
|
||||||
+vector P I l;
|
|
||||||
+vector BI m;
|
|
||||||
+vector PI n;
|
|
@ -1,87 +0,0 @@
|
|||||||
2009-03-27 Jakub Jelinek <jakub@redhat.com>
|
|
||||||
|
|
||||||
PR target/39558
|
|
||||||
* macro.c (cpp_get_token): If macro_to_expand returns NULL
|
|
||||||
and used some tokens, add CPP_PADDING before next token.
|
|
||||||
|
|
||||||
* gcc.target/powerpc/altivec-29.c: New test.
|
|
||||||
|
|
||||||
--- libcpp/macro.c.jj 2008-10-23 13:22:48.000000000 +0200
|
|
||||||
+++ libcpp/macro.c 2009-03-27 18:47:43.000000000 +0100
|
|
||||||
@@ -1,7 +1,7 @@
|
|
||||||
/* Part of CPP library. (Macro and #define handling.)
|
|
||||||
Copyright (C) 1986, 1987, 1989, 1992, 1993, 1994, 1995, 1996, 1998,
|
|
||||||
- 1999, 2000, 2001, 2002, 2003, 2004, 2005,
|
|
||||||
- 2006, 2007, 2008 Free Software Foundation, Inc.
|
|
||||||
+ 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
|
|
||||||
+ Free Software Foundation, Inc.
|
|
||||||
Written by Per Bothner, 1994.
|
|
||||||
Based on CCCP program by Paul Rubin, June 1986
|
|
||||||
Adapted to ANSI C, Richard Stallman, Jan 1987
|
|
||||||
@@ -1260,10 +1260,36 @@ cpp_get_token (cpp_reader *pfile)
|
|
||||||
|
|
||||||
/* Conditional macros require that a predicate be evaluated
|
|
||||||
first. */
|
|
||||||
- if (((!(node->flags & NODE_CONDITIONAL))
|
|
||||||
- || (pfile->cb.macro_to_expand
|
|
||||||
- && (node = pfile->cb.macro_to_expand (pfile, result))))
|
|
||||||
- && (ret = enter_macro_context (pfile, node, result)))
|
|
||||||
+ if ((node->flags & NODE_CONDITIONAL) != 0)
|
|
||||||
+ {
|
|
||||||
+ if (pfile->cb.macro_to_expand)
|
|
||||||
+ {
|
|
||||||
+ bool whitespace_after;
|
|
||||||
+ const cpp_token *peek_tok = cpp_peek_token (pfile, 0);
|
|
||||||
+
|
|
||||||
+ whitespace_after = (peek_tok->type == CPP_PADDING
|
|
||||||
+ || (peek_tok->flags & PREV_WHITE));
|
|
||||||
+ node = pfile->cb.macro_to_expand (pfile, result);
|
|
||||||
+ if (node)
|
|
||||||
+ ret = enter_macro_context (pfile, node, result);
|
|
||||||
+ else if (whitespace_after)
|
|
||||||
+ {
|
|
||||||
+ /* If macro_to_expand hook returned NULL and it
|
|
||||||
+ ate some tokens, see if we don't need to add
|
|
||||||
+ a padding token in between this and the
|
|
||||||
+ next token. */
|
|
||||||
+ peek_tok = cpp_peek_token (pfile, 0);
|
|
||||||
+ if (peek_tok->type != CPP_PADDING
|
|
||||||
+ && (peek_tok->flags & PREV_WHITE) == 0)
|
|
||||||
+ _cpp_push_token_context (pfile, NULL,
|
|
||||||
+ padding_token (pfile,
|
|
||||||
+ peek_tok), 1);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+ else
|
|
||||||
+ ret = enter_macro_context (pfile, node, result);
|
|
||||||
+ if (ret)
|
|
||||||
{
|
|
||||||
if (pfile->state.in_directive || ret == 2)
|
|
||||||
continue;
|
|
||||||
--- gcc/testsuite/gcc.target/powerpc/altivec-29.c.jj 2009-03-27 18:50:44.000000000 +0100
|
|
||||||
+++ gcc/testsuite/gcc.target/powerpc/altivec-29.c 2009-03-27 18:51:16.000000000 +0100
|
|
||||||
@@ -0,0 +1,23 @@
|
|
||||||
+/* PR target/39558 */
|
|
||||||
+/* { dg-do compile { target powerpc*-*-* } } */
|
|
||||||
+/* { dg-require-effective-target powerpc_altivec_ok } */
|
|
||||||
+/* { dg-options "-maltivec -save-temps" } */
|
|
||||||
+
|
|
||||||
+#define ATTRIBUTE_UNUSED __attribute__((unused))
|
|
||||||
+
|
|
||||||
+int *foo (int *vector)
|
|
||||||
+{
|
|
||||||
+ return vector;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+int *bar (int *vector ATTRIBUTE_UNUSED)
|
|
||||||
+{
|
|
||||||
+ return vector;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+int *baz (int *vector __attribute__((unused)))
|
|
||||||
+{
|
|
||||||
+ return vector;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+/* { dg-final { cleanup-saved-temps } } */
|
|
@ -1,261 +0,0 @@
|
|||||||
2009-03-27 Jakub Jelinek <jakub@redhat.com>
|
|
||||||
|
|
||||||
PR debug/39563
|
|
||||||
* c-decl.c (struct c_binding): Add locus field.
|
|
||||||
(bind): Add locus argument, set locus field from it.
|
|
||||||
(pop_scope): For b->nested VAR_DECL or FUNCTION_DECL,
|
|
||||||
add a DECL_EXTERNAL copy of b->decl to current BLOCK_VARS.
|
|
||||||
(push_file_scope, pushtag, pushdecl, pushdecl_top_level,
|
|
||||||
implicitly_declare, undeclared_variable, lookup_label,
|
|
||||||
declare_label, c_make_fname_decl, c_builtin_function,
|
|
||||||
c_builtin_function_ext_scope, store_parm_decls_newstyle): Adjust
|
|
||||||
bind callers.
|
|
||||||
|
|
||||||
--- gcc/c-decl.c.jj 2009-03-02 16:22:17.000000000 +0100
|
|
||||||
+++ gcc/c-decl.c 2009-03-27 20:14:08.000000000 +0100
|
|
||||||
@@ -209,6 +209,7 @@ struct c_binding GTY((chain_next ("%h.pr
|
|
||||||
BOOL_BITFIELD nested : 1; /* do not set DECL_CONTEXT when popping */
|
|
||||||
BOOL_BITFIELD inner_comp : 1; /* incomplete array completed in inner scope */
|
|
||||||
/* one free bit */
|
|
||||||
+ location_t locus; /* location for nested bindings */
|
|
||||||
};
|
|
||||||
#define B_IN_SCOPE(b1, b2) ((b1)->depth == (b2)->depth)
|
|
||||||
#define B_IN_CURRENT_SCOPE(b) ((b)->depth == current_scope->depth)
|
|
||||||
@@ -460,7 +461,8 @@ c_print_identifier (FILE *file, tree nod
|
|
||||||
which may be any of several kinds of DECL or TYPE or error_mark_node,
|
|
||||||
in the scope SCOPE. */
|
|
||||||
static void
|
|
||||||
-bind (tree name, tree decl, struct c_scope *scope, bool invisible, bool nested)
|
|
||||||
+bind (tree name, tree decl, struct c_scope *scope, bool invisible,
|
|
||||||
+ bool nested, location_t locus)
|
|
||||||
{
|
|
||||||
struct c_binding *b, **here;
|
|
||||||
|
|
||||||
@@ -479,6 +481,7 @@ bind (tree name, tree decl, struct c_sco
|
|
||||||
b->invisible = invisible;
|
|
||||||
b->nested = nested;
|
|
||||||
b->inner_comp = 0;
|
|
||||||
+ b->locus = locus;
|
|
||||||
|
|
||||||
b->type = 0;
|
|
||||||
|
|
||||||
@@ -824,6 +827,26 @@ pop_scope (void)
|
|
||||||
TREE_CHAIN (p) = BLOCK_VARS (block);
|
|
||||||
BLOCK_VARS (block) = p;
|
|
||||||
}
|
|
||||||
+ else if (VAR_OR_FUNCTION_DECL_P (p))
|
|
||||||
+ {
|
|
||||||
+ tree extp = copy_node (p);
|
|
||||||
+
|
|
||||||
+ DECL_EXTERNAL (extp) = 1;
|
|
||||||
+ TREE_STATIC (extp) = 0;
|
|
||||||
+ TREE_PUBLIC (extp) = 1;
|
|
||||||
+ DECL_INITIAL (extp) = NULL_TREE;
|
|
||||||
+ DECL_LANG_SPECIFIC (extp) = NULL;
|
|
||||||
+ if (TREE_CODE (p) == FUNCTION_DECL)
|
|
||||||
+ {
|
|
||||||
+ DECL_RESULT (extp) = NULL_TREE;
|
|
||||||
+ DECL_SAVED_TREE (extp) = NULL_TREE;
|
|
||||||
+ DECL_STRUCT_FUNCTION (extp) = NULL;
|
|
||||||
+ }
|
|
||||||
+ if (b->locus != UNKNOWN_LOCATION)
|
|
||||||
+ DECL_SOURCE_LOCATION (extp) = b->locus;
|
|
||||||
+ TREE_CHAIN (extp) = BLOCK_VARS (block);
|
|
||||||
+ BLOCK_VARS (block) = extp;
|
|
||||||
+ }
|
|
||||||
/* If this is the file scope, and we are processing more
|
|
||||||
than one translation unit in this compilation, set
|
|
||||||
DECL_CONTEXT of each decl to the TRANSLATION_UNIT_DECL.
|
|
||||||
@@ -905,7 +928,7 @@ push_file_scope (void)
|
|
||||||
|
|
||||||
for (decl = visible_builtins; decl; decl = TREE_CHAIN (decl))
|
|
||||||
bind (DECL_NAME (decl), decl, file_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/true);
|
|
||||||
+ /*invisible=*/false, /*nested=*/true, DECL_SOURCE_LOCATION (decl));
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
@@ -951,7 +974,8 @@ pushtag (tree name, tree type)
|
|
||||||
/* Record the identifier as the type's name if it has none. */
|
|
||||||
if (name && !TYPE_NAME (type))
|
|
||||||
TYPE_NAME (type) = name;
|
|
||||||
- bind (name, type, current_scope, /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ bind (name, type, current_scope, /*invisible=*/false, /*nested=*/false,
|
|
||||||
+ UNKNOWN_LOCATION);
|
|
||||||
|
|
||||||
/* Create a fake NULL-named TYPE_DECL node whose TREE_TYPE will be the
|
|
||||||
tagged type we just added to the current scope. This fake
|
|
||||||
@@ -2051,6 +2075,7 @@ pushdecl (tree x)
|
|
||||||
struct c_scope *scope = current_scope;
|
|
||||||
struct c_binding *b;
|
|
||||||
bool nested = false;
|
|
||||||
+ location_t locus = DECL_SOURCE_LOCATION (x);
|
|
||||||
|
|
||||||
/* Must set DECL_CONTEXT for everything not at file scope or
|
|
||||||
DECL_FILE_SCOPE_P won't work. Local externs don't count
|
|
||||||
@@ -2069,7 +2094,8 @@ pushdecl (tree x)
|
|
||||||
/* Anonymous decls are just inserted in the scope. */
|
|
||||||
if (!name)
|
|
||||||
{
|
|
||||||
- bind (name, x, scope, /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ bind (name, x, scope, /*invisible=*/false, /*nested=*/false,
|
|
||||||
+ locus);
|
|
||||||
return x;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -2229,7 +2255,8 @@ pushdecl (tree x)
|
|
||||||
= build_type_attribute_variant (thistype,
|
|
||||||
TYPE_ATTRIBUTES (b->type));
|
|
||||||
TREE_TYPE (b->decl) = thistype;
|
|
||||||
- bind (name, b->decl, scope, /*invisible=*/false, /*nested=*/true);
|
|
||||||
+ bind (name, b->decl, scope, /*invisible=*/false, /*nested=*/true,
|
|
||||||
+ locus);
|
|
||||||
return b->decl;
|
|
||||||
}
|
|
||||||
else if (TREE_PUBLIC (x))
|
|
||||||
@@ -2247,7 +2274,7 @@ pushdecl (tree x)
|
|
||||||
else
|
|
||||||
{
|
|
||||||
bind (name, x, external_scope, /*invisible=*/true,
|
|
||||||
- /*nested=*/false);
|
|
||||||
+ /*nested=*/false, locus);
|
|
||||||
nested = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -2260,7 +2287,7 @@ pushdecl (tree x)
|
|
||||||
if (TREE_CODE (x) == TYPE_DECL)
|
|
||||||
clone_underlying_type (x);
|
|
||||||
|
|
||||||
- bind (name, x, scope, /*invisible=*/false, nested);
|
|
||||||
+ bind (name, x, scope, /*invisible=*/false, nested, locus);
|
|
||||||
|
|
||||||
/* If x's type is incomplete because it's based on a
|
|
||||||
structure or union which has not yet been fully declared,
|
|
||||||
@@ -2309,11 +2336,12 @@ pushdecl_top_level (tree x)
|
|
||||||
|
|
||||||
if (TREE_PUBLIC (x))
|
|
||||||
{
|
|
||||||
- bind (name, x, external_scope, /*invisible=*/true, /*nested=*/false);
|
|
||||||
+ bind (name, x, external_scope, /*invisible=*/true, /*nested=*/false,
|
|
||||||
+ UNKNOWN_LOCATION);
|
|
||||||
nested = true;
|
|
||||||
}
|
|
||||||
if (file_scope)
|
|
||||||
- bind (name, x, file_scope, /*invisible=*/false, nested);
|
|
||||||
+ bind (name, x, file_scope, /*invisible=*/false, nested, UNKNOWN_LOCATION);
|
|
||||||
|
|
||||||
return x;
|
|
||||||
}
|
|
||||||
@@ -2368,7 +2396,8 @@ implicitly_declare (tree functionid)
|
|
||||||
if (!DECL_BUILT_IN (decl) && DECL_IS_BUILTIN (decl))
|
|
||||||
{
|
|
||||||
bind (functionid, decl, file_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/true);
|
|
||||||
+ /*invisible=*/false, /*nested=*/true,
|
|
||||||
+ DECL_SOURCE_LOCATION (decl));
|
|
||||||
return decl;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
@@ -2409,7 +2438,8 @@ implicitly_declare (tree functionid)
|
|
||||||
b->type = TREE_TYPE (decl);
|
|
||||||
TREE_TYPE (decl) = newtype;
|
|
||||||
bind (functionid, decl, current_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/true);
|
|
||||||
+ /*invisible=*/false, /*nested=*/true,
|
|
||||||
+ DECL_SOURCE_LOCATION (decl));
|
|
||||||
return decl;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -2472,7 +2502,8 @@ undeclared_variable (tree id, location_t
|
|
||||||
will be nonnull but current_function_scope will be null. */
|
|
||||||
scope = current_function_scope ? current_function_scope : current_scope;
|
|
||||||
}
|
|
||||||
- bind (id, error_mark_node, scope, /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ bind (id, error_mark_node, scope, /*invisible=*/false, /*nested=*/false,
|
|
||||||
+ UNKNOWN_LOCATION);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Subroutine of lookup_label, declare_label, define_label: construct a
|
|
||||||
@@ -2526,7 +2557,7 @@ lookup_label (tree name)
|
|
||||||
|
|
||||||
/* Ordinary labels go in the current function scope. */
|
|
||||||
bind (name, label, current_function_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ /*invisible=*/false, /*nested=*/false, UNKNOWN_LOCATION);
|
|
||||||
return label;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -2556,7 +2587,7 @@ declare_label (tree name)
|
|
||||||
|
|
||||||
/* Declared labels go in the current scope. */
|
|
||||||
bind (name, label, current_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ /*invisible=*/false, /*nested=*/false, UNKNOWN_LOCATION);
|
|
||||||
return label;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -2603,7 +2634,7 @@ define_label (location_t location, tree
|
|
||||||
|
|
||||||
/* Ordinary labels go in the current function scope. */
|
|
||||||
bind (name, label, current_function_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ /*invisible=*/false, /*nested=*/false, UNKNOWN_LOCATION);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!in_system_header && lookup_name (name))
|
|
||||||
@@ -2806,7 +2837,7 @@ c_make_fname_decl (tree id, int type_dep
|
|
||||||
{
|
|
||||||
DECL_CONTEXT (decl) = current_function_decl;
|
|
||||||
bind (id, decl, current_function_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ /*invisible=*/false, /*nested=*/false, UNKNOWN_LOCATION);
|
|
||||||
}
|
|
||||||
|
|
||||||
finish_decl (decl, init, NULL_TREE);
|
|
||||||
@@ -2826,7 +2857,8 @@ c_builtin_function (tree decl)
|
|
||||||
/* Should never be called on a symbol with a preexisting meaning. */
|
|
||||||
gcc_assert (!I_SYMBOL_BINDING (id));
|
|
||||||
|
|
||||||
- bind (id, decl, external_scope, /*invisible=*/true, /*nested=*/false);
|
|
||||||
+ bind (id, decl, external_scope, /*invisible=*/true, /*nested=*/false,
|
|
||||||
+ UNKNOWN_LOCATION);
|
|
||||||
|
|
||||||
/* Builtins in the implementation namespace are made visible without
|
|
||||||
needing to be explicitly declared. See push_file_scope. */
|
|
||||||
@@ -2851,7 +2883,8 @@ c_builtin_function_ext_scope (tree decl)
|
|
||||||
/* Should never be called on a symbol with a preexisting meaning. */
|
|
||||||
gcc_assert (!I_SYMBOL_BINDING (id));
|
|
||||||
|
|
||||||
- bind (id, decl, external_scope, /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ bind (id, decl, external_scope, /*invisible=*/false, /*nested=*/false,
|
|
||||||
+ UNKNOWN_LOCATION);
|
|
||||||
|
|
||||||
/* Builtins in the implementation namespace are made visible without
|
|
||||||
needing to be explicitly declared. See push_file_scope. */
|
|
||||||
@@ -6348,7 +6381,8 @@ store_parm_decls_newstyle (tree fndecl,
|
|
||||||
if (DECL_NAME (decl))
|
|
||||||
{
|
|
||||||
bind (DECL_NAME (decl), decl, current_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ /*invisible=*/false, /*nested=*/false,
|
|
||||||
+ UNKNOWN_LOCATION);
|
|
||||||
if (!TREE_USED (decl))
|
|
||||||
warn_if_shadowing (decl);
|
|
||||||
}
|
|
||||||
@@ -6365,14 +6399,14 @@ store_parm_decls_newstyle (tree fndecl,
|
|
||||||
DECL_CONTEXT (decl) = current_function_decl;
|
|
||||||
if (DECL_NAME (decl))
|
|
||||||
bind (DECL_NAME (decl), decl, current_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ /*invisible=*/false, /*nested=*/false, UNKNOWN_LOCATION);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* And all the tag declarations. */
|
|
||||||
for (decl = arg_info->tags; decl; decl = TREE_CHAIN (decl))
|
|
||||||
if (TREE_PURPOSE (decl))
|
|
||||||
bind (TREE_PURPOSE (decl), TREE_VALUE (decl), current_scope,
|
|
||||||
- /*invisible=*/false, /*nested=*/false);
|
|
||||||
+ /*invisible=*/false, /*nested=*/false, UNKNOWN_LOCATION);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Subroutine of store_parm_decls which handles old-style function
|
|
Loading…
Reference in New Issue
Block a user