[MSVC] Don't declare environ when it is already defined as macro
In MSVC, `environ` is a macro (from `stdlib.h`):
```cpp
extern char*** __p__environ(void);
#define _environ (*__p__environ())
#define environ _environ
```
So `extern char **environ;` will be expanded as `extern char **(*__p_environ());` which is invalid. This causes compile warning on MSVC.
Closes #4487.
PiperOrigin-RevId: 185354631
diff --git a/src/main/cpp/option_processor.cc b/src/main/cpp/option_processor.cc
index 93f1c4c..3015818 100644
--- a/src/main/cpp/option_processor.cc
+++ b/src/main/cpp/option_processor.cc
@@ -31,7 +31,9 @@
#include "src/main/cpp/workspace_layout.h"
// On OSX, there apparently is no header that defines this.
+#ifndef environ
extern char **environ;
+#endif
namespace blaze {