-
Notifications
You must be signed in to change notification settings - Fork 28
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
Guard windows definitions with "include guards" #606
Conversation
* We need to define exo window structs within the headers we generate because those definition depend on the kenrnel. * However, this means that including multiple headers generated by Exo can cause a compilation error because of duplicate definitions. * This commit wraps those definitions with "include guards" to avoid such conflicts.
This will break the BLAS codegen tests (the last step in the workflow), but we sure verify that it passes the build and correctness tests. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## main #606 +/- ##
=======================================
Coverage 86.66% 86.66%
=======================================
Files 91 91
Lines 21360 21362 +2
=======================================
+ Hits 18511 18513 +2
Misses 2849 2849 ☔ View full report in Codecov by Sentry. |
Actually, it turns out we don't test the headers codegen there so the tests didn't fail. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
* We need to define exo window structs within the headers we generate because those definition depend on the kernel. * However, this means that including multiple headers generated by Exo can cause a compilation error because of duplicate definitions. * This commit wraps those definitions with "include guards" to avoid such conflicts.
because those definition depend on the kernel.
can cause a compilation error because of duplicate definitions.
such conflicts.