diff --git a/var/spack/repos/builtin/packages/mvapich2/package.py b/var/spack/repos/builtin/packages/mvapich2/package.py
index dac9b69c49693495741ea6e8ae680928e547fcb5..0e0ab26a22bc5fabe0358b794e6c6e7c5b75b8f2 100644
--- a/var/spack/repos/builtin/packages/mvapich2/package.py
+++ b/var/spack/repos/builtin/packages/mvapich2/package.py
@@ -199,6 +199,16 @@ def file_system_options(self):
 
         return opts
 
+    def flag_handler(self, name, flags):
+        if name == 'fflags':
+            # https://bugzilla.redhat.com/show_bug.cgi?id=1795817
+            if self.spec.satisfies('%gcc@10:'):
+                if flags is None:
+                    flags = []
+                flags.append('-fallow-argument-mismatch')
+
+        return (flags, None, None)
+
     def setup_build_environment(self, env):
         # mvapich2 configure fails when F90 and F90FLAGS are set
         env.unset('F90')