Open Bug 1747115 Opened 2 years ago Updated 2 years ago

Circular inclusion between L10nMutations.h and DOMLocalization.h

Categories

(Core :: Internationalization, task)

task

Tracking

()

People

(Reporter: calixte, Assigned: calixte)

Details

Attachments

(1 file)

Pushed by cdenizet@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/32fcd7e0fa05
Avoid circular inclusion in L10nMutations.h r=platform-i18n-reviewers,nordzilla

Backed out for causing bp-hybrid build bustages on L10nMutations.cpp.

Push with failures

Failure log for OS X Cross Compiled plain
Failure log for Windows 2012 x64 debug
Failure log for Linux x64 plain

Backout link

[task 2021-12-22T11:40:23.579Z] 11:40:23     INFO -  gmake[4]: Entering directory '/builds/worker/workspace/obj-build/dom/l10n'
[task 2021-12-22T11:40:23.581Z] 11:40:23     INFO -  /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang-cl -Xclang -std=c++17 -FoL10nMutations.obj -c  -I/builds/worker/workspace/obj-build/dist/stl_wrappers -guard:cf -DNDEBUG=1 -DTRIMMED=1 -DWINAPI_NO_BUNDLED_LIBRARIES -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/dom/l10n -I/builds/worker/workspace/obj-build/dom/l10n -I/builds/worker/checkouts/gecko/dom/base -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -MD -FI /builds/worker/workspace/obj-build/mozilla-config.h -DMOZILLA_CLIENT -Qunused-arguments -Qunused-arguments -fcrash-diagnostics-dir=/builds/worker/artifacts -TP -Zc:sizedDealloc- -D_HAS_EXCEPTIONS=0 -W3 -Gy -Zc:inline -Gw -Wno-inline-new-delete -Wno-invalid-offsetof -Wno-microsoft-enum-value -Wno-microsoft-include -Wno-unknown-pragmas -Wno-ignored-pragmas -Wno-deprecated-declarations -Wno-invalid-noreturn -Wno-inconsistent-missing-override -Wno-implicit-exception-spec-mismatch -Wno-microsoft-exception-spec -Wno-unused-local-typedef -Wno-ignored-attributes -Wno-used-but-marked-unused -D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING -GR- -Z7 -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O2 -Oy- -Werror -Xclang -fexperimental-new-pass-manager  -Xclang -MP -Xclang -dependency-file -Xclang .deps/L10nMutations.obj.pp -Xclang -MT -Xclang L10nMutations.obj   /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp
[task 2021-12-22T11:40:23.581Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(77,7): error: incomplete type 'mozilla::dom::DOMLocalization' named in nested name specifier
[task 2021-12-22T11:40:23.581Z] 11:40:23     INFO -        DOMLocalization::GetTranslatables(*node, elements, rv);
[task 2021-12-22T11:40:23.581Z] 11:40:23     INFO -        ^~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.582Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.h(21,7): note: forward declaration of 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.582Z] 11:40:23     INFO -  class DOMLocalization;
[task 2021-12-22T11:40:23.582Z] 11:40:23     INFO -        ^
[task 2021-12-22T11:40:23.583Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(104,3): error: incomplete type 'mozilla::dom::DOMLocalization' named in nested name specifier
[task 2021-12-22T11:40:23.583Z] 11:40:23     INFO -    DOMLocalization::GetTranslatables(*aChild, elements, rv);
[task 2021-12-22T11:40:23.583Z] 11:40:23     INFO -    ^~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.583Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.h(21,7): note: forward declaration of 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.583Z] 11:40:23     INFO -  class DOMLocalization;
[task 2021-12-22T11:40:23.584Z] 11:40:23     INFO -        ^
[task 2021-12-22T11:40:23.584Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(128,3): error: incomplete type 'mozilla::dom::DOMLocalization' named in nested name specifier
[task 2021-12-22T11:40:23.584Z] 11:40:23     INFO -    DOMLocalization::GetTranslatables(*aChild, elements, rv);
[task 2021-12-22T11:40:23.584Z] 11:40:23     INFO -    ^~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.584Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.h(21,7): note: forward declaration of 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.584Z] 11:40:23     INFO -  class DOMLocalization;
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -        ^
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(160,54): error: base class has incomplete type
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -  class L10nMutationFinalizationHandler final : public PromiseNativeHandler {
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -                                                ~~~~~~~^~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/mozilla/dom/Promise.h(44,7): note: forward declaration of 'mozilla::dom::PromiseNativeHandler'
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -  class PromiseNativeHandler;
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -        ^
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(162,3): error: 'QueryInterface' marked 'override' but does not override any member functions
[task 2021-12-22T11:40:23.585Z] 11:40:23     INFO -    NS_DECL_CYCLE_COLLECTING_ISUPPORTS
[task 2021-12-22T11:40:23.586Z] 11:40:23     INFO -    ^
[task 2021-12-22T11:40:23.586Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h(434,3): note: expanded from macro 'NS_DECL_CYCLE_COLLECTING_ISUPPORTS'
[task 2021-12-22T11:40:23.586Z] 11:40:23     INFO -    NS_DECL_CYCLE_COLLECTING_ISUPPORTS_META(override) \
[task 2021-12-22T11:40:23.586Z] 11:40:23     INFO -    ^
[task 2021-12-22T11:40:23.586Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h(453,14): note: expanded from macro 'NS_DECL_CYCLE_COLLECTING_ISUPPORTS_META'
[task 2021-12-22T11:40:23.586Z] 11:40:23     INFO -    NS_IMETHOD QueryInterface(REFNSIID aIID, void** aInstancePtr) __VA_ARGS__; \
[task 2021-12-22T11:40:23.586Z] 11:40:23     INFO -               ^
[task 2021-12-22T11:40:23.586Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(162,3): error: 'AddRef' marked 'override' but does not override any member functions
[task 2021-12-22T11:40:23.587Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h(434,3): note: expanded from macro 'NS_DECL_CYCLE_COLLECTING_ISUPPORTS'
[task 2021-12-22T11:40:23.587Z] 11:40:23     INFO -    NS_DECL_CYCLE_COLLECTING_ISUPPORTS_META(override) \
[task 2021-12-22T11:40:23.587Z] 11:40:23     INFO -    ^
[task 2021-12-22T11:40:23.587Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h(454,40): note: expanded from macro 'NS_DECL_CYCLE_COLLECTING_ISUPPORTS_META'
[task 2021-12-22T11:40:23.587Z] 11:40:23     INFO -    NS_IMETHOD_(MozExternalRefCountType) AddRef(void) __VA_ARGS__;             \
[task 2021-12-22T11:40:23.587Z] 11:40:23     INFO -                                         ^
[task 2021-12-22T11:40:23.587Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(162,3): error: 'Release' marked 'override' but does not override any member functions
[task 2021-12-22T11:40:23.587Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h(434,3): note: expanded from macro 'NS_DECL_CYCLE_COLLECTING_ISUPPORTS'
[task 2021-12-22T11:40:23.588Z] 11:40:23     INFO -    NS_DECL_CYCLE_COLLECTING_ISUPPORTS_META(override) \
[task 2021-12-22T11:40:23.588Z] 11:40:23     INFO -    ^
[task 2021-12-22T11:40:23.588Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h(455,40): note: expanded from macro 'NS_DECL_CYCLE_COLLECTING_ISUPPORTS_META'
[task 2021-12-22T11:40:23.588Z] 11:40:23     INFO -    NS_IMETHOD_(MozExternalRefCountType) Release(void) __VA_ARGS__;            \
[task 2021-12-22T11:40:23.588Z] 11:40:23     INFO -                                         ^
[task 2021-12-22T11:40:23.588Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(168,71): error: only virtual member functions can be marked 'override'
[task 2021-12-22T11:40:23.589Z] 11:40:23     INFO -    void ResolvedCallback(JSContext* aCx, JS::Handle<JS::Value> aValue) override {
[task 2021-12-22T11:40:23.589Z] 11:40:23     INFO -                                                                        ^~~~~~~~~
[task 2021-12-22T11:40:23.589Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(171,71): error: only virtual member functions can be marked 'override'
[task 2021-12-22T11:40:23.589Z] 11:40:23     INFO -    void RejectedCallback(JSContext* aCx, JS::Handle<JS::Value> aValue) override {
[task 2021-12-22T11:40:23.589Z] 11:40:23     INFO -                                                                        ^~~~~~~~~
[task 2021-12-22T11:40:23.589Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(163,3): error: static_cast from 'nsISupports *' to 'L10nMutationFinalizationHandler *', which are not related by inheritance, is not allowed
[task 2021-12-22T11:40:23.590Z] 11:40:23     INFO -    NS_DECL_CYCLE_COLLECTION_CLASS(L10nMutationFinalizationHandler)
[task 2021-12-22T11:40:23.590Z] 11:40:23     INFO -    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.590Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h(714,3): note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_CLASS'
[task 2021-12-22T11:40:23.590Z] 11:40:23     INFO -    NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS(_class, _class)
[task 2021-12-22T11:40:23.590Z] 11:40:23     INFO -    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.591Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h(706,5): note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS'
[task 2021-12-22T11:40:23.591Z] 11:40:23     INFO -      NS_DECL_CYCLE_COLLECTION_CLASS_BODY(_class, _base)                  \
[task 2021-12-22T11:40:23.591Z] 11:40:23     INFO -      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.591Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h(665,33): note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_CLASS_BODY'
[task 2021-12-22T11:40:23.592Z] 11:40:23     INFO -      return static_cast<_class*>(static_cast<_base*>(s));                       \
[task 2021-12-22T11:40:23.592Z] 11:40:23     INFO -                                  ^~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.592Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(163,3): error: static_cast from 'L10nMutationFinalizationHandler *' to 'nsISupports *', which are not related by inheritance, is not allowed
[task 2021-12-22T11:40:23.592Z] 11:40:23     INFO -    NS_DECL_CYCLE_COLLECTION_CLASS(L10nMutationFinalizationHandler)
[task 2021-12-22T11:40:23.592Z] 11:40:23     INFO -    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.593Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h(714,3): note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_CLASS'
[task 2021-12-22T11:40:23.593Z] 11:40:23     INFO -    NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS(_class, _class)
[task 2021-12-22T11:40:23.593Z] 11:40:23     INFO -    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.593Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h(706,5): note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS'
[task 2021-12-22T11:40:23.593Z] 11:40:23     INFO -      NS_DECL_CYCLE_COLLECTION_CLASS_BODY(_class, _base)                  \
[task 2021-12-22T11:40:23.593Z] 11:40:23     INFO -      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.593Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsCycleCollectionParticipant.h(668,12): note: expanded from macro 'NS_DECL_CYCLE_COLLECTION_CLASS_BODY'
[task 2021-12-22T11:40:23.594Z] 11:40:23     INFO -      return NS_ISUPPORTS_CAST(_base*, p);                                       \
[task 2021-12-22T11:40:23.594Z] 11:40:23     INFO -             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.594Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsUtils.h(115,3): note: expanded from macro 'NS_ISUPPORTS_CAST'
[task 2021-12-22T11:40:23.594Z] 11:40:23     INFO -    static_cast<nsISupports*>(static_cast<__unambiguousBase>(__expr))
[task 2021-12-22T11:40:23.594Z] 11:40:23     INFO -    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.595Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(188,3): error: static_cast from 'L10nMutationFinalizationHandler *' to 'nsISupports *', which are not related by inheritance, is not allowed
[task 2021-12-22T11:40:23.595Z] 11:40:23     INFO -    NS_INTERFACE_MAP_ENTRY(nsISupports)
[task 2021-12-22T11:40:23.595Z] 11:40:23     INFO -    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.595Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h(1287,44): note: expanded from macro 'NS_INTERFACE_MAP_ENTRY'
[task 2021-12-22T11:40:23.595Z] 11:40:23     INFO -  #define NS_INTERFACE_MAP_ENTRY(_interface) NS_IMPL_QUERY_BODY(_interface)
[task 2021-12-22T11:40:23.595Z] 11:40:23     INFO -                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.596Z] 11:40:23     INFO -  /builds/worker/workspace/obj-build/dist/include/nsISupportsImpl.h(1208,22): note: expanded from macro 'NS_IMPL_QUERY_BODY'
[task 2021-12-22T11:40:23.596Z] 11:40:23     INFO -      foundInterface = static_cast<_interface*>(this); \
[task 2021-12-22T11:40:23.596Z] 11:40:23     INFO -                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[task 2021-12-22T11:40:23.596Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(216,45): error: member access into incomplete type 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.596Z] 11:40:23     INFO -    RefPtr<Promise> promise = mDOMLocalization->TranslateElements(elements, rv);
[task 2021-12-22T11:40:23.596Z] 11:40:23     INFO -                                              ^
[task 2021-12-22T11:40:23.597Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.h(21,7): note: forward declaration of 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.597Z] 11:40:23     INFO -  class DOMLocalization;
[task 2021-12-22T11:40:23.597Z] 11:40:23     INFO -        ^
[task 2021-12-22T11:40:23.597Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(219,59): error: member access into incomplete type 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.597Z] 11:40:23     INFO -        new L10nMutationFinalizationHandler(mDOMLocalization->GetParentObject());
[task 2021-12-22T11:40:23.597Z] 11:40:23     INFO -                                                            ^
[task 2021-12-22T11:40:23.598Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.h(21,7): note: forward declaration of 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.598Z] 11:40:23     INFO -  class DOMLocalization;
[task 2021-12-22T11:40:23.598Z] 11:40:23     INFO -        ^
[task 2021-12-22T11:40:23.598Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(234,23): error: member access into incomplete type 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.598Z] 11:40:23     INFO -        mDOMLocalization->GetParentObject()->AsInnerWindow();
[task 2021-12-22T11:40:23.599Z] 11:40:23     INFO -                        ^
[task 2021-12-22T11:40:23.599Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.h(21,7): note: forward declaration of 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.599Z] 11:40:23     INFO -  class DOMLocalization;
[task 2021-12-22T11:40:23.599Z] 11:40:23     INFO -        ^
[task 2021-12-22T11:40:23.599Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.cpp(285,51): error: member access into incomplete type 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.599Z] 11:40:23     INFO -    return !root->IsShadowRoot() || mDOMLocalization->SubtreeRootInRoots(root);
[task 2021-12-22T11:40:23.600Z] 11:40:23     INFO -                                                    ^
[task 2021-12-22T11:40:23.600Z] 11:40:23     INFO -  /builds/worker/checkouts/gecko/dom/l10n/L10nMutations.h(21,7): note: forward declaration of 'mozilla::dom::DOMLocalization'
[task 2021-12-22T11:40:23.600Z] 11:40:23     INFO -  class DOMLocalization;
[task 2021-12-22T11:40:23.600Z] 11:40:23     INFO -        ^
[task 2021-12-22T11:40:23.600Z] 11:40:23     INFO -  16 errors generated.
[task 2021-12-22T11:40:23.600Z] 11:40:23    ERROR -  gmake[4]: *** [/builds/worker/checkouts/gecko/config/rules.mk:658: L10nMutations.obj] Error 1
[task 2021-12-22T11:40:23.601Z] 11:40:23     INFO -  gmake[4]: Leaving directory '/builds/worker/workspace/obj-build/dom/l10n'
[task 2021-12-22T11:40:23.601Z] 11:40:23    ERROR -  gmake[3]: *** [/builds/worker/checkouts/gecko/config/recurse.mk:72: dom/l10n/target-objects] Error 2
[task 2021-12-22T11:40:23.601Z] 11:40:23     INFO -  gmake[3]: *** Waiting for unfinished jobs....
[task 2021-12-22T11:40:23.601Z] 11:40:23     INFO -  gmake[4]: Entering directory '/builds/worker/workspace/obj-build/dom/html'
Flags: needinfo?(cdenizet)

I really wonder why it was working locally...

Flags: needinfo?(cdenizet)

There's a r+ patch which didn't land and no activity in this bug for 2 weeks.
:calixte, could you have a look please?
For more information, please visit auto_nag documentation.

Flags: needinfo?(enordin)
Flags: needinfo?(cdenizet)

I need to check what's wrong.

Flags: needinfo?(enordin)
Flags: needinfo?(cdenizet)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: