New Issue: What should the default of 'CHPL_RT_UNWIND' be

28012, "jabraham17", "What should the default of 'CHPL_RT_UNWIND' be", "2025-11-04T19:29:30Z"

We have been discussing changing the default of CHPL_UNWIND, which is the compile time option for whether to build Chapel with stack trace support. See Should `CHPL_UNWIND` be available in the default configuration? · Issue #27926 · chapel-lang/chapel · GitHub. However, a parallel issue if we change the default of CHPL_UNWIND to be !=none is what is the default value of CHPL_RT_UNWIND.

CHPL_UNWIND controls the compile time ability to have stack traces, changing it requires rebuilding the runtime. But once the compile time ability to have stack traces is turned on, CHPL_RT_UNWIND controls the runtime decision to display those stack traces.

The current state is

  • CHPL_RT_UNWIND defaults to true, meaning stack traces will be printed if possible
  • Users can turn it off by setting CHPL_RT_UNWIND to false
  • Our test system explicitly sets CHPL_RT_UNWIND to false for ease of testing

I think the no-brainer is that our test system should primarily test the default configuration. But the important question is whats the default.

Should CHPL_RT_UNWIND default to true or false? This would change if we default to printing a stack trace or not.

I will also note that using an environment variable to toggle between CHPL_RT_UNWIND is a bit unsatisfying to me.