Skip to content

[CI][C++] Compilation failures with protoc 29.0.0 #44954

@pitrou

Description

@pitrou

Describe the bug, including details regarding any error messages, version, and platform.

The protobuf compiler has started adding C++ deprecated attributes to class and enum declarations.

This in turns breaks our CI builds on macOS, and will probably break other builds later:
https://github.com/apache/arrow/actions/runs/12172205626/job/33950463294

FAILED: CMakeFiles/substrait.dir/substrait_ep-generated/substrait/algebra.pb.cc.o 
/opt/homebrew/bin/ccache /Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -DARROW_HAVE_NEON -DPROTOBUF_USE_DLLS -I/Users/runner/work/arrow/arrow/build/cpp/substrait_ep-generated -I/Users/runner/work/arrow/arrow/build/cpp/src -I/Users/runner/work/arrow/arrow/cpp/src -I/Users/runner/work/arrow/arrow/cpp/src/generated -isystem /opt/homebrew/include -fno-aligned-new  -Qunused-arguments -fcolor-diagnostics  -Wall -Wextra -Wdocumentation -DARROW_WARN_DOCUMENTATION -Wshorten-64-to-32 -Wno-missing-braces -Wno-unused-parameter -Wno-constant-logical-operand -Wno-return-stack-address -Wdate-time -Wno-unknown-warning-option -Wno-pass-failed -march=armv8-a  -g -Werror -O0 -ggdb -g1 -std=c++17 -arch arm64 -isysroot /Applications/Xcode_15.4.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.5.sdk -fPIC -Wno-error=shorten-64-to-32 -MD -MT CMakeFiles/substrait.dir/substrait_ep-generated/substrait/algebra.pb.cc.o -MF CMakeFiles/substrait.dir/substrait_ep-generated/substrait/algebra.pb.cc.o.d -o CMakeFiles/substrait.dir/substrait_ep-generated/substrait/algebra.pb.cc.o -c /Users/runner/work/arrow/arrow/build/cpp/substrait_ep-generated/substrait/algebra.pb.cc
In file included from /Users/runner/work/arrow/arrow/build/cpp/substrait_ep-generated/substrait/algebra.pb.cc:6:
/Users/runner/work/arrow/arrow/build/cpp/substrait_ep-generated/substrait/algebra.pb.h:18443:16: error: 'Expression_Enum' is deprecated [-Werror,-Wdeprecated-declarations]
  using Enum = Expression_Enum;
               ^
/Users/runner/work/arrow/arrow/build/cpp/substrait_ep-generated/substrait/algebra.pb.h:7571:9: note: 'Expression_Enum' has been explicitly marked deprecated here
class [[deprecated]] Expression_Enum final
        ^

Component(s)

C++, Continuous Integration

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions