Add new Vietnamese translation
[deliverable/binutils-gdb.git] / ld / ldgram.y
index c8cf6c1d262e9adc65885f09a242a73b997c277a..3829e6ae00a15597ce4001619493fe6b85e9ad47 100644 (file)
@@ -92,7 +92,7 @@ static int error_index;
 }
 
 %type <etree> exp opt_exp_with_type mustbe_exp opt_at phdr_type phdr_val
-%type <etree> opt_exp_without_type opt_subalign
+%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
@@ -889,6 +889,11 @@ opt_at:
        |       { $$ = 0; }
        ;
 
+opt_align:
+               ALIGN_K '(' exp ')' { $$ = $3; }
+       |       { $$ = 0; }
+       ;
+
 opt_subalign:
                SUBALIGN '(' exp ')' { $$ = $3; }
        |       { $$ = 0; }
@@ -904,20 +909,21 @@ sect_constraint:
 section:       NAME            { ldlex_expression(); }
                opt_exp_with_type
                opt_at
+               opt_align
                opt_subalign    { ldlex_popstate (); ldlex_script (); }
                sect_constraint
                '{'
                        {
                          lang_enter_output_section_statement($1, $3,
                                                              sectype,
-                                                             0, $5, $4, $7);
+                                                             $5, $6, $4, $8);
                        }
                statement_list_opt
                '}' { ldlex_popstate (); ldlex_expression (); }
                memspec_opt memspec_at_opt phdr_opt fill_opt
                {
                  ldlex_popstate ();
-                 lang_leave_output_section_statement ($16, $13, $15, $14);
+                 lang_leave_output_section_statement ($17, $14, $16, $15);
                }
                opt_comma
                {}
@@ -1213,11 +1219,19 @@ vers_tag:
 vers_defns:
                VERS_IDENTIFIER
                {
-                 $$ = lang_new_vers_pattern (NULL, $1, ldgram_vers_current_lang);
+                 $$ = lang_new_vers_pattern (NULL, $1, ldgram_vers_current_lang, FALSE);
+               }
+        |       NAME
+               {
+                 $$ = lang_new_vers_pattern (NULL, $1, ldgram_vers_current_lang, TRUE);
                }
        |       vers_defns ';' VERS_IDENTIFIER
                {
-                 $$ = lang_new_vers_pattern ($1, $3, ldgram_vers_current_lang);
+                 $$ = lang_new_vers_pattern ($1, $3, ldgram_vers_current_lang, FALSE);
+               }
+       |       vers_defns ';' NAME
+               {
+                 $$ = lang_new_vers_pattern ($1, $3, ldgram_vers_current_lang, TRUE);
                }
        |       vers_defns ';' EXTERN NAME '{'
                        {
@@ -1244,27 +1258,27 @@ vers_defns:
                        }
        |       GLOBAL
                {
-                 $$ = lang_new_vers_pattern (NULL, "global", ldgram_vers_current_lang);
+                 $$ = lang_new_vers_pattern (NULL, "global", ldgram_vers_current_lang, FALSE);
                }
        |       vers_defns ';' GLOBAL
                {
-                 $$ = lang_new_vers_pattern ($1, "global", ldgram_vers_current_lang);
+                 $$ = lang_new_vers_pattern ($1, "global", ldgram_vers_current_lang, FALSE);
                }
        |       LOCAL
                {
-                 $$ = lang_new_vers_pattern (NULL, "local", ldgram_vers_current_lang);
+                 $$ = lang_new_vers_pattern (NULL, "local", ldgram_vers_current_lang, FALSE);
                }
        |       vers_defns ';' LOCAL
                {
-                 $$ = lang_new_vers_pattern ($1, "local", ldgram_vers_current_lang);
+                 $$ = lang_new_vers_pattern ($1, "local", ldgram_vers_current_lang, FALSE);
                }
        |       EXTERN
                {
-                 $$ = lang_new_vers_pattern (NULL, "extern", ldgram_vers_current_lang);
+                 $$ = lang_new_vers_pattern (NULL, "extern", ldgram_vers_current_lang, FALSE);
                }
        |       vers_defns ';' EXTERN
                {
-                 $$ = lang_new_vers_pattern ($1, "extern", ldgram_vers_current_lang);
+                 $$ = lang_new_vers_pattern ($1, "extern", ldgram_vers_current_lang, FALSE);
                }
        ;
 
This page took 0.024427 seconds and 4 git commands to generate.