Программа на Haskell получает аргументы компилятора программно?

Возможно ли получить аргументы компилятора программно в Haskell?

Я пишу библиотеку форматирования трассировки стека, и мне было бы очень полезно узнать, использовались ли при компиляции "-prof" и "-fprof-auto".

1 ответ

Возможно GHC.RTS.Flags.getProfFlags предоставляет достаточно информации?

Нет профилирования:

ProfFlags {doHeapProfile = NoHeapProfiling, 
           heapProfileInterval = 100000000, heapProfileIntervalTicks = 10,
           includeTSOs = False, showCCSOnException = False, 
           maxRetainerSetSize = 0, ccsLength = 0, modSelector = Nothing, 
           descrSelector = Nothing, typeSelector = Nothing, ccSelector = Nothing,
           ccsSelector = Nothing, retainerSelector = Nothing, bioSelector = Nothing}

С -prof:

ProfFlags {doHeapProfile = NoHeapProfiling, heapProfileInterval = 100000000,
           heapProfileIntervalTicks = 100, includeTSOs = False,
           showCCSOnException = False, maxRetainerSetSize = 107374182408,
           ccsLength = 25, modSelector = Nothing, descrSelector = Nothing, 
           typeSelector = Nothing, ccSelector = Nothing, ccsSelector = Nothing,
           retainerSelector = Nothing, bioSelector = Nothing}

Я предполагаю, что это динамические параметры, но, похоже, на них влияют -prof, Так что, может быть, этого достаточно для ваших целей (?)

Другие вопросы по тегам