In 115339, c++0x was enforced for cmake based ports using WebKit2 (using gcc) Now, there are build break (below errors) in JSC after FLT upstream In file included from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/dfg/DFGWorklist.h:34:0, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/dfg/DFGWorklist.cpp:27: /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/Deque.h: In instantiation of ‘void WTF::Deque<T, inlineCapacity>::append(const U&) [with U = std::nullptr_t; T = WTF::RefPtr<JSC::DFG::Plan>; long unsigned int inlineCapacity = 16ul]’: /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/dfg/DFGWorklist.cpp:47:35: required from here /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/Deque.h:424:9: error: no matching function for call to ‘WTF::RefPtr<JSC::DFG::Plan>::RefPtr(const std::nullptr_t&)’ /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/Deque.h:424:9: note: candidates are: In file included from /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/HashFunctions.h:24:0, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/HashTraits.h:24, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/HashTable.h:28, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/HashMap.h:24, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/runtime/JSCJSValue.h:31, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/runtime/CachedTranscendentalFunction.h:29, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/runtime/VM.h:32, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/runtime/Identifier.h:24, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/dfg/DFGDesiredIdentifiers.h:33, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/dfg/DFGPlan.h:32, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/dfg/DFGWorklist.h:33, from /home/ryuan/workspace/project/webkit/efl-webkit/Source/JavaScriptCore/dfg/DFGWorklist.cpp:27: /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/RefPtr.h:59:9: note: WTF::RefPtr<T>::RefPtr(WTF::HashTableDeletedValueType) [with T = JSC::DFG::Plan] /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/RefPtr.h:59:9: note: no known conversion for argument 1 from ‘const std::nullptr_t’ to ‘WTF::HashTableDeletedValueType’ /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/RefPtr.h:56:51: note: WTF::RefPtr<T>::RefPtr(WTF::PlacementNewAdoptType) [with T = JSC::DFG::Plan] /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/RefPtr.h:56:51: note: no known conversion for argument 1 from ‘const std::nullptr_t’ to ‘WTF::PlacementNewAdoptType’ /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/RefPtr.h:98:54: note: template<class U> WTF::RefPtr::RefPtr(const WTF::PassRefPtr<U>&) /home/ryuan/workspace/project/webkit/efl-webkit/Source/WTF/wtf/RefPtr.h:98:54: note: template argument deduction/substitution failed:
Created attachment 207450 [details] Patch
Comment on attachment 207450 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=207450&action=review > ChangeLog:9 > + Enforce c++0x for all cmake based ports to fix build break. Would be nicer if you mention what revision made this build break.
Maybe we should get confirmation that C++11 is now an official requirement for JSC. I know it is already the case for WebKit2 but I don't know that this is the case for JSC. @ggaren: Do we want to keep supporting older C++ in JSC code or not? If we do, then we should maybe fix the code that was recently introduced instead of enabling C++11. Note that I don't mind enabling by default C++11 support for the EFL port. This patch, however, does not only affect the EFL port.
Committed r153315: <http://trac.webkit.org/changeset/153315>
(In reply to comment #3) > Maybe we should get confirmation that C++11 is now an official requirement for JSC. I know it is already the case for WebKit2 but I don't know that this is the case for JSC. > > @ggaren: Do we want to keep supporting older C++ in JSC code or not? If we do, then we should maybe fix the code that was recently introduced instead of enabling C++11. > > Note that I don't mind enabling by default C++11 support for the EFL port. This patch, however, does not only affect the EFL port. You're right. we need consensus. If this is not intended, I will revert this. (Sorry, I was late to see the message.)
(In reply to comment #3) > Note that I don't mind enabling by default C++11 support for the EFL port. This patch, however, does not only affect the EFL port. Yes, we need to ask other cmake ports also want to enable C++11. @paroga, mrobinson and Rob, do your ports mind enable C++11 by default ?
(In reply to comment #6) > (In reply to comment #3) > > > Note that I don't mind enabling by default C++11 support for the EFL port. This patch, however, does not only affect the EFL port. > > Yes, we need to ask other cmake ports also want to enable C++11. > > @paroga, mrobinson and Rob, do your ports mind enable C++11 by default ? Yes, I think that's fine.
(In reply to comment #7) > Yes, I think that's fine. Sorry. I mean to say, I think that's fine for GTK+.