diff --git a/include/grpc/support/subprocess.h b/include/grpc/support/subprocess.h
index c59751da83e62ef84dcd824d6bbec6e62bcdd7fd..1b7431e7d9fb7a7b5dc73a5e596e4d3fb0f592ad 100644
--- a/include/grpc/support/subprocess.h
+++ b/include/grpc/support/subprocess.h
@@ -37,7 +37,7 @@
 typedef struct gpr_subprocess gpr_subprocess;
 
 /* .exe on windows, empty on unices */
-char *gpr_subprocess_binary_extension();
+const char *gpr_subprocess_binary_extension();
 
 gpr_subprocess *gpr_subprocess_create(int argc, char **argv);
 /* if subprocess has not been joined, kill it */
diff --git a/src/core/support/subprocess_posix.c b/src/core/support/subprocess_posix.c
index 4580537aa855f9f560307bdd57370876e79f7e6e..642520bb47a6580418402c02c1f8d815ea7afabf 100644
--- a/src/core/support/subprocess_posix.c
+++ b/src/core/support/subprocess_posix.c
@@ -55,7 +55,7 @@ struct gpr_subprocess {
   int joined;
 };
 
-char *gpr_subprocess_binary_extension() { return ""; }
+const char *gpr_subprocess_binary_extension() { return ""; }
 
 gpr_subprocess *gpr_subprocess_create(int argc, char **argv) {
   gpr_subprocess *r;