Module Name:    src
Committed By:   christos
Date:           Fri Aug 19 10:58:15 UTC 2016

Modified Files:
        src/usr.bin/xlint/lint1: cgram.y func.c

Log Message:
be less aggressive in clearing blocks to protect against:

int
main(int argc, char *argv[])
{
        int rv;

        if ((rv = ({ int _ret = 1; if (argc == 1) {} _ret; })) != 0)
            printf("%d\n", rv);
        return 0;
}


To generate a diff of this commit:
cvs rdiff -u -r1.79 -r1.80 src/usr.bin/xlint/lint1/cgram.y
cvs rdiff -u -r1.25 -r1.26 src/usr.bin/xlint/lint1/func.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/xlint/lint1/cgram.y
diff -u src/usr.bin/xlint/lint1/cgram.y:1.79 src/usr.bin/xlint/lint1/cgram.y:1.80
--- src/usr.bin/xlint/lint1/cgram.y:1.79	Sun Jul 31 18:38:04 2016
+++ src/usr.bin/xlint/lint1/cgram.y	Fri Aug 19 06:58:15 2016
@@ -1,5 +1,5 @@
 %{
-/* $NetBSD: cgram.y,v 1.79 2016/07/31 22:38:04 dholland Exp $ */
+/* $NetBSD: cgram.y,v 1.80 2016/08/19 10:58:15 christos Exp $ */
 
 /*
  * Copyright (c) 1996 Christopher G. Demetriou.  All Rights Reserved.
@@ -35,7 +35,7 @@
 
 #include <sys/cdefs.h>
 #if defined(__RCSID) && !defined(lint)
-__RCSID("$NetBSD: cgram.y,v 1.79 2016/07/31 22:38:04 dholland Exp $");
+__RCSID("$NetBSD: cgram.y,v 1.80 2016/08/19 10:58:15 christos Exp $");
 #endif
 
 #include <stdlib.h>
@@ -1458,7 +1458,7 @@ stmnt_list:
 
 expr_stmnt:
 	  expr T_SEMI {
-		expr($1, 0, 0, 1);
+		expr($1, 0, 0, 0);
 		ftflg = 0;
 	  }
 	| T_SEMI {

Index: src/usr.bin/xlint/lint1/func.c
diff -u src/usr.bin/xlint/lint1/func.c:1.25 src/usr.bin/xlint/lint1/func.c:1.26
--- src/usr.bin/xlint/lint1/func.c:1.25	Fri Apr 19 13:43:05 2013
+++ src/usr.bin/xlint/lint1/func.c	Fri Aug 19 06:58:15 2016
@@ -1,4 +1,4 @@
-/*	$NetBSD: func.c,v 1.25 2013/04/19 17:43:05 christos Exp $	*/
+/*	$NetBSD: func.c,v 1.26 2016/08/19 10:58:15 christos Exp $	*/
 
 /*
  * Copyright (c) 1994, 1995 Jochen Pohl
@@ -37,7 +37,7 @@
 
 #include <sys/cdefs.h>
 #if defined(__RCSID) && !defined(lint)
-__RCSID("$NetBSD: func.c,v 1.25 2013/04/19 17:43:05 christos Exp $");
+__RCSID("$NetBSD: func.c,v 1.26 2016/08/19 10:58:15 christos Exp $");
 #endif
 
 #include <stdlib.h>
@@ -538,7 +538,7 @@ if1(tnode_t *tn)
 		tn = cconv(tn);
 	if (tn != NULL)
 		tn = promote(NOOP, 0, tn);
-	expr(tn, 0, 1, 1);
+	expr(tn, 0, 1, 0);
 	pushctrl(T_IF);
 }
 

Reply via email to