firebase / firebase/firebase-cpp-sdk

[Bug] Clang 19 compilation failure

Aperta
#1,684 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
needs-triage new type: question
Lingua principale
C++
Stelle
326
Fork
137
Merge medio
3g 9h
PR unite (30g)
5

Descrizione

### [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
```

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Reproduce the failure on Fedora 41 with the workspace-automation commands and inspect third_party/flatbuffers/include/flatbuffers/flatbuffers.h, especially the assignments around lines 834, 1002, and 1874. Check the related compilation path through external/src/flatbuffers/src/reflection.cpp and confirm that the Firebase C++ SDK builds successfully with Clang 19 without the deleted-operator error.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
cpp
Ambito
build-system
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.