Skip to content

Conversation

firewave
Copy link
Collaborator

No description provided.

@firewave
Copy link
Collaborator Author

firewave commented Sep 22, 2025

See also #7833 (comment).

Using __int128 it almost fully builds except for the requirement on ValueFlow::Value::equalTo() (suggestions on how to address it in this PR are welcome). The conversion to string for actual 128-bit values does not exist yet but this already exposes overflow issues in the existing code.

Comment on lines +46 to 48
if(USE_INT128 AND USE_BOOST_INT128)
add_definitions(-DHAVE_BOOST_INT128)
endif()
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the logic around USE_BOOST_INT128 is flawed . On is supposed to force the usage of Boost and Auto should provide a fallback to Boost if no built-in type exists but Boost is enabled (i.e. Visual Studio).

@firewave firewave marked this pull request as draft September 22, 2025 08:13
@firewave firewave force-pushed the i128 branch 10 times, most recently from 8cea4f1 to 9e1502e Compare September 22, 2025 08:49
@firewave firewave marked this pull request as ready for review September 22, 2025 08:58
Copy link

@firewave
Copy link
Collaborator Author

The conversion to string for actual 128-bit values does not exist yet but this already exposes overflow issues in the existing code.

I filed https://trac.cppcheck.net/ticket/14154 about that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant