gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / binutils / rcparse.y
index e80cbc607842046160e9bf705c35917b306ad245..78ce917e233c5efdba82c409e2d913c949bba531 100644 (file)
@@ -1,6 +1,5 @@
 %{ /* rcparse.y -- parser for Windows rc files
-   Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2007, 2008,
-   2011  Free Software Foundation, Inc.
+   Copyright (C) 1997-2020 Free Software Foundation, Inc.
    Written by Ian Lance Taylor, Cygnus Support.
    Extended by Kai Tietz, Onevision.
 
@@ -563,7 +562,7 @@ control:
              base_style = BS_AUTO3STATE;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -575,7 +574,7 @@ control:
              base_style = BS_AUTOCHECKBOX;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -587,7 +586,7 @@ control:
              base_style = BS_AUTORADIOBUTTON;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -599,7 +598,7 @@ control:
              base_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
              class.named = 0;
              class.u.id = CTL_EDIT;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -614,7 +613,7 @@ control:
              base_style = BS_CHECKBOX | WS_TABSTOP;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -628,7 +627,7 @@ control:
              base_style = 0;
              class.named = 0;
              class.u.id = CTL_COMBOBOX;
-             res_text_field = res_null_text;   
+             res_text_field = res_null_text;
            }
            control_params
          {
@@ -660,7 +659,7 @@ control:
              base_style = SS_CENTER;
              class.named = 0;
              class.u.id = CTL_STATIC;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -672,7 +671,7 @@ control:
              base_style = BS_DEFPUSHBUTTON | WS_TABSTOP;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -684,7 +683,7 @@ control:
              base_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
              class.named = 0;
              class.u.id = CTL_EDIT;
-             res_text_field = res_null_text;   
+             res_text_field = res_null_text;
            }
            control_params
          {
@@ -696,7 +695,7 @@ control:
              base_style = BS_GROUPBOX;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -708,7 +707,7 @@ control:
              base_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
              class.named = 0;
              class.u.id = CTL_EDIT;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -746,7 +745,7 @@ control:
              base_style = ES_LEFT | WS_BORDER | WS_TABSTOP;
              class.named = 0;
              class.u.id = CTL_EDIT;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -761,7 +760,7 @@ control:
              base_style = LBS_NOTIFY | WS_BORDER;
              class.named = 0;
              class.u.id = CTL_LISTBOX;
-             res_text_field = res_null_text;   
+             res_text_field = res_null_text;
            }
            control_params
          {
@@ -773,7 +772,7 @@ control:
              base_style = SS_LEFT;
              class.named = 0;
              class.u.id = CTL_STATIC;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -796,7 +795,7 @@ control:
              base_style = BS_PUSHBUTTON | WS_TABSTOP;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -808,7 +807,7 @@ control:
              base_style = BS_RADIOBUTTON;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -820,7 +819,7 @@ control:
              base_style = SS_RIGHT;
              class.named = 0;
              class.u.id = CTL_STATIC;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
@@ -832,7 +831,7 @@ control:
              base_style = 0;
              class.named = 0;
              class.u.id = CTL_SCROLLBAR;
-             res_text_field = res_null_text;   
+             res_text_field = res_null_text;
            }
            control_params
          {
@@ -844,14 +843,14 @@ control:
              base_style = BS_3STATE;
              class.named = 0;
              class.u.id = CTL_BUTTON;
-             res_text_field = $2;      
+             res_text_field = $2;
            }
            control_params
          {
            $$ = $4;
          }
        | USERBUTTON resref numexpr ',' numexpr ',' numexpr ','
-           numexpr ',' numexpr ',' 
+           numexpr ',' numexpr ','
            { style = WS_CHILD | WS_VISIBLE; }
            styleexpr optcnumexpr
          {
@@ -1259,7 +1258,7 @@ rcdata_data:
 /* Stringtable resources.  */
 
 stringtable:
-         STRINGTABLE suboptions BEG 
+         STRINGTABLE suboptions BEG
            { sub_res_info = $2; rcparse_rcdata (); }
            string_data END { rcparse_normal (); }
        ;
@@ -1423,16 +1422,18 @@ fixedverinfo:
                  res_alloc (sizeof (rc_fixed_versioninfo)));
            memset ($$, 0, sizeof (rc_fixed_versioninfo));
          }
-       | fixedverinfo FILEVERSION numexpr cnumexpr cnumexpr cnumexpr
+       | fixedverinfo FILEVERSION numexpr optcnumexpr optcnumexpr
+         optcnumexpr
          {
-           $1->file_version_ms = ($3 << 16) | $4;
-           $1->file_version_ls = ($5 << 16) | $6;
+           $1->file_version_ms = ($3 << 16) | ($4 & 0xffff);
+           $1->file_version_ls = ($5 << 16) | ($6 & 0xffff);
            $$ = $1;
          }
-       | fixedverinfo PRODUCTVERSION numexpr cnumexpr cnumexpr cnumexpr
+       | fixedverinfo PRODUCTVERSION numexpr optcnumexpr optcnumexpr
+         optcnumexpr
          {
-           $1->product_version_ms = ($3 << 16) | $4;
-           $1->product_version_ls = ($5 << 16) | $6;
+           $1->product_version_ms = ($3 << 16) | ($4 & 0xffff);
+           $1->product_version_ls = ($5 << 16) | ($6 & 0xffff);
            $$ = $1;
          }
        | fixedverinfo FILEFLAGSMASK numexpr
@@ -1886,12 +1887,12 @@ sizednumexpr:
          }
        | sizednumexpr '/' sizednumexpr
          {
-           $$.val = $1.val / $3.val;
+           $$.val = $1.val / ($3.val ? $3.val : 1);
            $$.dword = $1.dword || $3.dword;
          }
        | sizednumexpr '%' sizednumexpr
          {
-           $$.val = $1.val % $3.val;
+           $$.val = $1.val % ($3.val ? $3.val : 1);
            $$.dword = $1.dword || $3.dword;
          }
        | sizednumexpr '+' sizednumexpr
@@ -1965,12 +1966,13 @@ sizedposnumexpr:
          }
        | sizedposnumexpr '/' sizednumexpr
          {
-           $$.val = $1.val / $3.val;
+           $$.val = $1.val / ($3.val ? $3.val : 1);
            $$.dword = $1.dword || $3.dword;
          }
        | sizedposnumexpr '%' sizednumexpr
          {
-           $$.val = $1.val % $3.val;
+           /* PR 17512: file: 89105a25.  */
+           $$.val = $1.val % ($3.val ? $3.val : 1);
            $$.dword = $1.dword || $3.dword;
          }
        | sizedposnumexpr '+' sizednumexpr
This page took 0.028177 seconds and 4 git commands to generate.