googleapis / googleapis/google-cloud-cpp

Avoid spurious warnings on `*.pb.h` files with MSVC

Open
#14,507 0 comments 0 reactions 0 assignees View on GitHub
type: cleanup
Dominant language
C++
Stars
659
Forks
462
Avg merge
1d 2h
Merged PRs (30d)
89

Description

Files generated by Protobuf have warnings under MSVC. There is little we can do to fix the code to avoid warnings, and disabling the warnings for all the code would mask problems in *our* code.

We can disable warnings in headers with MSVC if the header is included as `#include ` as opposed to `#include "foo/bar.pb.h"`. We have managed to fix this for googleapis protos, and the compute protos, but the test protos in `google-cloud-cpp` are not.

If we move the protos to `protos/...` (as oppposed to `google/cloud/...` or `generator/...`) then we can tweak Bazel and CMake to support include via angle brackets, then the warnings go away, and then we can start using newer versions of Protobuf with MSVC.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.