--- misc/strip.c.orig	2018-09-16 17:48:10.000000000 -0700
+++ misc/strip.c	2018-09-16 17:52:04.000000000 -0700
@@ -2951,11 +2951,15 @@
 		n_type = symbols[i].n_type;
 		n_sect = symbols[i].n_sect;
 		if((n_type & N_TYPE) == N_SECT){
-		    if(n_sect == 0 || n_sect > nsects){
+		    if(n_sect > nsects){
 			error_arch(arch, member, "bad n_sect for symbol "
 				   "table entry %d in: ", i);
 			return(FALSE);
 		    }
+		    if (n_sect == 0) {
+			warning_arch(arch, member, "ignoring n_sect == 0 for "
+				"symbol table entry %d in: ", i);
+		    }
 		    s_flags = sections[n_sect - 1]->flags;
 		}
 		n_desc = symbols[i].n_desc;
@@ -2967,11 +2971,15 @@
 		n_type = symbols64[i].n_type;
 		n_sect = symbols64[i].n_sect;
 		if((n_type & N_TYPE) == N_SECT){
-		    if(n_sect == 0 || n_sect > nsects){
+		    if(n_sect > nsects){
 			error_arch(arch, member, "bad n_sect for symbol "
 				   "table entry %d in: ", i);
 			return(FALSE);
 		    }
+		    if (n_sect == 0) {
+			warning_arch(arch, member, "ignoring n_sect == 0 for "
+				"symbol table entry %d in: ", i);
+		    }
 		    s_flags = sections64[n_sect - 1]->flags;
 		}
 		n_desc = symbols64[i].n_desc;
