diff --git a/test/core/support/BUILD b/test/core/support/BUILD
index 375cf25cb729bc3765316ee943ef350a95b91078..ac33176f00d4c15e855cff09ca81e70f94d0b82d 100644
--- a/test/core/support/BUILD
+++ b/test/core/support/BUILD
@@ -182,3 +182,12 @@ grpc_fuzzer(
   deps = ["//:gpr"],
   corpus = "percent_encode_corpus"
 )
+
+
+grpc_fuzzer(
+    name = "percent_decode_fuzzer",
+    srcs = ["percent_decode_fuzzer.c"],
+    deps = ["//:gpr"],
+    corpus = "percent_decode_corpus"
+)
+
diff --git a/test/core/util/BUILD b/test/core/util/BUILD
index 82207913ef1f8373941ed5d5da8a30c0c0472dc1..e44e4e2105d2a524f01f62444306162b509fe34e 100644
--- a/test/core/util/BUILD
+++ b/test/core/util/BUILD
@@ -41,6 +41,7 @@ cc_library(
     ],
     deps = [":gpr_test_util", "//:grpc"],
     visibility = ["//test:__subpackages__"],
+    copts = ["-std=c99"],
 )
 
 cc_library(
diff --git a/test/core/util/grpc_fuzzer.bzl b/test/core/util/grpc_fuzzer.bzl
index d9a227641ce0f95e3fba91ea630d2d93e737515d..3ec9e4e485ecba6c485f69d36beb96f6954e08bc 100644
--- a/test/core/util/grpc_fuzzer.bzl
+++ b/test/core/util/grpc_fuzzer.bzl
@@ -27,16 +27,17 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-def grpc_fuzzer(name, corpus, srcs = [], deps = []):
+def grpc_fuzzer(name, corpus, srcs = [], deps = [], **kwargs):
   native.cc_library(
     name = "%s/one_entry" % name,
     srcs = srcs,
     deps = deps + ["//test/core/util:one_corpus_entry_fuzzer"],
+    **kwargs
   )
   for entry in native.glob(['%s/*' % corpus]):
     native.cc_test(
       name = '%s/one_entry/%s' % (name, entry),
       deps = [':%s/one_entry' % name],
       args = ['$(location %s)' % entry],
-      data = [entry]
+      data = [entry],
     )