patch 8.1.0753: printf format not checked for semsg()

Problem:    printf format not checked for semsg().
Solution:   Add GNUC attribute and fix reported problems. (Dominique Pelle,
            closes #3805)
diff --git a/src/buffer.c b/src/buffer.c
index fd29be7..6bacb16 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -1407,7 +1407,7 @@
 	    else
 #endif
 	    {
-		semsg(_("E89: No write since last change for buffer %ld (add ! to override)"),
+		semsg(_("E89: No write since last change for buffer %d (add ! to override)"),
 								 buf->b_fnum);
 		return FAIL;
 	    }
@@ -2283,7 +2283,7 @@
 	if ((options & GETF_ALT) && n == 0)
 	    emsg(_(e_noalt));
 	else
-	    semsg(_("E92: Buffer %ld not found"), n);
+	    semsg(_("E92: Buffer %d not found"), n);
 	return FAIL;
     }