Reproducer steps :

> cat test.sh
#!/bin/sh

[[ $A -lt $B ]]

> ksh -R foo test.sh
test.sh: warning: line 3: -lt within [[...]] obsolete, use ((...))

Actual result:

> grep obsolete foo
1gxOEe;v;Bst.sh: warning: line 3: -lt within [[...]] obsolete, use ((...))

Expected result:
There should not be a warning in cross reference database file.

I am attaching a patch that fixes this issue. Thanks to Paulo Andrade 
<pandr...@redhat.com> for the patch.


-- 
--
Siteshwar Vashisht
diff --git a/src/cmd/ksh93/sh/parse.c b/src/cmd/ksh93/sh/parse.c
index d139389..5a02af7 100644
--- a/src/cmd/ksh93/sh/parse.c
+++ b/src/cmd/ksh93/sh/parse.c
@@ -2032,6 +2032,7 @@ unsigned long kiaentity(Lex_t *lexp,const char *name,int len,int type,int first,
 		else
 			sfputr(stkp,name,0);
 	}
+	sfputc(stkp,'\0');
 	np = nv_search(stakptr(offset),lexp->entity_tree,NV_ADD);
 	stkseek(stkp,offset);
 	np->nvalue.i = pkind;
_______________________________________________
ast-developers mailing list
ast-developers@lists.research.att.com
http://lists.research.att.com/mailman/listinfo/ast-developers

Reply via email to