Link: Non-debug builds of chpl use -DNDEBUG by mppf · Pull Request #19299 · chapel-lang/chapel · GitHub
Merge pull request #19299 from mppf/follow-19294-ndebug
Non-debug builds of chpl use -DNDEBUG
Follow-up to PR #19294
Generally, the production compiler doesn't use
assert, although it does
appear a bit in some custom LLVM passes and in code from LLVM headers. At
the same time, it is used more heavily in the dyno effort.
This PR changes the non-debug builds of
chpl to add
disable assertions. This makes it more consistent with what we do for
runtime builds. Errors that can be user facing should use
the production compiler or
context->error in dyno.
In slightly more detail, this PR:
- updates the CI to only do
since other configurations will check that we can build with
- fixes a variety of "unused variable" and "variable may be used before
it is set" errors with
extraChecksblock in llvmGlobalToWide.cpp that I removed is
just dead code because in that block
new_typeis never set to
anything other than
- adjusted compiler/make/Makefile.compiler.head to include the logic to
INT_ASSERTin other places in the production
compiler - especially convert-uast.cpp
- adjusted compiler/parser/Makefile to clean bison-chapel.output
regardless of CHPL_DEVELOPER setting.
Reviewed by @dlongnecke-cray - thanks!
[x] full local testing
[x] full gasnet testing