include/vcl/builder.hxx |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit ad040f7a8f7f6b2efa14f884f0de22c9b8304e17
Author:     Stephan Bergmann <[email protected]>
AuthorDate: Mon Jan 26 10:28:48 2026 +0100
Commit:     Stephan Bergmann <[email protected]>
CommitDate: Mon Jan 26 13:39:46 2026 +0100

    NotebookBarAddonsItem appears to be required to be a complete type here
    
    ...contrary to what 96cb87ca0194be82f8831c701a09b1c1ca623845 "tdf#146619 Use
    more forward declarations in include/vcl/[a-o]" apparently assumed, as seen 
at
    least with recent Clang 23 trunk against recent libstdc++ 16 trunk,
    
    > In file included from vcl/source/window/builder.cxx:14:
    > In file included from 
~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/16.0.1/../../../../include/c++/16.0.1/memory:80:
    > 
~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/16.0.1/../../../../include/c++/16.0.1/bits/unique_ptr.h:90:16:
 error: invalid application of 'sizeof' to an incomplete type 
'NotebookBarAddonsItem'
    >    90 |         static_assert(sizeof(_Tp)>0,
    >       |                       ^~~~~~~~~~~
    > 
~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/16.0.1/../../../../include/c++/16.0.1/bits/unique_ptr.h:398:4:
 note: in instantiation of member function 
'std::default_delete<NotebookBarAddonsItem>::operator()' requested here
    >   398 |           get_deleter()(std::move(__ptr));
    >       |           ^
    > include/vcl/builder.hxx:59:80: note: in instantiation of member function 
'std::unique_ptr<NotebookBarAddonsItem>::~unique_ptr' requested here
    >    59 |                std::unique_ptr<NotebookBarAddonsItem> 
pNotebookBarAddonsItem = nullptr);
    >       |                                                                   
             ^
    > include/vcl/builder.hxx:44:8: note: forward declaration of 
'NotebookBarAddonsItem'
    >    44 | struct NotebookBarAddonsItem;
    >       |        ^
    
    Change-Id: I81537c4c7f774bb1f9e7e3bdbf85af9786c9e016
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198131
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <[email protected]>

diff --git a/include/vcl/builder.hxx b/include/vcl/builder.hxx
index 595c2f84a77b..73fea3f62337 100644
--- a/include/vcl/builder.hxx
+++ b/include/vcl/builder.hxx
@@ -20,6 +20,7 @@
 #include <vcl/toolboxid.hxx>
 #include <vcl/wintypes.hxx>
 #include <vcl/EnumContext.hxx>
+#include <vcl/notebookbar/NotebookBarAddonsItem.hxx>
 
 #include <memory>
 #include <map>
@@ -41,7 +42,6 @@ class Slider;
 class VclExpander;
 class VclMultiLineEdit;
 namespace com::sun::star::frame { class XFrame; }
-struct NotebookBarAddonsItem;
 
 /// Creates a hierarchy of vcl::Windows (widgets) from a .ui file for dialogs, 
sidebar, etc.
 class VCL_DLLPUBLIC VclBuilder final : public WidgetBuilder<vcl::Window, 
VclPtr<vcl::Window>, PopupMenu, VclPtr<PopupMenu>>

Reply via email to