Issue #18256: Compilation fix for recent AIX releases.  Patch by David Edelsohn.
diff --git a/Misc/ACKS b/Misc/ACKS
index ec8d94f..ae937af 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -334,6 +334,7 @@
 Walter Dörwald
 Hans Eckardt
 Rodolpho Eckhardt
+David Edelsohn
 John Edmonds
 Grant Edwards
 John Ehresman
diff --git a/Misc/NEWS b/Misc/NEWS
index aa76923..f1d6bf2 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -537,6 +537,9 @@
 Build
 -----
 
+- Issue #18256: Compilation fix for recent AIX releases.  Patch by
+  David Edelsohn.
+
 - Issue #17547: In configure, explicitly pass -Wformat for the benefit for GCC
   4.8.
 
diff --git a/Python/thread_pthread.h b/Python/thread_pthread.h
index 49713ce..e90ae7e 100644
--- a/Python/thread_pthread.h
+++ b/Python/thread_pthread.h
@@ -170,6 +170,7 @@
 PyThread__init_thread(void)
 {
 #if defined(_AIX) && defined(__GNUC__)
+    extern void pthread_init(void);
     pthread_init();
 #endif
 }
@@ -444,6 +445,7 @@
     pthread_lock *thelock = (pthread_lock *)lock;
     int status, error = 0;
 
+    (void) error; /* silence unused-but-set-variable warning */
     dprintf(("PyThread_free_lock(%p) called\n", lock));
 
     /* some pthread-like implementations tie the mutex to the cond
@@ -530,6 +532,7 @@
     pthread_lock *thelock = (pthread_lock *)lock;
     int status, error = 0;
 
+    (void) error; /* silence unused-but-set-variable warning */
     dprintf(("PyThread_release_lock(%p) called\n", lock));
 
     status = pthread_mutex_lock( &thelock->mut );