<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Have you tried the -xc flag yet?<br>
      <br>
      If you do a profiling build and then run your program with +RTS
      -xc it will give a stack trace on exceptions. <br>
    </p>
    <p>(I think your idea still has some content but ^ is easier because
      it already exists!)<br>
    </p>
    <div class="moz-cite-prefix">On 12/12/21 2:01 PM, Daneel Yaitskov
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CACNT4y6XA-SPDQMkKS7vxG5DkkHG1NQrP+BnXpNxxbkWsrs7-g@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div>Hi,</div>
        <div><br>
        </div>
        <div>I would like to enable stack traces at launch time and run
          program without HasCallStack overhead by default.</div>
        <div>I've got an idea to use GHC plugin which would duplicate
          all functions in modules with specified prefix. Duplicated
          functions should get disambiguating prefix (e.g. "debug") and
          HasCallStack constraint. Bodies of prefixed functions should
          be rewritten to use prefixed functions from matching modules
          (should be easy to do - hook just after renaming GHC phase
          when all names are fully qualified?).</div>
        <div><br>
        </div>
        <div>This way main function could choose "runLib" or
          "debugRunLib".</div>
        <div><br>
        </div>
        <div>Did anybody make something similar?<br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>-- <br>
          <div dir="ltr" class="gmail_signature"
            data-smartmail="gmail_signature"><br>
            Best regards,<br>
            Daniil Iaitskov<br>
             <br>
            <br>
            <br>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
<a class="moz-txt-link-freetext" href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a>
Only members subscribed via the mailman list are allowed to post.</pre>
    </blockquote>
  </body>
</html>