#1073 28.5.0 - Compilation issue - NotificationController.cpp:878:21: error: ‘TabChild’ does not name a type

Closed
opened 2 years ago by Nheghathivhistha · 15 comments
Nheghathivhistha commented 2 years ago (Migrated from github.com)

-cut-
palemoon-28.5.0/accessible/base/NotificationController.cpp:878:21: error: ‘TabChild’ does not name a type; did you mean ‘tabChild’?
5:29.81 static_cast<TabChild*>(tabChild.get())->
5:29.81 ^~~~~~~~
5:29.81 tabChild
5:29.81 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:878:29: error: expected ‘>’ before ‘*’ token
5:29.81 static_cast<TabChild*>(tabChild.get())->
5:29.81 ^
5:29.81 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:878:29: error: expected ‘(’ before ‘*’ token
5:29.81 static_cast<TabChild*>(tabChild.get())->
5:29.81 ^
5:29.81 (
5:29.81 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:878:30: error: expected primary-expression before ‘>’ token
5:29.82 static_cast<TabChild*>(tabChild.get())->
5:29.82 ^
5:29.82 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:879:11: error: ‘class nsITabChild’ has no member named ‘SendPDocAccessibleConstructor’
5:29.82 SendPDocAccessibleConstructor(ipcDoc, parentIPCDoc, id, 0, 0);
5:29.82 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5:29.82 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:879:72: error: expected ‘)’ before ‘;’ token
5:29.82 SendPDocAccessibleConstructor(ipcDoc, parentIPCDoc, id, 0, 0);
5:29.82 ^
5:29.82 )

build.log

gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/8.3.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /tmp/portage/sys-devel/gcc-8.3.0-r1/work/gcc-8.3.0/configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/8.3.0 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/8.3.0 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/8.3.0/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/8.3.0/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8 --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/8.3.0/python --enable-languages=c,ada,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 8.3.0-r1 p1.1’ --disable-esp --enable-libstdcxx-time --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --with-multilib-list=m64 --disable-altivec --disable-fixed-point --enable-targets=all --enable-libgomp --disable-libmudflap --disable-libssp --disable-libmpx --disable-systemtap --enable-vtable-verify --enable-lto --with-isl --disable-isl-version-check --enable-default-pie --enable-default-ssp
Thread model: posix
gcc version 8.3.0 (Gentoo 8.3.0-r1 p1.1)

Adding configure options from /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/.mozconfig
0:06.57 --enable-application=palemoon
0:06.58 --disable-updater
0:06.58 --disable-install-strip
0:06.58 --enable-official-branding
0:06.58 --enable-optimize=-O2 -msse2 -mfpmath=sse
0:06.58 --with-pthreads
0:06.58 --enable-jemalloc
0:06.58 --disable-gconf
0:06.58 --enable-default-toolkit=cairo-gtk2
0:06.58 --disable-necko-wifi
0:06.58 --enable-devtools
0:06.58 --disable-precompiled-startupcache

-cut- palemoon-28.5.0/accessible/base/NotificationController.cpp:878:21: error: ‘TabChild’ does not name a type; did you mean ‘tabChild’? 5:29.81 static_cast<TabChild*>(tabChild.get())-> 5:29.81 ^~~~~~~~ 5:29.81 tabChild 5:29.81 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:878:29: error: expected ‘>’ before ‘*’ token 5:29.81 static_cast<TabChild*>(tabChild.get())-> 5:29.81 ^ 5:29.81 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:878:29: error: expected ‘(’ before ‘*’ token 5:29.81 static_cast<TabChild*>(tabChild.get())-> 5:29.81 ^ 5:29.81 ( 5:29.81 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:878:30: error: expected primary-expression before ‘>’ token 5:29.82 static_cast<TabChild*>(tabChild.get())-> 5:29.82 ^ 5:29.82 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:879:11: error: ‘class nsITabChild’ has no member named ‘SendPDocAccessibleConstructor’ 5:29.82 SendPDocAccessibleConstructor(ipcDoc, parentIPCDoc, id, 0, 0); 5:29.82 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5:29.82 /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/accessible/base/NotificationController.cpp:879:72: error: expected ‘)’ before ‘;’ token 5:29.82 SendPDocAccessibleConstructor(ipcDoc, parentIPCDoc, id, 0, 0); 5:29.82 ^ 5:29.82 ) [build.log](https://github.com/MoonchildProductions/UXP/files/3143087/build.log) gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/8.3.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /tmp/portage/sys-devel/gcc-8.3.0-r1/work/gcc-8.3.0/configure --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/8.3.0 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/8.3.0 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/8.3.0/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/8.3.0/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8 --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/8.3.0/python --enable-languages=c,ada,c++,fortran --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --enable-nls --without-included-gettext --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 8.3.0-r1 p1.1' --disable-esp --enable-libstdcxx-time --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --with-multilib-list=m64 --disable-altivec --disable-fixed-point --enable-targets=all --enable-libgomp --disable-libmudflap --disable-libssp --disable-libmpx --disable-systemtap --enable-vtable-verify --enable-lto --with-isl --disable-isl-version-check --enable-default-pie --enable-default-ssp Thread model: posix gcc version 8.3.0 (Gentoo 8.3.0-r1 p1.1) Adding configure options from /tmp/portage/www-client/palemoon-28.5.0/work/palemoon-28.5.0/.mozconfig 0:06.57 --enable-application=palemoon 0:06.58 --disable-updater 0:06.58 --disable-install-strip 0:06.58 --enable-official-branding 0:06.58 --enable-optimize=-O2 -msse2 -mfpmath=sse 0:06.58 --with-pthreads 0:06.58 --enable-jemalloc 0:06.58 --disable-gconf 0:06.58 --enable-default-toolkit=cairo-gtk2 0:06.58 --disable-necko-wifi 0:06.58 --enable-devtools 0:06.58 --disable-precompiled-startupcache
adeshkp commented 2 years ago (Migrated from github.com)

This can be handled by adding ac_add_options --disable-accessibility to your mozconfig.

This can be handled by adding `ac_add_options --disable-accessibility` to your mozconfig.
mattatobin commented 2 years ago (Migrated from github.com)

Does this mean Linux building is also busted for de-unified sources on accessibility?

@trav90

Does this mean Linux building is also busted for de-unified sources on accessibility? @trav90
Nheghathivhistha commented 2 years ago (Migrated from github.com)

Thank you, --disable-accessibility allowed it to compile.

Thank you, --disable-accessibility allowed it to compile.
adeshkp commented 2 years ago (Migrated from github.com)

Yes, trunk build seems to be broken on Linux too.

Earlier I was trying to fix this issue for Mac build. I made some progress but now have no idea how to go further. Can someone help me get past the build errors.

This is the patch if someone is interested: accessibility.patch.zip

Here is the build error output:

 0:56.12 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2415:48: error: invalid application of 'sizeof' to an incomplete type 'AutoTArray<mozilla::a11y::Attribute, 10>::elem_type' (aka 'mozilla::a11y::Attribute')
 0:56.12     char mAutoBuf[sizeof(nsTArrayHeader) + N * sizeof(elem_type)];
 0:56.12                                                ^~~~~~~~~~~~~~~~~
 0:56.12 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2413:3: note: in instantiation of member class 'AutoTArray<mozilla::a11y::Attribute, 10>::(anonymous)' requested here
 0:56.12   union
 0:56.12   ^
 0:56.12 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:203:31: note: in instantiation of template class 'AutoTArray<mozilla::a11y::Attribute, 10>' requested here
 0:56.12     AutoTArray<Attribute, 10> attrs;
 0:56.12                               ^
 0:56.12 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleBase.h:23:7: note: forward declaration of 'mozilla::a11y::Attribute'
 0:56.12 class Attribute;
 0:56.13       ^
 0:56.13 In file included from /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:7:
 0:56.13 In file included from /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.h:14:
 0:56.13 In file included from /Users/macc/stuff/pxu/accessible/generic/HyperTextAccessible.h:9:
 0:56.13 In file included from /Users/macc/stuff/pxu/accessible/mac/AccessibleWrap.h:15:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/Accessible.h:16:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsIContent.h:12:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsINode.h:13:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsCOMPtr.h:33:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsCycleCollectionNoteChild.h:13:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsCycleCollectionTraversalCallback.h:10:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/jspubtd.h:17:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/PodOperations.h:19:
 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/ArrayUtils.h:21:
 0:56.13 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/Alignment.h:28:7: error: field has incomplete type 'mozilla::a11y::Attribute'
 0:56.13     T mT;
 0:56.13       ^
 0:56.13 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/Alignment.h:32:35: note: in instantiation of member class 'mozilla::AlignmentFinder<mozilla::a11y::Attribute>::Aligner' requested here
 0:56.13   static const size_t alignment = sizeof(Aligner) - sizeof(T);
 0:56.13                                   ^
 0:56.13 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2417:49: note: in instantiation of template class 'mozilla::AlignmentFinder<mozilla::a11y::Attribute>' requested here
 0:56.14     mozilla::AlignedElem<(MOZ_ALIGNOF(Header) > MOZ_ALIGNOF(elem_type)) ?
 0:56.14                                                 ^
 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/Alignment.h:35:33: note: expanded from macro 'MOZ_ALIGNOF'
 0:56.14 #define MOZ_ALIGNOF(T) mozilla::AlignmentFinder<T>::alignment
 0:56.14                                 ^
 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2413:3: note: in instantiation of member class 'AutoTArray<mozilla::a11y::Attribute, 10>::(anonymous)' requested here
 0:56.14   union
 0:56.14   ^
 0:56.14 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:203:31: note: in instantiation of template class 'AutoTArray<mozilla::a11y::Attribute, 10>' requested here
 0:56.14     AutoTArray<Attribute, 10> attrs;
 0:56.14                               ^
 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleBase.h:23:7: note: forward declaration of 'mozilla::a11y::Attribute'
 0:56.14 class Attribute;
 0:56.14       ^
 0:56.14 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:235:44: error: cannot initialize a parameter of type 'nsTArray<mozilla::a11y::Attribute> *' with an rvalue of type 'AutoTArray<mozilla::a11y::Attribute, 10> *'
 0:56.14     mIntl.AsProxy()->DefaultTextAttributes(&attrs);
 0:56.14                                            ^~~~~~
 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleShared.h:103:49: note: passing argument to parameter 'aAttrs' here
 0:56.14 void DefaultTextAttributes(nsTArray<Attribute>* aAttrs);
 0:56.14                                                 ^
 0:56.14 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:236:26: error: cannot initialize object parameter of type 'const nsTArray_base<nsTArrayInfallibleAllocator, nsTArray_CopyWithMemutils>' with an expression of type 'AutoTArray<mozilla::a11y::Attribute, 10>'
 0:56.14     uint32_t attrCount = attrs.Length();
 0:56.14                          ^~~~~
 0:56.14 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:239:37: error: no viable overloaded operator[] for type 'AutoTArray<mozilla::a11y::Attribute, 10>'
 0:56.14       props->SetStringProperty(attrs[i].Name(), attrs[i].Value(), unused);
 0:56.14                                ~~~~~^~
 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1090:14: note: candidate function not viable: no known conversion from 'AutoTArray<mozilla::a11y::Attribute, 10>' to 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>' for object argument
 0:56.14   elem_type& operator[](index_type aIndex) { return ElementAt(aIndex); }
 0:56.14              ^
 0:56.15 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1093:20: note: candidate function not viable: no known conversion from 'AutoTArray<mozilla::a11y::Attribute, 10>' to 'const nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>' for object argument
 0:56.15   const elem_type& operator[](index_type aIndex) const { return ElementAt(aIndex); }
 0:56.15                    ^
 0:56.15 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:239:54: error: no viable overloaded operator[] for type 'AutoTArray<mozilla::a11y::Attribute, 10>'
 0:56.15       props->SetStringProperty(attrs[i].Name(), attrs[i].Value(), unused);
 0:56.15                                                 ~~~~~^~
 0:56.15 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1090:14: note: candidate function not viable: no known conversion from 'AutoTArray<mozilla::a11y::Attribute, 10>' to 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>' for object argument
 0:56.15   elem_type& operator[](index_type aIndex) { return ElementAt(aIndex); }
 0:56.15              ^
 0:56.15 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1093:20: note: candidate function not viable: no known conversion from 'AutoTArray<mozilla::a11y::Attribute, 10>' to 'const nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>' for object argument
 0:56.15   const elem_type& operator[](index_type aIndex) const { return ElementAt(aIndex); }
 0:56.15                    ^
 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2045:45: error: invalid application of 'sizeof' to an incomplete type 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::elem_type' (aka 'mozilla::a11y::Attribute')
 0:56.30                                             sizeof(elem_type),
 0:56.30                                             ^~~~~~~~~~~~~~~~~
 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1736:18: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::RemoveElementsAt' requested here
 0:56.30   void Clear() { RemoveElementsAt(0, Length()); }
 0:56.30                  ^
 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:891:22: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::Clear' requested here
 0:56.30   ~nsTArray_Impl() { Clear(); }
 0:56.30                      ^
 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2211:7: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::~nsTArray_Impl' requested here
 0:56.30 class nsTArray : public nsTArray_Impl<E, nsTArrayInfallibleAllocator>
 0:56.30       ^
 0:56.30 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:234:31: note: in instantiation of member function 'AutoTArray<mozilla::a11y::Attribute, 10>::AutoTArray' requested here
 0:56.30     AutoTArray<Attribute, 10> attrs;
 0:56.30                               ^
 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleBase.h:23:7: note: forward declaration of 'mozilla::a11y::Attribute'
 0:56.30 class Attribute;
 0:56.30       ^
 0:56.30 In file included from /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:7:
 0:56.30 In file included from /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.h:14:
 0:56.30 In file included from /Users/macc/stuff/pxu/accessible/generic/HyperTextAccessible.h:9:
 0:56.31 In file included from /Users/macc/stuff/pxu/accessible/mac/AccessibleWrap.h:15:
 0:56.31 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/Accessible.h:16:
 0:56.31 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsIContent.h:12:
 0:56.31 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsINode.h:20:
 0:56.31 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsTObserverArray.h:11:
 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1996:34: error: arithmetic on a pointer to an incomplete type 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::elem_type' (aka 'mozilla::a11y::Attribute')
 0:56.31     elem_type* iter = Elements() + aStart;
 0:56.31                       ~~~~~~~~~~ ^
 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2043:3: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::DestructRange' requested here
 0:56.31   DestructRange(aStart, aCount);
 0:56.31   ^
 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1736:18: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::RemoveElementsAt' requested here
 0:56.31   void Clear() { RemoveElementsAt(0, Length()); }
 0:56.31                  ^
 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:891:22: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::Clear' requested here
 0:56.31   ~nsTArray_Impl() { Clear(); }
 0:56.31                      ^
 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2211:7: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::~nsTArray_Impl' requested here
 0:56.31 class nsTArray : public nsTArray_Impl<E, nsTArrayInfallibleAllocator>
 0:56.31       ^
 0:56.31 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:234:31: note: in instantiation of member function 'AutoTArray<mozilla::a11y::Attribute, 10>::AutoTArray' requested here
 0:56.31     AutoTArray<Attribute, 10> attrs;
 0:56.31                               ^
 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleBase.h:23:7: note: forward declaration of 'mozilla::a11y::Attribute'
 0:56.31 class Attribute;
 0:56.31       ^
 0:56.31 8 warnings and 8 errors generated.
 0:56.33
 0:56.33 In the directory  /Users/macc/stuff/pxu-pmbuild/accessible/xpcom
 0:56.33 The following command failed to execute properly:
 0:56.33 /usr/bin/clang++ -std=gnu++11 -o xpcAccessibleHyperText.o -c -fvisibility=hidden -fvisibility-inlines-hidden -DNDEBUG=1 -DTRIMMED=1 -DOS_POSIX=1 -DOS_MACOSX=1 -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/Users/macc/stuff/pxu/accessible/xpcom -I/Users/macc/stuff/pxu-pmbuild/accessible/xpcom -I/Users/macc/stuff/pxu/accessible/base -I/Users/macc/stuff/pxu/accessible/generic -I/Users/macc/stuff/pxu/accessible/mac -I/Users/macc/stuff/pxu-pmbuild/ipc/ipdl/_ipdlheaders -I/Users/macc/stuff/pxu/ipc/chromium/src -I/Users/macc/stuff/pxu/ipc/glue -I/Users/macc/stuff/pxu-pmbuild/dist/include -I/Users/macc/stuff/pxu-pmbuild/dist/include/nspr -I/Users/macc/stuff/pxu-pmbuild/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /Users/macc/stuff/pxu-pmbuild/mozilla-config.h -MD -MP -MF .deps/xpcAccessibleHyperText.o.pp -Qunused-arguments -Qunused-arguments -Wall -Wc++11-compat -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wno-unknown-warning-option -Wno-return-type-c-linkage -stdlib=libc++ -isysroot /Users/macc/Downloads/MacOSX10.12.sdk -fno-exceptions -fno-strict-aliasing -stdlib=libc++ -fno-rtti -fno-exceptions -fno-math-errno -msse2 -mfpmath=sse -pthread -pipe -g -O2 -fomit-frame-pointer -Wno-error=shadow /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp
 0:56.33 make[5]: *** [xpcAccessibleHyperText.o] Error 1
 0:56.33 make[4]: *** [accessible/xpcom/target] Error 2
 0:56.33 make[3]: *** [compile] Error 2
 0:56.33 make[2]: *** [default] Error 2
 0:56.33 make[1]: *** [realbuild] Error 2
 0:56.34 make: *** [build] Error 2
 0:56.37 65 compiler warnings present.
Yes, trunk build seems to be broken on Linux too. Earlier I was trying to fix this issue for **Mac** build. I made some progress but now have no idea how to go further. Can someone help me get past the build errors. This is the patch if someone is interested: [accessibility.patch.zip](https://github.com/MoonchildProductions/UXP/files/3143554/accessibility.patch.zip) Here is the build error output: ``` 0:56.12 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2415:48: error: invalid application of 'sizeof' to an incomplete type 'AutoTArray<mozilla::a11y::Attribute, 10>::elem_type' (aka 'mozilla::a11y::Attribute') 0:56.12 char mAutoBuf[sizeof(nsTArrayHeader) + N * sizeof(elem_type)]; 0:56.12 ^~~~~~~~~~~~~~~~~ 0:56.12 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2413:3: note: in instantiation of member class 'AutoTArray<mozilla::a11y::Attribute, 10>::(anonymous)' requested here 0:56.12 union 0:56.12 ^ 0:56.12 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:203:31: note: in instantiation of template class 'AutoTArray<mozilla::a11y::Attribute, 10>' requested here 0:56.12 AutoTArray<Attribute, 10> attrs; 0:56.12 ^ 0:56.12 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleBase.h:23:7: note: forward declaration of 'mozilla::a11y::Attribute' 0:56.12 class Attribute; 0:56.13 ^ 0:56.13 In file included from /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:7: 0:56.13 In file included from /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.h:14: 0:56.13 In file included from /Users/macc/stuff/pxu/accessible/generic/HyperTextAccessible.h:9: 0:56.13 In file included from /Users/macc/stuff/pxu/accessible/mac/AccessibleWrap.h:15: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/Accessible.h:16: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsIContent.h:12: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsINode.h:13: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsCOMPtr.h:33: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsCycleCollectionNoteChild.h:13: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsCycleCollectionTraversalCallback.h:10: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/jspubtd.h:17: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/PodOperations.h:19: 0:56.13 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/ArrayUtils.h:21: 0:56.13 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/Alignment.h:28:7: error: field has incomplete type 'mozilla::a11y::Attribute' 0:56.13 T mT; 0:56.13 ^ 0:56.13 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/Alignment.h:32:35: note: in instantiation of member class 'mozilla::AlignmentFinder<mozilla::a11y::Attribute>::Aligner' requested here 0:56.13 static const size_t alignment = sizeof(Aligner) - sizeof(T); 0:56.13 ^ 0:56.13 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2417:49: note: in instantiation of template class 'mozilla::AlignmentFinder<mozilla::a11y::Attribute>' requested here 0:56.14 mozilla::AlignedElem<(MOZ_ALIGNOF(Header) > MOZ_ALIGNOF(elem_type)) ? 0:56.14 ^ 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/Alignment.h:35:33: note: expanded from macro 'MOZ_ALIGNOF' 0:56.14 #define MOZ_ALIGNOF(T) mozilla::AlignmentFinder<T>::alignment 0:56.14 ^ 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2413:3: note: in instantiation of member class 'AutoTArray<mozilla::a11y::Attribute, 10>::(anonymous)' requested here 0:56.14 union 0:56.14 ^ 0:56.14 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:203:31: note: in instantiation of template class 'AutoTArray<mozilla::a11y::Attribute, 10>' requested here 0:56.14 AutoTArray<Attribute, 10> attrs; 0:56.14 ^ 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleBase.h:23:7: note: forward declaration of 'mozilla::a11y::Attribute' 0:56.14 class Attribute; 0:56.14 ^ 0:56.14 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:235:44: error: cannot initialize a parameter of type 'nsTArray<mozilla::a11y::Attribute> *' with an rvalue of type 'AutoTArray<mozilla::a11y::Attribute, 10> *' 0:56.14 mIntl.AsProxy()->DefaultTextAttributes(&attrs); 0:56.14 ^~~~~~ 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleShared.h:103:49: note: passing argument to parameter 'aAttrs' here 0:56.14 void DefaultTextAttributes(nsTArray<Attribute>* aAttrs); 0:56.14 ^ 0:56.14 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:236:26: error: cannot initialize object parameter of type 'const nsTArray_base<nsTArrayInfallibleAllocator, nsTArray_CopyWithMemutils>' with an expression of type 'AutoTArray<mozilla::a11y::Attribute, 10>' 0:56.14 uint32_t attrCount = attrs.Length(); 0:56.14 ^~~~~ 0:56.14 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:239:37: error: no viable overloaded operator[] for type 'AutoTArray<mozilla::a11y::Attribute, 10>' 0:56.14 props->SetStringProperty(attrs[i].Name(), attrs[i].Value(), unused); 0:56.14 ~~~~~^~ 0:56.14 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1090:14: note: candidate function not viable: no known conversion from 'AutoTArray<mozilla::a11y::Attribute, 10>' to 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>' for object argument 0:56.14 elem_type& operator[](index_type aIndex) { return ElementAt(aIndex); } 0:56.14 ^ 0:56.15 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1093:20: note: candidate function not viable: no known conversion from 'AutoTArray<mozilla::a11y::Attribute, 10>' to 'const nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>' for object argument 0:56.15 const elem_type& operator[](index_type aIndex) const { return ElementAt(aIndex); } 0:56.15 ^ 0:56.15 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:239:54: error: no viable overloaded operator[] for type 'AutoTArray<mozilla::a11y::Attribute, 10>' 0:56.15 props->SetStringProperty(attrs[i].Name(), attrs[i].Value(), unused); 0:56.15 ~~~~~^~ 0:56.15 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1090:14: note: candidate function not viable: no known conversion from 'AutoTArray<mozilla::a11y::Attribute, 10>' to 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>' for object argument 0:56.15 elem_type& operator[](index_type aIndex) { return ElementAt(aIndex); } 0:56.15 ^ 0:56.15 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1093:20: note: candidate function not viable: no known conversion from 'AutoTArray<mozilla::a11y::Attribute, 10>' to 'const nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>' for object argument 0:56.15 const elem_type& operator[](index_type aIndex) const { return ElementAt(aIndex); } 0:56.15 ^ 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2045:45: error: invalid application of 'sizeof' to an incomplete type 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::elem_type' (aka 'mozilla::a11y::Attribute') 0:56.30 sizeof(elem_type), 0:56.30 ^~~~~~~~~~~~~~~~~ 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1736:18: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::RemoveElementsAt' requested here 0:56.30 void Clear() { RemoveElementsAt(0, Length()); } 0:56.30 ^ 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:891:22: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::Clear' requested here 0:56.30 ~nsTArray_Impl() { Clear(); } 0:56.30 ^ 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2211:7: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::~nsTArray_Impl' requested here 0:56.30 class nsTArray : public nsTArray_Impl<E, nsTArrayInfallibleAllocator> 0:56.30 ^ 0:56.30 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:234:31: note: in instantiation of member function 'AutoTArray<mozilla::a11y::Attribute, 10>::AutoTArray' requested here 0:56.30 AutoTArray<Attribute, 10> attrs; 0:56.30 ^ 0:56.30 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleBase.h:23:7: note: forward declaration of 'mozilla::a11y::Attribute' 0:56.30 class Attribute; 0:56.30 ^ 0:56.30 In file included from /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:7: 0:56.30 In file included from /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.h:14: 0:56.30 In file included from /Users/macc/stuff/pxu/accessible/generic/HyperTextAccessible.h:9: 0:56.31 In file included from /Users/macc/stuff/pxu/accessible/mac/AccessibleWrap.h:15: 0:56.31 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/Accessible.h:16: 0:56.31 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsIContent.h:12: 0:56.31 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsINode.h:20: 0:56.31 In file included from /Users/macc/stuff/pxu-pmbuild/dist/include/nsTObserverArray.h:11: 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1996:34: error: arithmetic on a pointer to an incomplete type 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::elem_type' (aka 'mozilla::a11y::Attribute') 0:56.31 elem_type* iter = Elements() + aStart; 0:56.31 ~~~~~~~~~~ ^ 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2043:3: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::DestructRange' requested here 0:56.31 DestructRange(aStart, aCount); 0:56.31 ^ 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:1736:18: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::RemoveElementsAt' requested here 0:56.31 void Clear() { RemoveElementsAt(0, Length()); } 0:56.31 ^ 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:891:22: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::Clear' requested here 0:56.31 ~nsTArray_Impl() { Clear(); } 0:56.31 ^ 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/nsTArray.h:2211:7: note: in instantiation of member function 'nsTArray_Impl<mozilla::a11y::Attribute, nsTArrayInfallibleAllocator>::~nsTArray_Impl' requested here 0:56.31 class nsTArray : public nsTArray_Impl<E, nsTArrayInfallibleAllocator> 0:56.31 ^ 0:56.31 /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp:234:31: note: in instantiation of member function 'AutoTArray<mozilla::a11y::Attribute, 10>::AutoTArray' requested here 0:56.31 AutoTArray<Attribute, 10> attrs; 0:56.31 ^ 0:56.31 /Users/macc/stuff/pxu-pmbuild/dist/include/mozilla/a11y/ProxyAccessibleBase.h:23:7: note: forward declaration of 'mozilla::a11y::Attribute' 0:56.31 class Attribute; 0:56.31 ^ 0:56.31 8 warnings and 8 errors generated. 0:56.33 0:56.33 In the directory /Users/macc/stuff/pxu-pmbuild/accessible/xpcom 0:56.33 The following command failed to execute properly: 0:56.33 /usr/bin/clang++ -std=gnu++11 -o xpcAccessibleHyperText.o -c -fvisibility=hidden -fvisibility-inlines-hidden -DNDEBUG=1 -DTRIMMED=1 -DOS_POSIX=1 -DOS_MACOSX=1 -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/Users/macc/stuff/pxu/accessible/xpcom -I/Users/macc/stuff/pxu-pmbuild/accessible/xpcom -I/Users/macc/stuff/pxu/accessible/base -I/Users/macc/stuff/pxu/accessible/generic -I/Users/macc/stuff/pxu/accessible/mac -I/Users/macc/stuff/pxu-pmbuild/ipc/ipdl/_ipdlheaders -I/Users/macc/stuff/pxu/ipc/chromium/src -I/Users/macc/stuff/pxu/ipc/glue -I/Users/macc/stuff/pxu-pmbuild/dist/include -I/Users/macc/stuff/pxu-pmbuild/dist/include/nspr -I/Users/macc/stuff/pxu-pmbuild/dist/include/nss -fPIC -DMOZILLA_CLIENT -include /Users/macc/stuff/pxu-pmbuild/mozilla-config.h -MD -MP -MF .deps/xpcAccessibleHyperText.o.pp -Qunused-arguments -Qunused-arguments -Wall -Wc++11-compat -Wempty-body -Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof -Wno-unknown-warning-option -Wno-return-type-c-linkage -stdlib=libc++ -isysroot /Users/macc/Downloads/MacOSX10.12.sdk -fno-exceptions -fno-strict-aliasing -stdlib=libc++ -fno-rtti -fno-exceptions -fno-math-errno -msse2 -mfpmath=sse -pthread -pipe -g -O2 -fomit-frame-pointer -Wno-error=shadow /Users/macc/stuff/pxu/accessible/xpcom/xpcAccessibleHyperText.cpp 0:56.33 make[5]: *** [xpcAccessibleHyperText.o] Error 1 0:56.33 make[4]: *** [accessible/xpcom/target] Error 2 0:56.33 make[3]: *** [compile] Error 2 0:56.33 make[2]: *** [default] Error 2 0:56.33 make[1]: *** [realbuild] Error 2 0:56.34 make: *** [build] Error 2 0:56.37 65 compiler warnings present. ```
g4jc commented 2 years ago (Migrated from github.com)

Confirming. I am unable to build without --disable-accessibility on GNU/Linux (which I’ve always done anyway so didn’t notice).

Adding the following to accessible/base/NotificationController.cpp fixes it for me:
using namespace mozilla::dom;

Edit: This only solves the issue in NotificationController.cpp, fall out from #80 continues as per above comment.

 8:43.61 In file included from /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsTObserverArray.h:11:0,
 8:43.61                  from /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsINode.h:20,
 8:43.61                  from /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsIContent.h:12,
 8:43.62                  from /home/user/UXP/accessible/generic/Accessible.h:16,
 8:43.62                  from /home/user/UXP/accessible/atk/AccessibleWrap.h:11,
 8:43.62                  from /home/user/UXP/accessible/generic/HyperTextAccessible.h:9,
 8:43.62                  from /home/user/UXP/accessible/xpcom/xpcAccessibleHyperText.h:14,
 8:43.62                  from /home/user/UXP/accessible/xpcom/xpcAccessibleHyperText.cpp:7:
 8:43.62 /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsTArray.h: In instantiation of 'union AutoTArray<mozilla::a11y::Attribute, 10>::<unnamed>':
 8:43.62 /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsTArray.h:2413:3:   required from 'class AutoTArray<mozilla::a11y::Attribute, 10>'
 8:43.62 /home/user/UXP/accessible/xpcom/xpcAccessibleHyperText.cpp:203:31:   required from here
 8:43.62 /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsTArray.h:2415:54: error: invalid application of 'sizeof' to incomplete type 'AutoTArray<mozilla::a11y::Attribute, 10>::elem_type {aka mozilla::a11y::Attribute}'
 8:43.62      char mAutoBuf[sizeof(nsTArrayHeader) + N * sizeof(elem_type)];
 8:43.62                                                       ^
Confirming. I am unable to build without `--disable-accessibility` on GNU/Linux (which I've always done anyway so didn't notice). Adding the following to `accessible/base/NotificationController.cpp` fixes it for me: `using namespace mozilla::dom;` Edit: This only solves the issue in NotificationController.cpp, fall out from #80 continues as per above comment. ``` 8:43.61 In file included from /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsTObserverArray.h:11:0, 8:43.61 from /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsINode.h:20, 8:43.61 from /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsIContent.h:12, 8:43.62 from /home/user/UXP/accessible/generic/Accessible.h:16, 8:43.62 from /home/user/UXP/accessible/atk/AccessibleWrap.h:11, 8:43.62 from /home/user/UXP/accessible/generic/HyperTextAccessible.h:9, 8:43.62 from /home/user/UXP/accessible/xpcom/xpcAccessibleHyperText.h:14, 8:43.62 from /home/user/UXP/accessible/xpcom/xpcAccessibleHyperText.cpp:7: 8:43.62 /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsTArray.h: In instantiation of 'union AutoTArray<mozilla::a11y::Attribute, 10>::<unnamed>': 8:43.62 /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsTArray.h:2413:3: required from 'class AutoTArray<mozilla::a11y::Attribute, 10>' 8:43.62 /home/user/UXP/accessible/xpcom/xpcAccessibleHyperText.cpp:203:31: required from here 8:43.62 /home/user/UXP/obj-x86_64-pc-linux-gnu/dist/include/nsTArray.h:2415:54: error: invalid application of 'sizeof' to incomplete type 'AutoTArray<mozilla::a11y::Attribute, 10>::elem_type {aka mozilla::a11y::Attribute}' 8:43.62 char mAutoBuf[sizeof(nsTArrayHeader) + N * sizeof(elem_type)]; 8:43.62 ^ ```
adeshkp commented 2 years ago (Migrated from github.com)

@g4jc My patch has the same change you mentioned, plus a few more Mac specific things. Since we are hitting the same roadblock, it means “accessibility” is busted in general and needs more fixes before can be fully de-unified.

We need help from our C++ wizard here!

@g4jc My patch has the same change you mentioned, plus a few more Mac specific things. Since we are hitting the same roadblock, it means "accessibility" is busted in general and needs more fixes before can be fully de-unified. We need help from our C++ wizard here!
mattatobin commented 2 years ago (Migrated from github.com)

You just need to resolve the change from everything is concatenated to normal. Add the missing namespaces and headers where needed.

Xref and error output will help you.

You just need to resolve the change from everything is concatenated to normal. Add the missing namespaces and headers where needed. Xref and error output will help you.
adeshkp commented 2 years ago (Migrated from github.com)

After some hit-and-trial, I seem to have resolved the issues.
accessibility.patch.zip

I’ve done the work in my branch here -https://github.com/adeshkp/UXP/tree/deunify-accessible-build
Please let me know if it looks ok, and I can submit a PR.

After some hit-and-trial, I seem to have resolved the issues. [accessibility.patch.zip](https://github.com/MoonchildProductions/UXP/files/3144269/accessibility.patch.zip) I've done the work in my branch here -https://github.com/adeshkp/UXP/tree/deunify-accessible-build Please let me know if it looks ok, and I can submit a PR.
wolfbeast commented 2 years ago (Migrated from github.com)

Adding the following to accessible/base/NotificationController.cpp fixes it for me:
using namespace mozilla::dom;

^ that

> Adding the following to accessible/base/NotificationController.cpp fixes it for me: using namespace mozilla::dom; ^ that
wolfbeast commented 2 years ago (Migrated from github.com)

After some hit-and-trial, I seem to have resolved the issues.
accessibility.patch.zip

I’ve done the work in my branch here -https://github.com/adeshkp/UXP/tree/deunify-accessible-build
Please let me know if it looks ok, and I can submit a PR.

Looks good except for one thing. You moved 2 functions from mozaccessible.mm to moztableaccessible.mm -- instead of doing that, just include mozaccessible.h in moztableaccessible.mm? I’m assuming these functions are meant to be globally accessible for all accessible .mm files (and are likely declared properly in the .h as a result)

> > > After some hit-and-trial, I seem to have resolved the issues. > [accessibility.patch.zip](https://github.com/MoonchildProductions/UXP/files/3144269/accessibility.patch.zip) > > I've done the work in my branch here -https://github.com/adeshkp/UXP/tree/deunify-accessible-build > Please let me know if it looks ok, and I can submit a PR. **Looks good** except for one thing. You moved 2 functions from `mozaccessible.mm` to `moztableaccessible.mm` -- instead of doing that, just include `mozaccessible.h` in `moztableaccessible.mm`? I'm assuming these functions are meant to be globally accessible for all accessible .mm files (and are likely declared properly in the .h as a result)
wolfbeast commented 2 years ago (Migrated from github.com)

To prevent the same issue in the future, I’ll do this a little different from now on: I’ll tackle all the deprot for Windows on a separate branch, then make a PR, and people on Linux and Mac can try to build with those changes; if there are any build bustages, things can be branched, PRs made to fix, merged back in my branch and then when all is good merged to master.

To prevent the same issue in the future, I'll do this a little different from now on: I'll tackle all the deprot for Windows on a separate branch, then make a PR, and people on Linux and Mac can try to build with those changes; if there are any build bustages, things can be branched, PRs made to fix, merged back in my branch and then when all is good merged to master.
adeshkp commented 2 years ago (Migrated from github.com)

Those functions are not declared in header files and Objective-C++ seemed like an alien language so I did not try to create public interface for them in the .h file.
The functions are only used in that one file http://xref.palemoon.org/uxp-trunk/search?string=ConvertToNSArray&find=
currently so I moved them to that file, but if you insist I can try to do it properly by separating their interface and implementation in different files.

Those functions are not declared in header files and Objective-C++ seemed like an alien language so I did not try to create public interface for them in the .h file. The functions are only used in that one file http://xref.palemoon.org/uxp-trunk/search?string=ConvertToNSArray&find= currently so I moved them to that file, but if you insist I can try to do it properly by separating their interface and implementation in different files.
wolfbeast commented 2 years ago (Migrated from github.com)

If it wasn’t properly declared to begin with (tisk tisk Mozilla what a mess you made), then I’m fine with moving them.
If they need to be used elsewhere in the future we can tackle the declaration and centralization at that point in time.

If it wasn't properly declared to begin with (tisk tisk Mozilla what a mess you made), then I'm fine with moving them. If they need to be used elsewhere in the future we can tackle the declaration and centralization at that point in time.
adeshkp commented 2 years ago (Migrated from github.com)

Oh heck, this is still not fixed. I posted above when build was like 90% complete.
Now it fails at linking phase and requires some more work. I saw this when I came back:

 1:10.93
 1:10.93 ld: warning: could not create compact unwind for _ffi_call_unix64: does not use RBP or RSP based frame
 1:10.93 Undefined symbols for architecture x86_64:
 1:10.93   "nsIContent::GetFlattenedTreeParent() const", referenced from:
 1:10.93       nsCoreUtils::GetDOMElementFor(nsIContent*) in nsCoreUtils.o
 1:10.93       nsCoreUtils::GetTreeBoxObject(nsIContent*) in nsCoreUtils.o
 1:10.93   "nsIDocument::GetBodyElement()", referenced from:
 1:10.93       LogDocInfo(nsIDocument*, mozilla::a11y::DocAccessible*) in Logging.o
 1:10.93   "mozilla::a11y::Accessible::HasGenericType(mozilla::a11y::AccGenericType) const", referenced from:
 1:10.93       -[mozTablePartAccessible isLayoutTablePart] in mozTableAccessible.o
 1:10.93       -[mozTableAccessible accessibilityAttributeValue:] in mozTableAccessible.o
 1:10.93       -[mozTableRowAccessible accessibilityAttributeValue:] in mozTableAccessible.o
 1:10.93 ld: symbol(s) not found for architecture x86_64
 1:10.93 clang: error: linker command failed with exit code 1 (use -v to see invocation)
 1:10.93 make[5]: *** [XUL] Error 1
 1:10.93 make[4]: *** [toolkit/library/target] Error 2
 1:10.93 make[3]: *** [compile] Error 2
 1:10.93 make[2]: *** [default] Error 2
 1:10.93 make[1]: *** [realbuild] Error 2
 1:10.93 make: *** [build] Error 2
 1:10.96 157 compiler warnings present.
Oh heck, this is still not fixed. I posted above when build was like 90% complete. Now it fails at linking phase and requires some more work. I saw this when I came back: ``` 1:10.93 1:10.93 ld: warning: could not create compact unwind for _ffi_call_unix64: does not use RBP or RSP based frame 1:10.93 Undefined symbols for architecture x86_64: 1:10.93 "nsIContent::GetFlattenedTreeParent() const", referenced from: 1:10.93 nsCoreUtils::GetDOMElementFor(nsIContent*) in nsCoreUtils.o 1:10.93 nsCoreUtils::GetTreeBoxObject(nsIContent*) in nsCoreUtils.o 1:10.93 "nsIDocument::GetBodyElement()", referenced from: 1:10.93 LogDocInfo(nsIDocument*, mozilla::a11y::DocAccessible*) in Logging.o 1:10.93 "mozilla::a11y::Accessible::HasGenericType(mozilla::a11y::AccGenericType) const", referenced from: 1:10.93 -[mozTablePartAccessible isLayoutTablePart] in mozTableAccessible.o 1:10.93 -[mozTableAccessible accessibilityAttributeValue:] in mozTableAccessible.o 1:10.93 -[mozTableRowAccessible accessibilityAttributeValue:] in mozTableAccessible.o 1:10.93 ld: symbol(s) not found for architecture x86_64 1:10.93 clang: error: linker command failed with exit code 1 (use -v to see invocation) 1:10.93 make[5]: *** [XUL] Error 1 1:10.93 make[4]: *** [toolkit/library/target] Error 2 1:10.93 make[3]: *** [compile] Error 2 1:10.93 make[2]: *** [default] Error 2 1:10.93 make[1]: *** [realbuild] Error 2 1:10.93 make: *** [build] Error 2 1:10.96 157 compiler warnings present. ```
wolfbeast commented 2 years ago (Migrated from github.com)

You probably still do need mozaccessible.h in that file ;)

You probably still do need mozaccessible.h in that file ;)
This repo is archived. You cannot comment on issues.
No Milestone
No Assignees
1 Participants
Due Date

No due date set.

Dependencies

This issue currently doesn't have any dependencies.

Loading…
There is no content yet.