/* A YACC grammar to parse a superset of the AT&T linker scripting language.
- Copyright (C) 1991-2016 Free Software Foundation, Inc.
+ Copyright (C) 1991-2017 Free Software Foundation, Inc.
Written by Steve Chamberlain of Cygnus Support (steve@cygnus.com).
This file is part of the GNU Binutils.
%type <etree> opt_exp_without_type opt_subalign opt_align
%type <fill> fill_opt fill_exp
%type <name_list> exclude_name_list
-%type <wildcard_list> file_NAME_list
+%type <wildcard_list> section_NAME_list
%type <flag_info_list> sect_flag_list
%type <flag_info> sect_flags
%type <name> memspec_opt casesymlist
%token DEFINED TARGET_K SEARCH_DIR MAP ENTRY
%token <integer> NEXT
%token SIZEOF ALIGNOF ADDR LOADADDR MAX_K MIN_K
-%token STARTUP HLL SYSLIB FLOAT NOFLOAT NOCROSSREFS
+%token STARTUP HLL SYSLIB FLOAT NOFLOAT NOCROSSREFS NOCROSSREFS_TO
%token ORIGIN FILL
%token LENGTH CREATE_OBJECT_SYMBOLS INPUT GROUP OUTPUT CONSTRUCTORS
%token ALIGNMOD AT SUBALIGN HIDDEN PROVIDE PROVIDE_HIDDEN AS_NEEDED
{
lang_add_nocrossref ($3);
}
+ | NOCROSSREFS_TO '(' nocrossref_list ')'
+ {
+ lang_add_nocrossref_to ($3);
+ }
| EXTERN '(' extern_name_list ')'
| INSERT_K AFTER NAME
{ lang_add_insert ($3, 0); }
}
;
-file_NAME_list:
- file_NAME_list opt_comma wildcard_spec
+section_NAME_list:
+ section_NAME_list opt_comma wildcard_spec
{
struct wildcard_list *tmp;
tmp = (struct wildcard_list *) xmalloc (sizeof *tmp);
tmp.section_flag_list = $1;
lang_add_wild (&tmp, NULL, ldgram_had_keep);
}
- | '[' file_NAME_list ']'
+ | '[' section_NAME_list ']'
{
lang_add_wild (NULL, $2, ldgram_had_keep);
}
- | sect_flags '[' file_NAME_list ']'
+ | sect_flags '[' section_NAME_list ']'
{
struct wildcard_spec tmp;
tmp.name = NULL;
tmp.section_flag_list = $1;
lang_add_wild (&tmp, $3, ldgram_had_keep);
}
- | wildcard_spec '(' file_NAME_list ')'
+ | wildcard_spec '(' section_NAME_list ')'
{
lang_add_wild (&$1, $3, ldgram_had_keep);
}
- | sect_flags wildcard_spec '(' file_NAME_list ')'
+ | sect_flags wildcard_spec '(' section_NAME_list ')'
{
$2.section_flag_list = $1;
lang_add_wild (&$2, $4, ldgram_had_keep);