rohanjain101 opened a new pull request, #972:
URL: https://github.com/apache/iceberg-cpp/pull/972

   ## What
   
   Move the `int128_t` / `uint128_t` aliases in the public header 
`iceberg/util/int128.h` from the global namespace
   into `namespace iceberg`.
   
   ## Why
   
   `int128.h` is installed and reached transitively from public headers such as 
`iceberg/util/decimal.h` and
   `iceberg/expression/literal.h`. Because the aliases are global, any consumer 
that includes an iceberg header gets
   global `int128_t` and `uint128_t` names. Those conflict with other libraries 
or application code that declare the
   same names with a different underlying type (for example, a project that 
defines its own `int128_t` on MSVC).
   
   ## Compatibility
   
   Every use in the project is already inside `namespace iceberg`, and nothing 
refers to `::int128_t`, so this is source
   compatible within the project. External code that relied on the global names 
would need `iceberg::int128_t`.
   
   The platform check is unchanged: MSVC still includes `<__msvc_int128.hpp>` 
and other compilers must be GCC or Clang.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to