ZequanWu wrote: > > IIUC, the approach you choose here is to let `SemaPPCallbacks` control the > > "entered file stack" and allow it to remove element (which is file) from > > middle of the internal stack in `TimeTraceProfiler`, but this creates async > > event which is not designed for this purpose. > > Can we let `SemaPPCallbacks` track the last push file into the stack and > > when exit file, pop all the elements from the stack until we popped the > > last pushed file? > > As I wrote in [#56554 > (comment)](https://github.com/llvm/llvm-project/issues/56554#issuecomment-1975812398), > file level span and syntax tree level span should be handled asynchronously. > So using such implementation produces incorrect trace in other edge cases.
Can we choose to expose a handle (maybe an unique id for each entry) from `TimeTraceProfiler` instead of exposing the internal entry? https://github.com/llvm/llvm-project/pull/83961 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits