shithub: scc

Download patch

ref: d13389de9fd2734c139925967611dcca12939890
parent: 7d89b20305ce03b51b7a7b03f2456d20e08b177a
author: Roberto E. Vargas Caballero <[email protected]>
date: Tue Aug 9 09:41:33 EDT 2016

[cc1] Allow conversions between pointers to equivalent types

This is explicitly allowed by the standard, and it makes sense.

--- a/cc1/expr.c
+++ b/cc1/expr.c
@@ -292,7 +292,8 @@
 				return NULL;
 			break;
 		case PTR:
-			if (iscast ||
+			if (eqtype(newtp, oldtp, 1) ||
+			    iscast ||
 			    newtp == pvoidtype || oldtp == pvoidtype) {
 				np->type = newtp;
 				return np;