From d8770614c83387c809cf2251b7d7274fa06882c4 Mon Sep 17 00:00:00 2001 From: Andrew Hayzen Date: Mon, 15 Jan 2024 14:19:40 +0000 Subject: [PATCH] cxx-qt-gen: include MaybeLockGuard for extern C++Qt objects As it is used in the signal generation as well. --- CHANGELOG.md | 4 ++++ crates/cxx-qt-gen/src/generator/cpp/externcxxqt.rs | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 006d11d05..442d6c589 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,6 +28,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - `VCPKG` is now set to off by default and packages are only built in release mode in the cache +### Fixed + +- Missing include for `MaybeLockGuard` when using only `extern "C++Qt"` signals + ## [0.6.0](https://github.com/KDAB/cxx-qt/compare/v0.5.3...v0.6.0) - 2023-11-17 ### Added diff --git a/crates/cxx-qt-gen/src/generator/cpp/externcxxqt.rs b/crates/cxx-qt-gen/src/generator/cpp/externcxxqt.rs index fd3ca3e1b..16e760bc1 100644 --- a/crates/cxx-qt-gen/src/generator/cpp/externcxxqt.rs +++ b/crates/cxx-qt-gen/src/generator/cpp/externcxxqt.rs @@ -32,6 +32,10 @@ pub fn generate( let mut block = GeneratedCppExternCxxQtBlocks::default(); let data = generate_cpp_signal(signal, &signal.qobject_ident, cxx_mappings)?; block.includes = data.includes; + // Ensure that we include MaybeLockGuard that is used in multiple places + block + .includes + .insert("#include ".to_owned()); block.forward_declares = data.forward_declares; block.fragments = data.fragments; debug_assert!(data.methods.is_empty());