firebase / firebase/firebase-cpp-sdk
[Bug] Clang 19 compilation failure
- Lenguaje dominante
- C++
- Estrellas
- 326
- Forks
- 137
- Merge medio
- 3 d 9 h
- PR fusionados (30 d)
- 5
Descripción
### [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
```
Guía de contribución
Línea de trabajo
Reproduce el fallo en Fedora 41 con los comandos de workspace-automation e inspecciona third_party/flatbuffers/include/flatbuffers/flatbuffers.h, especialmente las asignaciones alrededor de las líneas 834, 1002 y 1874. Comprueba la ruta de compilación relacionada a través de external/src/flatbuffers/src/reflection.cpp y confirma que Firebase C++ SDK se compila correctamente con Clang 19 sin el error del operador eliminado.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cpp
- Área
- build-system
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100