mirror of
https://github.com/slint-ui/slint.git
synced 2025-07-08 05:35:24 +00:00
![]() We currently forward declare classes as we use them in functions. But this breaks if classes with the same name were declared in the parent namespace. As shown with this example ```C++ // Uncomment that line to make the code break //struct SharedGlobals; namespace ns { // Is that a forward declaration in `ns`? // Depends if it was declared before in the parent namespace void foo(struct SharedGlobals *x) {} // Actualy define ns::SharedGlobal struct SharedGlobals { int x; }; int xyz() { SharedGlobals globals; foo(&globals); } } ``` So make sure we forward-declare the classes properly to be more robust and be able to include generated file with namespace after a file without namespace CC #2909 |
||
---|---|---|
.. | ||
another-window.slint | ||
app-window.slint | ||
CMakeLists.txt | ||
logic.cpp | ||
logic.h | ||
main.cpp | ||
README.md |
This is a test making sure that the header can be included in several compilation without causing multiple definitions
And also that we can include two different generated headers generated different namespaces in the same compilation unit