-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Property variable name missing from device exception message under linux release with seatbelts #743
Comments
Looked into this. My best guess would be it stems from this code block. There's already an exception for RTC, where My guess would be that (at one time) RTC was always built as release, and release builds treat string literal as |
So it's the same for release x SEATBELTS=ON, on Windows too. Will hopefully fix this by the end of the day in time for next release. |
So I've now investigated this and solved it locally, PR coming soon. In summary, the above functions are marked for compilation by RTC, or when included by My belief is that, this means when other files wish to compile a Debug builds must report string literals as The fix is instead to mark both functions as inline and wrap them with |
Also updates the relevant test suite to check for the bug in several cases. Closes #743
Also updates the relevant test suite to check for the bug in several cases. Closes #743
Forgot to do these before it was merged.
Forgot to do these before it was merged.
DeviceExceptions
thrown for environemnt properties that do not exist do not always print the message variable in the exception string.This only appears to affect Release builds under linux with (
SEATBELTS=ON
).E.g. the Test
DeviceExceptionTest.DeviceEnvironmentGetUnknownProperty
should throw an exception with the following error message, which it does under debug builds on linux:But for Release builds (with SEATBELTS) it throws:
To quickly enable the output in all build modes (but break the test suite)
run
intest_device_exception.cu
can be modified to the following:Then rebuild the test suite and run
Ideally we should add a test which checks the error message string is correct, otherwise this could be re-introduces in the future.
It is likely this occurs for other types of device exception too.
This was highlighted by Kenneth.
The text was updated successfully, but these errors were encountered: