diff --git a/Lib/test/test_tcl.py b/Lib/test/test_tcl.py
index 10b7675..add0871 100644
--- a/Lib/test/test_tcl.py
+++ b/Lib/test/test_tcl.py
@@ -131,7 +131,9 @@
 
     def get_integers(self):
         integers = (0, 1, -1, 2**31-1, -2**31, 2**31, -2**31-1, 2**63-1, -2**63)
-        if tcl_version >= (8, 5):  # bignum was added in Tcl 8.5
+        # bignum was added in Tcl 8.5, but its support is able only since 8.5.8
+        if (get_tk_patchlevel() >= (8, 6, 0, 'final') or
+            (8, 5, 8) <= get_tk_patchlevel() < (8, 6)):
             integers += (2**63, -2**63-1, 2**1000, -2**1000)
         return integers
 
diff --git a/Modules/_tkinter.c b/Modules/_tkinter.c
index 3f58353..4d61bb2 100644
--- a/Modules/_tkinter.c
+++ b/Modules/_tkinter.c
@@ -52,11 +52,12 @@
 
 #include "tkinter.h"
 
-#if TK_VERSION_HEX < 0x08040002
+#if TK_HEX_VERSION < 0x08040200
 #error "Tk older than 8.4 not supported"
 #endif
 
-#if TK_VERSION_HEX >= 0x08050002
+#if TK_HEX_VERSION >= 0x08050208 && TK_HEX_VERSION < 0x08060000 || \
+    TK_HEX_VERSION >= 0x08060200
 #define HAVE_LIBTOMMAMTH
 #include <tclTomMath.h>
 #endif
@@ -1227,7 +1228,7 @@
             Tcl_GetCharLength(value));
     }
 
-#if TK_VERSION_HEX >= 0x08050000
+#if TK_HEX_VERSION >= 0x08050000
     if (app->BooleanType == NULL &&
         strcmp(value->typePtr->name, "booleanString") == 0) {
         /* booleanString type is not registered in Tcl */
diff --git a/Modules/tkinter.h b/Modules/tkinter.h
index f7e50cd..cb5a806 100644
--- a/Modules/tkinter.h
+++ b/Modules/tkinter.h
@@ -4,24 +4,24 @@
 /* This header is used to share some macros between _tkinter.c and
  * tkappinit.c.
  * Be sure to include tk.h before including this header so
- * TK_VERSION_HEX is properly defined. */
+ * TK_HEX_VERSION is properly defined. */
 
 /* TK_RELEASE_LEVEL is always one of the following:
- *	TCL_ALPHA_RELEASE   0
+ *  TCL_ALPHA_RELEASE   0
  *  TCL_BETA_RELEASE    1
  *  TCL_FINAL_RELEASE   2
  */
-#define TK_VERSION_HEX ((TK_MAJOR_VERSION << 24) | \
-		(TK_MINOR_VERSION << 16) | \
-		(TK_RELEASE_SERIAL << 8) | \
-		(TK_RELEASE_LEVEL << 0))
+#define TK_HEX_VERSION ((TK_MAJOR_VERSION << 24) | \
+                        (TK_MINOR_VERSION << 16) | \
+                        (TK_RELEASE_LEVEL << 8) | \
+                        (TK_RELEASE_SERIAL << 0))
 
 /* Protect Tk 8.4.13 and older from a deadlock that happens when trying
  * to load tk after a failed attempt. */
-#if TK_VERSION_HEX < 0x08040e02
+#if TK_HEX_VERSION < 0x0804020e
 #define TKINTER_PROTECT_LOADTK
 #define TKINTER_LOADTK_ERRMSG \
-	"Calling Tk_Init again after a previous call failed might deadlock"
+        "Calling Tk_Init again after a previous call failed might deadlock"
 #endif
 
 #endif /* !TKINTER_H */
