firebase / firebase/firebase-cpp-sdk
[Bug] Clang 19 compilation failure
- 主要言語
- C++
- スター
- 326
- フォーク
- 137
- 平均マージ
- 3日 9時間
- マージ済み PR(30日)
- 5
説明
### [REQUIRED] Please fill in the following fields:
* Pre-built SDK from the [website](https://firebase.google.com/download/cpp) or open-source from this repo: source
* Firebase C++ SDK version: v12.5.0
* Problematic Firebase Component: third_party - flatbuffers
* Other Firebase Components in use: Cloud, Auth, Storage, common
* Platform you are using the C++ SDK on: Ubuntu 20 to Linux Fedora 41
* Platform you are targeting: desktop, embedded Linux (Yocto)
### [REQUIRED] Please describe the issue here:
SDK fails to build with Clang 19 (Fedora 41). With minimal patch it builds fine on Clang 10 (Ubuntu 20).
This error will be repeated Nx depending on CPU count used in build:
```
In file included from /mnt/raid10/workspace-automation/app/firebase-cpp-sdk/cmake-build-release/external/src/flatbuffers/src/reflection.cpp:17:
In file included from /mnt/raid10/workspace-automation/app/firebase-cpp-sdk/cmake-build-release/external/src/flatbuffers/include/flatbuffers/reflection.h:25:
In file included from /mnt/raid10/workspace-automation/app/firebase-cpp-sdk/cmake-build-release/external/src/flatbuffers/include/flatbuffers/reflection_generated.h:7:
/mnt/raid10/workspace-automation/app/firebase-cpp-sdk/cmake-build-release/external/src/flatbuffers/include/flatbuffers/flatbuffers.h:1874:12: error: overload resolution selected deleted operator '='
1874 | buf_ = other.buf_;
| ~~~~ ^ ~~~~~~~~~~
/mnt/raid10/workspace-automation/app/firebase-cpp-sdk/cmake-build-release/external/src/flatbuffers/include/flatbuffers/flatbuffers.h:1002:44: note: candidate function has been explicitly deleted
1002 | FLATBUFFERS_DELETE_FUNC(vector_downward &operator=(const vector_downward &))
| ^
/mnt/raid10/workspace-automation/app/firebase-cpp-sdk/cmake-build-release/external/src/flatbuffers/include/flatbuffers/flatbuffers.h:834:20: note: candidate function not viable: expects an rvalue for 1st argument
834 | vector_downward &operator=(vector_downward &&other) {
| ^ ~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
```
#### Steps to reproduce:
**Fedora 41**
```
git clone https://github.com/meta-flutter/workspace-automation
cd workspace-automation
./flutter_workspace.py --enable=firebase-cpp-sdk
```
コントリビューションガイド
調査の方向性
workspace-automation のコマンドを使用して Fedora 41 で失敗を再現し、third_party/flatbuffers/include/flatbuffers/flatbuffers.h を調査してください。特に、834、1002、1874 行付近の代入を確認してください。external/src/flatbuffers/src/reflection.cpp を経由する関連するコンパイルパスを確認し、Firebase C++ SDK が Clang 19 で deleted operator エラーなしに正常にビルドされることを確認してください。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cpp
- 領域
- build-system
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100