--- e2fsprogs-1.44.4/lib/ext2fs/hashmap.h.old	2018-10-22 22:12:54.700000000 +0000
+++ e2fsprogs-1.44.4/lib/ext2fs/hashmap.h	2018-10-22 22:13:49.010000000 +0000
@@ -17,12 +17,12 @@
 		struct ext2fs_hashmap_entry *next;
 		struct ext2fs_hashmap_entry *list_next;
 		struct ext2fs_hashmap_entry *list_prev;
-#if __GNUC_PREREQ (4, 8)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 	} *entries[0];
-#if __GNUC_PREREQ (4, 8)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)
 #pragma GCC diagnostic pop
 #endif
 };
--- e2fsprogs-1.44.4/misc/e2undo.c.old	2018-08-19 02:26:58.000000000 +0000
+++ e2fsprogs-1.44.4/misc/e2undo.c	2018-10-22 22:25:35.130000000 +0000
@@ -81,12 +81,12 @@
 	__le32 magic;		/* KEYBLOCK_MAGIC number */
 	__le32 crc;		/* block checksum */
 	__le64 reserved;	/* zero */
-#if __GNUC_PREREQ (4, 8)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 	struct undo_key keys[0];	/* keys, which come immediately after */
-#if __GNUC_PREREQ (4, 8)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)
 #pragma GCC diagnostic pop
 #endif
 };
--- e2fsprogs-1.44.4/misc/filefrag.c.old	2018-08-19 02:26:58.000000000 +0000
+++ e2fsprogs-1.44.4/misc/filefrag.c	2018-10-22 22:26:04.730000000 +0000
@@ -535,7 +535,7 @@
 				char *end;
 				blocksize = strtoul(optarg, &end, 0);
 				if (end) {
-#if __GNUC_PREREQ (7, 0)
+#if defined(__GNUC__) && (__GNUC__ >= 7)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
 #endif
@@ -555,7 +555,7 @@
 					default:
 						break;
 					}
-#if __GNUC_PREREQ (7, 0)
+#if defined(__GNUC__) && (__GNUC__ >= 7)
 #pragma GCC diagnostic pop
 #endif
 				}
--- e2fsprogs-1.44.4/lib/ext2fs/fiemap.h.old	2018-08-19 02:26:58.000000000 +0000
+++ e2fsprogs-1.44.4/lib/ext2fs/fiemap.h	2018-10-22 22:21:59.110000000 +0000
@@ -31,12 +31,12 @@
 	__u32 fm_mapped_extents;/* number of extents that were mapped (out) */
 	__u32 fm_extent_count;  /* size of fm_extents array (in) */
 	__u32 fm_reserved;
-#if __GNUC_PREREQ (4, 8)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 	struct fiemap_extent fm_extents[0]; /* array of mapped extents (out) */
-#if __GNUC_PREREQ (4, 8)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)
 #pragma GCC diagnostic pop
 #endif
 };
--- e2fsprogs-1.44.4/lib/ext2fs/ext4_acl.h.old	2018-08-19 02:26:58.000000000 +0000
+++ e2fsprogs-1.44.4/lib/ext2fs/ext4_acl.h	2018-10-22 22:18:32.390000000 +0000
@@ -50,12 +50,12 @@
 
 typedef struct {
         __le32                  a_version;
-#if __GNUC_PREREQ (4, 8)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wpedantic"
 #endif
         posix_acl_xattr_entry   a_entries[0];
-#if __GNUC_PREREQ (4, 8)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 8) || __GNUC__ > 4)
 #pragma GCC diagnostic pop
 #endif
 } posix_acl_xattr_header;
--- e2fsprogs-1.44.4/lib/ext2fs/unix_io.c.old	2018-08-19 02:26:58.000000000 +0000
+++ e2fsprogs-1.44.4/lib/ext2fs/unix_io.c	2018-10-22 22:20:38.770000000 +0000
@@ -1127,7 +1127,7 @@
 }
 
 /* parameters might not be used if OS doesn't support zeroout */
-#if __GNUC_PREREQ (4, 6)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wunused-parameter"
 #endif
@@ -1197,7 +1197,7 @@
 unimplemented:
 	return EXT2_ET_UNIMPLEMENTED;
 }
-#if __GNUC_PREREQ (4, 6)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4)
 #pragma GCC diagnostic pop
 #endif
 
--- e2fsprogs-1.44.4/lib/ext2fs/mmp.c.old	2018-08-19 02:26:58.000000000 +0000
+++ e2fsprogs-1.44.4/lib/ext2fs/mmp.c	2018-10-22 22:21:10.640000000 +0000
@@ -34,7 +34,7 @@
 #define O_DIRECT 0
 #endif
 
-#if __GNUC_PREREQ (4, 6)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4)
 #pragma GCC diagnostic push
 #ifndef CONFIG_MMP
 #pragma GCC diagnostic ignored "-Wunused-parameter"
@@ -467,6 +467,6 @@
 	return EXT2_ET_OP_NOT_SUPPORTED;
 #endif
 }
-#if __GNUC_PREREQ (4, 6)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4)
 #pragma GCC diagnostic pop
 #endif
--- e2fsprogs-1.44.4/debugfs/set_fields.c.old	2018-08-19 02:26:58.000000000 +0000
+++ e2fsprogs-1.44.4/debugfs/set_fields.c	2018-10-22 22:22:34.510000000 +0000
@@ -75,7 +75,7 @@
 static errcode_t parse_mmp_clear(struct field_set_info *info, char *field,
 				 char *arg);
 
-#if __GNUC_PREREQ (4, 6)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wmissing-field-initializers"
 #endif
@@ -291,7 +291,7 @@
 	{ "checksum", &set_mmp.mmp_checksum, NULL, 4, parse_uint },
 	{ 0, 0, 0, 0 }
 };
-#if __GNUC_PREREQ (4, 6)
+#if defined(__GNUC__) && ((__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4)
 #pragma GCC diagnostic pop
 #endif