Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-6625

TClass::GetMethod() segfaults if arguments need complicated evaluation to find type

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: High
    • Resolution: Fixed
    • Affects Version/s: 6.00.02
    • Fix Version/s: 6.04.00, 6.02/02
    • Component/s: Cling
    • Labels:
      None
    • Environment:

      Gentoo Linux x86_64

      Description

      Dear ROOTers,

      since ROOT 6 (this is with heads/master@v6-00-01-986-gad2282d), the following:

      TestObj::Class()->GetMethod("func", "TestObj::kAnswerGood^TestObj::kAnswerBad")->Print();

      leads to a segfault with ugly backtrace into cling.
      "TestObj::kAnswerGood" is an enum value. As the crash of course happens inside a more complex example (in our software, this is used for bitmasking calibration steps), I have attached a minimal example leading to this issue, a "make && ./mgettest" is sufficient to trigger the stacktrace.

      If you want, I can also attach this full backtrace, but I guess you are faster triggering this in your local dev-environment .

      Cheers,
      Oliver

        Attachments

          Activity

            People

            • Assignee:
              axel Axel Naumann
              Reporter:
              ofreyerm Oliver Freyermuth
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: