From 66f77157f599da195d8aece01fc1f7ae8f7d3208 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Thu, 17 Feb 2000 02:15:22 +0100
Subject: [PATCH] Added warning about usage of * in types.

Rev: src/language.yacc:1.164
---
 src/language.yacc | 32 +++++++++++++++++++++++++++++---
 1 file changed, 29 insertions(+), 3 deletions(-)

diff --git a/src/language.yacc b/src/language.yacc
index 270a914c6a..bd419f178c 100644
--- a/src/language.yacc
+++ b/src/language.yacc
@@ -188,7 +188,7 @@
 /* This is the grammar definition of Pike. */
 
 #include "global.h"
-RCSID("$Id: language.yacc,v 1.163 2000/02/15 22:06:17 hubbe Exp $");
+RCSID("$Id: language.yacc,v 1.164 2000/02/17 01:15:22 grubba Exp $");
 #ifdef HAVE_MEMORY_H
 #include <memory.h>
 #endif
@@ -667,6 +667,9 @@ def: modifiers type_or_error optional_stars F_IDENTIFIER push_compiler_frame0
     int e;
     /* construct the function type */
     push_finished_type(compiler_frame->current_type);
+    if ($3) {
+      yywarning("The *-syntax in types is obsolete. Use array instead.");
+    }
     while(--$3>=0) push_type(T_ARRAY);
     
     if(compiler_frame->current_return_type)
@@ -995,11 +998,19 @@ soft_cast: '[' type ']'
 
 type6: type | identifier_type ;
   
-type: type '*' { push_type(T_ARRAY); }
+type: type '*'
+  {
+    yywarning("The *-syntax in types is obsolete. Use array instead.");
+    push_type(T_ARRAY);
+  }
   | type2
   ;
 
-type7: type7 '*' { push_type(T_ARRAY); }
+type7: type7 '*'
+  {
+    yywarning("The *-syntax in types is obsolete. Use array instead.");
+    push_type(T_ARRAY);
+  }
   | type4
   ;
 
@@ -1296,6 +1307,9 @@ new_name: optional_stars F_IDENTIFIER
   {
     struct pike_string *type;
     push_finished_type(compiler_frame->current_type);
+    if ($1) {
+      yywarning("The *-syntax in types is obsolete. Use array instead.");
+    }
     while($1--) push_type(T_ARRAY);
     type=compiler_pop_type();
     define_variable($2->u.sval.u.string, type, current_modifiers);
@@ -1307,6 +1321,9 @@ new_name: optional_stars F_IDENTIFIER
   {
     struct pike_string *type;
     push_finished_type(compiler_frame->current_type);
+    if ($1) {
+      yywarning("The *-syntax in types is obsolete. Use array instead.");
+    }
     while($1--) push_type(T_ARRAY);
     type=compiler_pop_type();
     if ((current_modifiers & ID_EXTERN) && (compiler_pass == 1)) {
@@ -1343,6 +1360,9 @@ new_name: optional_stars F_IDENTIFIER
 new_local_name: optional_stars F_IDENTIFIER
   {    
     push_finished_type($<n>0->u.sval.u.string);
+    if ($1) {
+      yywarning("The *-syntax in types is obsolete. Use array instead.");
+    }
     while($1--) push_type(T_ARRAY);
     add_local_name($2->u.sval.u.string, compiler_pop_type(),0);
     $$=mknode(F_ASSIGN,mkintnode(0),mklocalnode(islocal($2->u.sval.u.string),0));
@@ -1352,6 +1372,9 @@ new_local_name: optional_stars F_IDENTIFIER
   | optional_stars F_IDENTIFIER '=' expr0 
   {
     push_finished_type($<n>0->u.sval.u.string);
+    if ($1) {
+      yywarning("The *-syntax in types is obsolete. Use array instead.");
+    }
     while($1--) push_type(T_ARRAY);
     add_local_name($2->u.sval.u.string, compiler_pop_type(),0);
     $$=mknode(F_ASSIGN,$4,mklocalnode(islocal($2->u.sval.u.string),0));
@@ -1632,6 +1655,9 @@ local_function2: optional_stars F_IDENTIFIER push_compiler_frame1
     debug_malloc_touch(compiler_frame->current_return_type);
     
     push_finished_type($<n>0->u.sval.u.string);
+    if ($1) {
+      yywarning("The *-syntax in types is obsolete. Use array instead.");
+    }
     while($1--) push_type(T_ARRAY);
 
     if(compiler_frame->current_return_type)
-- 
GitLab