diff --git a/src/files.c b/src/files.c
index 9f10cff2bc7b47cf8eb73c5aa588eeee511e70ff..8955e19008d2a85fd4fdfbde1bcca32a58972bbc 100644
--- a/src/files.c
+++ b/src/files.c
@@ -179,8 +179,8 @@ int write_lockfile(const char *lockfilename, const char *origfilename, bool modi
     struct stat fileinfo;
     char *lockdata = charalloc(1024);
     char myhostname[32];
-    ssize_t lockdatalen = 1024;
-    ssize_t wroteamt;
+    size_t lockdatalen = 1024;
+    size_t wroteamt;
 
     mypid = getpid();
     myuid = geteuid();
@@ -320,8 +320,8 @@ int do_lockfile(const char *filename)
     fprintf(stderr, "lock file name is %s\n", lockfilename);
 #endif
     if (stat(lockfilename, &fileinfo) != -1) {
-	ssize_t readtot = 0;
-	ssize_t readamt = 0;
+	size_t readtot = 0;
+	size_t readamt = 0;
 	char *lockbuf, *question, *pidstring, *postedname, *promptstr;
 	int room, response;
 
diff --git a/src/utils.c b/src/utils.c
index cbd5b55b031c11f11dbee6c2547bba97bd8add7d..7c61cebf7a17955537a80d304bed513f5d88ee10 100644
--- a/src/utils.c
+++ b/src/utils.c
@@ -642,8 +642,8 @@ filestruct *fsfromline(ssize_t lineno)
 	    f = f->next;
 
     if (f->lineno != lineno) {
-	statusline(ALERT, _("Internal error: can't match line %d.  "
-			"Please save your work."), lineno);
+	statusline(ALERT, _("Internal error: can't match line %ld.  "
+			"Please save your work."), (long)lineno);
 	return NULL;
     }