Skip to content

Conversation

@steffenlarsen
Copy link
Contributor

Previously adding parsing of new properties from sycl-post-link in the runtime required repeat initialization of the corresponding property ranges as making them members would break ABI.
This commit moves the members into a vector which is initialized by the constructors inside the source of the runtime library. Doing this ensures that the corresponding vector will have at least as much space as the headers on the user-side needs and exactly the amount that the runtime library expects, preventing out-of-bounds accesses while allowing future extendibility without breaking ABI.

Previously adding parsing of new properties from sycl-post-link in the
runtime required repeat initialization of the corresponding property
ranges as making them members would break ABI.
This commit moves the members into a vector which is initialized by the
constructors inside the source of the runtime library. Doing this
ensures that the corresponding vector will have at least as much space
as the headers on the user-side needs and exactly the amount that the
runtime library expects, preventing out-of-bounds accesses while
allowing future extendibility without breaking ABI.

Signed-off-by: Larsen, Steffen <steffen.larsen@intel.com>
@steffenlarsen
Copy link
Contributor Author

Per offline discussion with @romanovvlad, a better solution is to move this to sources. This is done in #6768. Closing this.

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