Skip to Content.
Sympa Menu

cgal-discuss - [cgal-discuss] result_of deprecation from c++20 workaround (PR #3846)

Subject: CGAL users discussion list

List archive

[cgal-discuss] result_of deprecation from c++20 workaround (PR #3846)


Chronological Thread 
  • From: Ahmed Essam <>
  • To:
  • Subject: [cgal-discuss] result_of deprecation from c++20 workaround (PR #3846)
  • Date: Fri, 28 Feb 2020 20:25:11 +0200
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-phdr: 9a23:vEXDOB1plPEIZxObsmDT+DRfVm0co7zxezQtwd8Zse0fL/ad9pjvdHbS+e9qxAeQG9mCt7QV26GP6vmocFdDyKjCmUhKSIZLWR4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBxrwKxd+KPjrFY7OlcS30P2594HObwlSizexfLx/IA+yoAjSucUanJZuJrsswRbVv3VEfPhbymxvKV+PhRj3+92+/IRk8yReuvIh89BPXKDndKkmTrJWESorPXkt6MLkqRfMQw2P5mABUmoNiRpHHxLF7BDhUZjvtCbxq/dw1zObPc3ySrA0RCii4qJ2QxLmlCsLKzg0+3zRh8dtjqxUvQihqgRwzIDUbo+bN+dwcL3Bct4BX2VNQtxcWjZdDo+gbYYCCfcKM+ZCr4n6olsDtQezBQmpBOzx1zBDm3D43bYh0+s7FAHNwQstH84OsHvKttr1LrsSUe6ozKnM1znMde1Z1Czy6IjNaB8hoPWMUahsfsrWzEkiDgXIhUiep4ziOjOazOUNs26D4upvVOKvl24nqxxqrTS12sgsjYzJipoQylDF6Sp52oE1Jca/SE51fd6oCodftyafN4ZwX8gsQHlotT4kxrEavZO3ZisHxZQ9yxLCdfCKcJKE7x39WOuXPDx2nmhqeKiliBa36UWgyvPzVs2z0FtSqypKiNjMtnQU2x3d78iLV+Jx/kmu1DqRzQzT5eZEIUc7larfNZEt2KI/lp0WsUjbHy/2nlv5jLOOe0k65uSl7/7rb7bmq5OGKoN4lALzPr4hl8ChGeg4NxIBX2mf+eSyzr3j+kj5Ta1Wjv02jKbWqoraJdgVpq6kBw9ZyJws5AikAjep1dQXh3gHLFZfdB2biIjpPknCIOrkAvenn1SsjDBryujaMb3uGJrNKmHPn6rgfbZm90Fc1REzzctE6pJPCrABJerzVVXruNzZCB85KQ20zPz9BNVzzINNEV6IV6SWOaeXvV6T7f80OMGNYpUUsXDzMasL/fnr2FY5nFIRNYSyxpISICSkHvlvOVmXfH6qi9opHmIDvw54R+vv3g7RGQVPbmq/CvpvrgowD5irWN+aG9KdxYeZ1SL+JaV4I2BLDlfWTCXtfoSAHugJMWecfpUnnTsDWrysDYQm0EP27V6o+/9cNuPRvxYgm9fm3dlx6ffUkEhrpzNxBsWZlWqKSjMtxz9ad3oNxKl65HdF5BKby6Eh2q5XENVS47VCVQJobZM=

Hi all,

I'm Ahmed Essam, and I'm interested in applying for GSoC with you this year.

Regarding PR #3846. As I understand it, the main blocker is the deprecation of `std::result_of` from C++20 in favor of `std::invoke_result`. I think there is a workaround that would work with both C++11 and C++20 when the removal happens. The main idea comes from this blogpost https://devblogs.microsoft.com/oldnewthing/20190710-00/?p=102678.
We will use SFINAE to choose `std::invoke_of` if available, otherwise, choose `std::result_of`. I'm not sure is the mapping of the functionalities here covers all cases, but I think it's worth trying. Please find the code snippet below:

https://gist.github.com/theartful/3dd554239743b4489b2356058f12a432

If you think this might work, I can make a PR for it.

Thanks,
Ahmed Essam



Archive powered by MHonArc 2.6.18.

Top of Page