RESOLVED FIXED 119081
[CMAKE] Enforce c++0x for cmake based ports
https://bugs.webkit.org/show_bug.cgi?id=119081
Summary [CMAKE] Enforce c++0x for cmake based ports
Ryuan Choi
Reported 2013-07-25 04:54:56 PDT
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:
Attachments
Patch (1.33 KB, patch)
2013-07-25 05:00 PDT, Ryuan Choi
gyuyoung.kim: review+
Ryuan Choi
Comment 1 2013-07-25 05:00:16 PDT
Gyuyoung Kim
Comment 2 2013-07-25 05:03:59 PDT
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.
Chris Dumez
Comment 3 2013-07-25 05:05:00 PDT
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.
Ryuan Choi
Comment 4 2013-07-25 05:08:29 PDT
Ryuan Choi
Comment 5 2013-07-25 05:14:01 PDT
(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.)
Gyuyoung Kim
Comment 6 2013-07-25 05:20:32 PDT
(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 ?
Martin Robinson
Comment 7 2013-07-25 05:51:09 PDT
(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.
Martin Robinson
Comment 8 2013-07-25 05:51:36 PDT
(In reply to comment #7) > Yes, I think that's fine. Sorry. I mean to say, I think that's fine for GTK+.
Note You need to log in before you can comment on or make changes to this bug.