Closed Bug 1624426 Opened 4 years ago Closed 4 years ago

Build is broken when TaskTracer is enabled

Categories

(Core :: XPCOM, defect)

Unspecified
Android
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla76
Tracking Status
firefox-esr68 --- unaffected
firefox74 --- unaffected
firefox75 --- unaffected
firefox76 --- fixed

People

(Reporter: fabrice, Assigned: sg)

References

(Regression)

Details

(Keywords: regression)

Attachments

(1 file)

When building with ac_add_options --enable-tasktracer in mozconfig we end up with this error:

 0:02.70 /home/fabrice/.mozbuild/android-ndk-r20b/sources/cxx-stl/llvm-libc++/include/type_traits:3412:14: note: in instantiation of template class 'std::__1::is_constructible<nsTString[295/1871]
nst nsTString<char> &>' requested here                                                                                                                                                             
 0:02.71     : public is_constructible<_Tp,                                                                                                                                                        
 0:02.71              ^                                                                                                                                                                            
 0:02.71 /home/fabrice/.mozbuild/android-ndk-r20b/sources/cxx-stl/llvm-libc++/include/type_traits:3418:7: note: in instantiation of template class 'std::__1::is_copy_constructible<nsTString<char>
 >' requested here                                                                                                                                                                                 
 0:02.71     = is_copy_constructible<_Tp>::value;                                                                                                                                                  
 0:02.71       ^                                                                                                                                                                                   
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/nsTArray.h:257:38: note: in instantiation of variable template specialization 'std::__1::is_copy_constructible_v<nsTString<char> 
>' requested here                                                                                                                                                                                  
 0:02.71   static constexpr bool Value = std::is_copy_constructible_v<E>;                                                                                                                          
 0:02.71                                      ^                                                                                                                                                    
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/nsTArray.h:277:42: note: in instantiation of static data member 'detail::SpecializableIsCopyConstructible<nsTString<char> >::Valu
e' requested here                                                                                                                                                                                  
 0:02.71     SpecializableIsCopyConstructible<E>::Value;                                                                                                                                           
 0:02.71                                          ^                                                                                                                                                
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/nsTArray.h:284:38: note: in instantiation of variable template specialization 'detail::SpecializableIsCopyConstructibleValue<nsTS
tring<char> >' requested here                                                                                                                                                                      
 0:02.71           bool IsCopyConstructible = SpecializableIsCopyConstructibleValue<E>>                                                                                                            
 0:02.71                                      ^                                                                                                                                                    
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/nsTArray.h:322:24: note: in instantiation of default argument for 'nsTArray_CopyEnabler<nsTString<char>, nsTArray_Impl<nsTString<
char>, nsTArrayInfallibleAllocator> >' required here                                                                                                                                               
 0:02.71     : public ::detail::nsTArray_CopyEnabler<E, Derived> {                                                                                                                                 
 0:02.71                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                   
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/nsTArray.h:868:36: note: in instantiation of template class 'nsTArray_SafeElementAtHelper<nsTString<char>, nsTArray_Impl<nsTStrin
g<char>, nsTArrayInfallibleAllocator> >' requested here                                                                                                                                            
 0:02.71 struct nsTArray_TypedBase : public nsTArray_SafeElementAtHelper<E, Derived> {};                                                                                                           
 0:02.71                                    ^                                                                                                                                                      
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/nsTArray.h:1006:14: note: in instantiation of template class 'nsTArray_TypedBase<nsTString<char>, nsTArray_Impl<nsTString<char>, 
nsTArrayInfallibleAllocator> >' requested here                                                                                                                                                     
 0:02.71       public nsTArray_TypedBase<                                                                                                                                                          
 0:02.71              ^                                                                                                                                                                            
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/nsTArray.h:2637:25: note: in instantiation of template class 'nsTArray_Impl<nsTString<char>, nsTArrayInfallibleAllocator>' reques
ted here                                                                                                                                                                                           
 0:02.71 class nsTArray : public nsTArray_Impl<E, nsTArrayInfallibleAllocator> {                                                                                                                   
 0:02.71                         ^                                                                                                                                                                 
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/GeckoTaskTracerImpl.h:106:23: note: in instantiation of template class 'nsTArray<nsTString<char> >' requested here               
 0:02.71   nsTArray<nsCString> mStrs;                                                                                                                                                              
 0:02.71                       ^                                                                                                                                                                   
 0:02.71 /media/external/dev/gecko-dev/obj-gecko/dist/include/nsStringFwd.h:33:7: note: template is declared here                                                                              
 0:02.71 class nsTString;                                                                                                                                                                          
 0:02.71       ^                                                                                                                                                                                   
 0:02.71 1 error generated.                                                                                                                                                                        
 0:02.71 make[4]: *** [/media/external/dev/gecko-dev/config/rules.mk:747: Unified_cpp_ipc_chromium2.o] Error 1 

This is caused by bug 1620632

Regressed by: 1620632
Has Regression Range: --- → yes

I can't reproduce this issue. I guess this is happening on Linux? Can you share your complete mozconfig?

Flags: needinfo?(fabrice)

(In reply to Simon Giesecke [:sg] [he/him] from comment #1)

I can't reproduce this issue. I guess this is happening on Linux? Can you share your complete mozconfig?

This is a cross compiling setup using the Android NDK. That should be reproductible with a mobile/android build.

Flags: needinfo?(fabrice)

Ah, thanks :) I could reproduce it now, and will provide a fix soon!

Assignee: nobody → sgiesecke
Status: NEW → ASSIGNED
OS: Unspecified → Android
Component: General → XPCOM
Product: Firefox Build System → Core

This is required for a Android build with --enable-tasktracer

Pushed by sgiesecke@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/005d4653bb33
Add MOZ_DECLARE_COPY_CONSTRUCTIBLE for nsTString<char>. r=froydnj

Thanks Simon!

Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla76
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: