Closed Bug 1623957 Opened 2 months ago Closed 2 months ago

Replace mfbt/TypeTraits with <type_traits>

Categories

(Core :: JavaScript Engine, task)

task
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla76
Tracking Status
firefox76 --- fixed

People

(Reporter: anba, Assigned: anba)

Details

Attachments

(17 files)

47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review

Similar to bug 1607826 and bug 1607796.

In the past there have been some issues when newer STL features were used, but it seems like all our supported compilers support all <type_traits> replacements for mfbt/TypeTraits.h.

Also reenable the static_assert which was disabled for some reason in
bug 1308236. (Bug 1308236 doesn't contain any information why this assertion
had to be disabled.)

Depends on D67661

Pushed by shindli@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/d6d34d4374a7
Part 1: Replace mozilla::IsSame with std::is_same. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/eb49edf61849
Part 2: Replace mozilla::Decay with std::decay. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/477dab8b3324
Part 3: Replace mozilla::IsEmpty with std::is_empty. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/ee8e9c99d479
Part 4: Replace mozilla::DeclVal with std::declval. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/4e839607dda0
Part 5: Replace mozilla::RemovePointer with std::remove_pointer. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/680f4f1018e6
Part 6: Replace mozilla::IsConvertible with std::is_convertible. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/c6427d6143d9
Part 7: Replace mozilla::EnableIf with std::enable_if. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/2244abeb2f36
Part 8: Replace mozilla::IsUnsigned with std::is_unsigned. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/83191a5d4366
Part 9: Replace mozilla::IsVoid with std::is_void. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/49efd8881aab
Part 10: Replace mozilla::Conditional with std::conditional. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/1079682d7967
Part 11: Replace mozilla::IsEnum with std::is_enum. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/2b72c54537e7
Part 12: Replace mozilla::MakeUnsigned with std::make_unsigned. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/4d6099637f6c
Part 13: Replace mozilla::IsSigned with std::is_signed. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/5e7a6d158bc8
Part 14: Replace mozilla::IsPointer with std::is_pointer. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/150ae4897b76
Part 15: Replace mozilla::RemoveReference with std::remove_reference. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/8ac78029b636
Part 16: Replace mozilla::RemoveConst with std::remove_const. r=jwalden
https://hg.mozilla.org/integration/autoland/rev/61a44ad12b15
Part 17: Remove stray includes for "mfbt/TypeTraits.h". r=jwalden
You need to log in before you can comment on or make changes to this bug.