diff --git a/gcc/testsuite/g++.dg/gcov/gcov.py b/gcc/testsuite/g++.dg/gcov/gcov.py
index a8c4ea9ae71ab120cbdea60fb80ac7e64ad26133..5137f3a6872d30db1eae09e85086436f1f49b8bc 100644
--- a/gcc/testsuite/g++.dg/gcov/gcov.py
+++ b/gcc/testsuite/g++.dg/gcov/gcov.py
@@ -5,6 +5,9 @@ import os
 
 def gcov_from_env():
     # return parsed JSON content a GCOV_PATH file
-    json_filename = os.environ['GCOV_PATH'] + '.gcov.json.gz'
+    json_filename = os.environ['GCOV_PATH']
+    # strip extension
+    json_filename = json_filename[:json_filename.rindex('.')]
+    json_filename += '.gcov.json.gz'
     json_data = gzip.open(json_filename).read()
     return json.loads(json_data)