diff options
Diffstat (limited to 'Help')
-rw-r--r-- | Help/prop_tgt/AUTOMOC.rst | 8 | ||||
-rw-r--r-- | Help/release/dev/automoc-diagnostics.rst | 6 |
2 files changed, 13 insertions, 1 deletions
diff --git a/Help/prop_tgt/AUTOMOC.rst b/Help/prop_tgt/AUTOMOC.rst index bd1ace8..8143ba9 100644 --- a/Help/prop_tgt/AUTOMOC.rst +++ b/Help/prop_tgt/AUTOMOC.rst @@ -13,7 +13,13 @@ source files at build time and invoke moc accordingly. * If an ``#include`` statement like ``#include "moc_foo.cpp"`` is found, the ``Q_OBJECT`` class declaration is expected in the header, and - ``moc`` is run on the header file. + ``moc`` is run on the header file. A ``moc_foo.cpp`` file will be + generated from the source's header into the + :variable:`CMAKE_CURRENT_BINARY_DIR` directory. This allows the + compiler to find the included ``moc_foo.cpp`` file regardless of the + location the original source. However, if multiple source files + in different directories do this then their generated moc files would + collide. In this case a diagnostic will be issued. * If an ``#include`` statement like ``#include "foo.moc"`` is found, then a ``Q_OBJECT`` is expected in the current source file and ``moc`` diff --git a/Help/release/dev/automoc-diagnostics.rst b/Help/release/dev/automoc-diagnostics.rst new file mode 100644 index 0000000..d89f2e1 --- /dev/null +++ b/Help/release/dev/automoc-diagnostics.rst @@ -0,0 +1,6 @@ +automoc-diagnostics +------------------- + +* :prop_tgt:`AUTOMOC` now diagnoses name collisions when multiple source + files in different directories use ``#include <moc_foo.cpp>`` with the + same name (because the generated ``moc_foo.cpp`` files would collide). |