clean.mk: removed \'=\' in "-maxdepth=1"
[fw/sdcc] / src / SDCC.y
index 9b6492e9891ecb20e8eec10c4967f13c8ae6c707..2ef823c93c0e07a1a29af9226af9f376b788dc58 100644 (file)
@@ -66,12 +66,12 @@ bool uselessDecl = TRUE;
     symbol     *sym ;      /* symbol table pointer       */
     structdef  *sdef;      /* structure definition       */
     char       yychar[SDCC_NAME_MAX+1];
-    sym_link       *lnk ;      /* declarator  or specifier   */
+    sym_link   *lnk ;      /* declarator  or specifier   */
     int        yyint;      /* integer value returned     */
     value      *val ;      /* for integer constant       */
     initList   *ilist;     /* initial list               */
-    char       *yyinline; /* inlined assembler code */
-    ast       *asts;     /* expression tree            */
+    const char *yyinline;  /* inlined assembler code     */
+    ast        *asts;      /* expression tree            */
 }
 
 %token <yychar> IDENTIFIER TYPE_NAME
@@ -1027,6 +1027,8 @@ pointer
          {
             $$ = $1  ;         
             DCL_TSPEC($1) = $2;
+             DCL_PTR_CONST($1) = SPEC_CONST($2);
+             DCL_PTR_VOLATILE($1) = SPEC_VOLATILE($2);
         }
    | unqualified_pointer pointer         
          {
@@ -1054,7 +1056,6 @@ pointer
                     DCL_TYPE($3) = POINTER ;
                     break;
                 case S_CODE:
-                    DCL_PTR_CONST($3) = 1;
                     DCL_TYPE($3) = CPOINTER ;
                     break;
                 case S_EEPROM: