On running the code given below which uses int for variant variable but uses __int128 for the variable d having value 12... I get the following output = 
  1. #include <boost/variant.hpp>
  2. #include <string>
  3. #include <iostream>
  4. std::ostream& operator<<(std::ostream& o, const __int128& x) { if (x == std::numeric_limits<__int128>::min()) return o << "-170141183460469231731687303715884105728"; if (x < 0) return o << "-" << -x; if (x < 10) return o << (char)(x + '0'); return o << x / 10 << (char)(x % 10 + '0'); }
  5. int main()
  6. {
  7. boost::variant<int, char, std::string> v;
  8. v = 56;
  9. v = 'Y';
  10. __int128 d=12;
  11. std::cout <<d << '\n';
  12. std::cout << v << '\n';
  13. v = "Yashaswi raj";
  14. std::cout << v << '\n';
  15. }






On 08-Apr-2021, at 1:08 AM, Anil Muthigi <anilmuthigi123@gmail.com> wrote:

I said that I am not sure if boost::variant supports __int128 because I had difficulties in compiling this code :
  1. #include <boost/variant.hpp>
  2. #include <string>
  3. #include <iostream>
  4. std::ostream& operator<<(std::ostream& o, const __int128& x) { if (x == std::numeric_limits<__int128>::min()) return o << "-170141183460469231731687303715884105728"; if (x < 0) return o << "-" << -x; if (x < 10) return o << (char)(x + '0'); return o << x / 10 << (char)(x % 10 + '0'); }
  5. int main()
  6. {
  7. boost::variant<__int128, char, std::string> v;
  8. v = 56;
  9. v = 'Y';
  10. __int128 d=12;
  11. std::cout <<d << '\n';
  12. std::cout << v << '\n';
  13. v = "Yashaswi raj";
  14. std::cout << v << '\n';
  15. }
If u replace __int128 with int in the variant variable, it seems to work just fine...

On Thu, 8 Apr 2021, 00:10 Edward Diener via Boost-users, <boost-users@lists.boost.org> wrote:
On 4/7/2021 2:15 PM, Anil Muthigi via Boost-users wrote:
> I dont think so...

If it is available why do you think variant would not support it ?

> I guess int128_t under boost/multiprecision/cpp_int is the only viable
> option.
>
> On Wed, 7 Apr 2021, 11:39 pm David Frank via Boost-users,
> <boost-users@lists.boost.org <mailto:boost-users@lists.boost.org>> wrote:
>
>     especially the gnu __int128?

_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
https://lists.boost.org/mailman/listinfo.cgi/boost-users