Lets us delete quite a bit of code
My first patch probably contains too much for one bug; should be landed in pieces
Created attachment 448719 [details] Patch
Created attachment 448885 [details] Patch
Created attachment 448891 [details] Patch
Unfortunately, our current GCC baseline is GCC 8.3.0, and I think default value comparisons are not supported in that GCC version... According to the https://trac.webkit.org/wiki/WebKitGTK/GCCRequirement, we can upgrade our GCC to 9 at April. So, we can start many features we strongly wanted! https://en.cppreference.com/w/cpp/compiler_support/20
(In reply to Yusuke Suzuki from comment #5) > Unfortunately, our current GCC baseline is GCC 8.3.0, and I think default > value comparisons are not supported in that GCC version... > According to the https://trac.webkit.org/wiki/WebKitGTK/GCCRequirement, we > can upgrade our GCC to 9 at April. So, we can start many features we > strongly wanted! > > https://en.cppreference.com/w/cpp/compiler_support/20 Looks like three way comparison is not in GCC until GCC 10, so I really wasted my time on that!
Probably, right now, the best feature we can use is bitfield initializer :) https://en.cppreference.com/w/cpp/language/bit_field#Cpp20_Default_member_initializers_for_bit_fields
<rdar://problem/87654218>
@Darin Now, GCC gets 10.2, so this patch is unlocked :)
Yes, I hope we can do everything from this patch, but probably not all at once!