Segfault caused by apparent error in codegen for exception unwinding on s390x

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 3.7.2
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • ALL
    • 0
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      On s390x, when this call to parseElement results in an exception, exception unwinding triggers a call to the FieldPath destructor, but that destructor gets called on address 0x0. Inspection of the disassembly reveals that the exception unwinding code is incorrectly attempting to read the address of the FieldPath object from a volatile (caller-save) register, which has been clobbered with a 0 value.

      As a workaround, we can assign the FieldPath to a named variable, instead of constructing it within the argument list to ProjectTypeParser::parseElement().

              Assignee:
              Justin Seyster
              Reporter:
              Justin Seyster
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated:
                Resolved: