Uploaded image for project: 'Xerces-C++'
  1. Xerces-C++
  2. XERCESC-2169

Undefined Behavior sanitizer findings

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 3.2.2
    • None
    • Miscellaneous
    • Fedora 29, x86_64. CFLAGS+=-fsanitize=undefined, CXXFLAGS+=-fsanitize=undefined.

    Description

      Hi Everyone,

      I'm building Xerces 3.2.2 (http://us.mirrors.quenda.co/apache//xerces/c/3/sources/) from sources with UBsan on Fedora 29 x86_64. UBsan can be enabled with `CFLAGS+=-fsanitize=undefined` and `CXXFLAGS+=-fsanitize=undefined`.

      It looks like 'make check' is generating some findings and it causes some self test failures.

      ```
      gmake  check-TESTS
      gmake[2]: Entering directory '/home/build/xerces-c-3.2.2/tests'
      gmake[3]: Entering directory '/home/build/xerces-c-3.2.2/tests'
      FAIL: scripts/DOMTest
      PASS: scripts/DOMMemTest
      PASS: scripts/RangeTest
      PASS: scripts/DOMTraversalTest
      XFAIL: scripts/XSerializerTest
      PASS: scripts/XSerializerTest1
      PASS: scripts/XSerializerTest2
      FAIL: scripts/XSerializerTest3
      FAIL: scripts/XSerializerTest4
      FAIL: scripts/XSerializerTest5
      ```

      Looking at `tests/test-suite.log`:

      ```
      xerces-c-3.2.2$ cat tests/test-suite.log
      ==========================================
         xerces-c 3.2.2: tests/test-suite.log
      ==========================================

      1. TOTAL: 36
      2. PASS:  9
      3. SKIP:  0
      4. XFAIL: 4
      5. FAIL:  23
      6. XPASS: 0
      7. ERROR: 0

      .. contents:: :depth: 2

      FAIL: scripts/DOMTest
      =====================

      Running /home/build/xerces-c-3.2.2/tests/DOMTest  > "/home/build/xerces-c-3.2.2/tests/observed/DOMTest.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/DOMTest.log"
      Result: pass
      ------
      obs=Test Run Successfully
      cpp:1993:42: runtime error: downcast of address 0x000000944160 which does not point to an object of type 'DOMComment'
      0x000000944160: note: object is of type 'xercesc_3_2::DOMTextImpl'
       00 00 00 00  30 8f 77 af 6d 7f 00 00  18 91 77 af 6d 7f 00 00  48 91 77 af 6d 7f 00 00  60 41 94 00
                    ^~~~~~~~~~~~~~~~~~~~~~~
                    vptr for 'xercesc_3_2::DOMTextImpl'
      src/DOM/DOMTest/DTest.cpp:1994:44: runtime error: downcast of address 0x000000946110 which does not point to an object of type 'DOMComment'
      0x000000946110: note: object is of type 'xercesc_3_2::DOMTextImpl'
       00 00 00 00  30 8f 77 af 6d 7f 00 00  18 91 77 af 6d 7f 00 00  48 91 77 af 6d 7f 00 00  10 61 94 00
                    ^~~~~~~~~~~~~~~~~~~~~~~
                    vptr for 'xercesc_3_2::DOMTextImpl'
      xercesc/util/XMLString.hpp:1457:12: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/internal/ElemStack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      ------
      exp=Test Run Successfully
      ------
      — ./expected/DOMTest.log      2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/DOMTest.log      2019-05-04 08:15:26.860266949 -0400
      @@ -1 +1,14 @@
       Test Run Successfully
      +cpp:1993:42: runtime error: downcast of address 0x000000944160 which does not point to an object of type 'DOMComment'
      +0x000000944160: note: object is of type 'xercesc_3_2::DOMTextImpl'
      + 00 00 00 00  30 8f 77 af 6d 7f 00 00  18 91 77 af 6d 7f 00 00  48 91 77 af 6d 7f 00 00  60 41 94 00
      +              ^~~~~~~~~~~~~~~~~~~~~~~
      +              vptr for 'xercesc_3_2::DOMTextImpl'
      +src/DOM/DOMTest/DTest.cpp:1994:44: runtime error: downcast of address 0x000000946110 which does not point to an object of type 'DOMComment'
      +0x000000946110: note: object is of type 'xercesc_3_2::DOMTextImpl'
      + 00 00 00 00  30 8f 77 af 6d 7f 00 00  18 91 77 af 6d 7f 00 00  48 91 77 af 6d 7f 00 00  10 61 94 00
      +              ^~~~~~~~~~~~~~~~~~~~~~~
      +              vptr for 'xercesc_3_2::DOMTextImpl'
      +xercesc/util/XMLString.hpp:1457:12: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/internal/ElemStack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      FAIL scripts/DOMTest (exit status: 1)

      XFAIL: scripts/XSerializerTest
      ==============================

      Running /home/build/xerces-c-3.2.2/tests/XSerializerTest  > "/home/build/xerces-c-3.2.2/tests/observed/XSerializerTest.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/XSerializerTest.log"
      Result: fail
      ------
      obs=
      Usage:
          XSerializerTest [options] <XML file | List file>

      This program invokes the SAX2XMLReader, and then prints the
      number of elements, attributes, spaces and characters found
      in each XML file, using SAX2 API.

      Options:
          -l          Indicate the input file is a List File that has a list of xml files.
                      Default to off (Input file is an XML file).
          -v=xxx      Validation scheme [always | never | auto*].
          -f          Enable full schema constraint checking processing. Defaults to off.
          -p          Enable namespace-prefixes feature. Defaults to off.
          -n          Disable namespace processing. Defaults to on.
                      NOTE: THIS IS OPPOSITE FROM OTHER SAMPLES.
          -s          Disable schema processing. Defaults to on.
                      NOTE: THIS IS OPPOSITE FROM OTHER SAMPLES.
          -locale=ll_CC specify the locale, default: en_US.
          -?          Show this help.

        * = Default if not provided explicitly.
      ------
      exp=
      Usage:
          XSerializerTest [options] <XML file | List file>

      This program invokes the SAX2XMLReader, and then prints the
      number of elements, attributes, spaces and characters found
      in each XML file, using SAX2 API.

      Options:
          -l          Indicate the input file is a List File that has a list of xml files.
                      Default to off (Input file is an XML file).
          -v=xxx      Validation scheme [always | never | auto*].
          -f          Enable full schema constraint checking processing. Defaults to off.
          -p          Enable namespace-prefixes feature. Defaults to off.
          -n          Disable namespace processing. Defaults to on.
                      NOTE: THIS IS OPPOSITE FROM OTHER SAMPLES.
          -s          Disable schema processing. Defaults to on.
                      NOTE: THIS IS OPPOSITE FROM OTHER SAMPLES.
          -locale=ll_CC specify the locale, default: en_US.
          -?          Show this help.

        * = Default if not provided explicitly.
      ------
      XFAIL scripts/XSerializerTest (exit status: 1)

      FAIL: scripts/XSerializerTest3
      ==============================

      Running /home/build/xerces-c-3.2.2/tests/XSerializerTest -v=never personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/XSerializerTest3.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/XSerializerTest3.log"
      Result: pass
      ------
      obs=personal-schema.xml:{timing removed}(37 elems, 28 attrs, 0 spaces, 268 chars)
      assed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      ------
      exp=personal-schema.xml:{timing removed}(37 elems, 28 attrs, 0 spaces, 268 chars)
      ------
      — ./expected/XSerializerTest3.log     2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/XSerializerTest3.log      2019-05-04 08:15:29.783230414 -0400
      @@ -1 +1,3 @@
       personal-schema.xml:{timing removed}(37 elems, 28 attrs, 0 spaces, 268 chars)
      +assed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      FAIL scripts/XSerializerTest3 (exit status: 1)

      FAIL: scripts/XSerializerTest4
      ==============================

      Running /home/build/xerces-c-3.2.2/tests/XSerializerTest -v=always personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/XSerializerTest4.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/XSerializerTest4.log"
      Result: pass
      ------
      obs=personal-schema.xml:{timing removed}(37 elems, 28 attrs, 140 spaces, 128 chars)
      sed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      ------
      exp=personal-schema.xml:{timing removed}(37 elems, 28 attrs, 140 spaces, 128 chars)
      ------
      — ./expected/XSerializerTest4.log     2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/XSerializerTest4.log      2019-05-04 08:15:29.834229777 -0400
      @@ -1 +1,3 @@
       personal-schema.xml:{timing removed}(37 elems, 28 attrs, 140 spaces, 128 chars)
      +sed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      FAIL scripts/XSerializerTest4 (exit status: 1)

      FAIL: scripts/XSerializerTest5
      ==============================

      Running /home/build/xerces-c-3.2.2/tests/XSerializerTest -v=always -f personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/XSerializerTest5.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/XSerializerTest5.log"
      Result: pass
      ------
      obs=personal-schema.xml:{timing removed}(37 elems, 28 attrs, 140 spaces, 128 chars)
      sed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      ------
      exp=personal-schema.xml:{timing removed}(37 elems, 28 attrs, 140 spaces, 128 chars)
      ------
      — ./expected/XSerializerTest5.log     2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/XSerializerTest5.log      2019-05-04 08:15:29.884229152 -0400
      @@ -1 +1,3 @@
       personal-schema.xml:{timing removed}(37 elems, 28 attrs, 140 spaces, 128 chars)
      +sed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      FAIL scripts/XSerializerTest5 (exit status: 1)

      XFAIL: scripts/InitTermTest
      ===========================

      Running /home/build/xerces-c-3.2.2/tests/InitTermTest  > "/home/build/xerces-c-3.2.2/tests/observed/InitTermTest.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/InitTermTest.log"
      Result: fail
      ------
      obs=
      Usage:
          InitTermTest [options] <XML file>

      This program tests the XMLPlatformUtils::Initialize()/Terminate()
      pair by calling it a number of times.
      Options:
          -n          Enable namespace processing. Default is off.
          -s          Enable schema processing. Default is off.
          -f          Enable full schema constraint checking. Defaults to off.
          -?          Show this help.
      ------
      exp=
      Usage:
          InitTermTest [options] <XML file>

      This program tests the XMLPlatformUtils::Initialize()/Terminate()
      pair by calling it a number of times.
      Options:
          -n          Enable namespace processing. Default is off.
          -s          Enable schema processing. Default is off.
          -f          Enable full schema constraint checking. Defaults to off.
          -?          Show this help.
      ------
      XFAIL scripts/InitTermTest (exit status: 1)

      FAIL: scripts/InitTermTest2
      ===========================

      Running /home/build/xerces-c-3.2.2/tests/InitTermTest -n -s personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/InitTermTest2.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/InitTermTest2.log"
      Result: pass
      ------
      obs=Test Run Successfully
      tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      ------
      exp=Test Run Successfully
      ------
      — ./expected/InitTermTest2.log        2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/InitTermTest2.log2019-05-04 08:15:34.313173794 -0400
      @@ -1 +1,3 @@
       Test Run Successfully
      +tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      FAIL scripts/InitTermTest2 (exit status: 1)

      FAIL: scripts/InitTermTest3
      ===========================

      Running /home/build/xerces-c-3.2.2/tests/InitTermTest -n -s -f personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/InitTermTest3.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/InitTermTest3.log"
      Result: pass
      ------
      obs=Test Run Successfully
      tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      ------
      exp=Test Run Successfully
      ------
      — ./expected/InitTermTest3.log        2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/InitTermTest3.log2019-05-04 08:15:36.667144371 -0400
      @@ -1 +1,3 @@
       Test Run Successfully
      +tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      FAIL scripts/InitTermTest3 (exit status: 1)

      XFAIL: scripts/ThreadTest
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest  > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest.log"
      Result: fail
      ------
      obs=No input XML file specified on command line.
      usage:  ThreadTest [-v] [-threads nnn] [-time nnn] [-quiet] [-verbose] xmlfile...
           -v=xxx         Validation scheme [always | never | auto].  Default is AUTO.
           -n             Enable namespace processing. Defaults to off.
           -s             Enable schema processing. Defaults to off.
           -f             Enable full schema constraint checking. Defaults to off.
           -parser=xxx    Parser Type [dom | sax | sax2].  Default is SAX (SAX1).
           -p             Enable namespace prefixes. Defaults to off.
                          (Only used with -parser=sax2, ignored otherwise.)
           -quiet         Suppress periodic status display.
           -verbose       Display extra messages.
           -reuse         Retain and reuse parser.  Default creates new for each parse.
           -threads nnn   Number of threads.  Default is 2.
           -time nnn      Total time to run, in seconds.  Default is forever.
           -parses nnn    Run for nnn parses instead of time.  Default is to use time
           -dump          Dump DOM tree on error.
           -mem           Read files into memory once only, and parse them from there.
           -gc            Enable grammar caching (i.e. grammar cached and used in subsequent parses). Defaults to off.
           -init          Perform an initial parse of the file(s) before starting up the individual threads.
      ------
      exp=No input XML file specified on command line.
      usage:  ThreadTest [-v] [-threads nnn] [-time nnn] [-quiet] [-verbose] xmlfile...
           -v=xxx         Validation scheme [always | never | auto].  Default is AUTO.
           -n             Enable namespace processing. Defaults to off.
           -s             Enable schema processing. Defaults to off.
           -f             Enable full schema constraint checking. Defaults to off.
           -parser=xxx    Parser Type [dom | sax | sax2].  Default is SAX (SAX1).
           -p             Enable namespace prefixes. Defaults to off.
                          (Only used with -parser=sax2, ignored otherwise.)
           -quiet         Suppress periodic status display.
           -verbose       Display extra messages.
           -reuse         Retain and reuse parser.  Default creates new for each parse.
           -threads nnn   Number of threads.  Default is 2.
           -time nnn      Total time to run, in seconds.  Default is forever.
           -parses nnn    Run for nnn parses instead of time.  Default is to use time
           -dump          Dump DOM tree on error.
           -mem           Read files into memory once only, and parse them from there.
           -gc            Enable grammar caching (i.e. grammar cached and used in subsequent parses). Defaults to off.
           -init          Perform an initial parse of the file(s) before starting up the individual threads.
      ------
      XFAIL scripts/ThreadTest (exit status: 1)

      FAIL: scripts/ThreadTest1
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax -v=never -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest1.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest1.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1346694111 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest1.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest1.log  2019-05-04 08:15:57.753880793 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1346694111 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest1 (exit status: 1)

      FAIL: scripts/ThreadTest2
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=dom -v=never -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest2.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest2.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1346693510 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest2.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest2.log  2019-05-04 08:16:18.810617608 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1346693510 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest2 (exit status: 1)

      FAIL: scripts/ThreadTest3
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax2 -v=never -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest3.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest3.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1256499315 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest3.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest3.log  2019-05-04 08:16:39.866354435 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1256499315 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest3 (exit status: 1)

      FAIL: scripts/ThreadTest4
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax -v=always -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest4.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest4.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1346694111 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest4.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest4.log  2019-05-04 08:17:00.950090906 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1346694111 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest4 (exit status: 1)

      FAIL: scripts/ThreadTest5
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=dom -v=always -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest5.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest5.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1346693510 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest5.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest5.log  2019-05-04 08:17:22.028827439 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1346693510 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest5 (exit status: 1)

      FAIL: scripts/ThreadTest6
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax2 -v=always -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest6.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest6.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1256499315 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest6.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest6.log  2019-05-04 08:17:43.084564261 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1256499315 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest6 (exit status: 1)

      FAIL: scripts/ThreadTest7
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax -gc -v=always -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest7.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest7.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1346694111 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest7.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest7.log  2019-05-04 08:18:04.145301018 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1346694111 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest7 (exit status: 1)

      FAIL: scripts/ThreadTest8
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=dom -gc -v=always -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest9.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest9.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1346693510 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest9.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest9.log  2019-05-04 08:18:25.202037825 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1346693510 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest8 (exit status: 1)

      FAIL: scripts/ThreadTest9
      =========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax2 -gc -v=always -quiet -threads 10 -time 20 personal.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest9.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest9.log"
      Result: pass
      ------
      obs=Test Run Successfully
      est.cpp:640:34: runtime error: signed integer overflow: 1256499315 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest9.log  2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest9.log  2019-05-04 08:18:46.290774236 -0400
      @@ -1 +1,2 @@
       Test Run Successfully
      +est.cpp:640:34: runtime error: signed integer overflow: 1256499315 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest9 (exit status: 1)

      FAIL: scripts/ThreadTest10
      ==========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax -n -s -f -v=always -quiet -threads 10 -time 20 personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest10.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest10.log"
      Result: pass
      ------
      obs=Test Run Successfully
      tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x7fa8bc00a118 which does not point to an object of type 'SchemaGrammar'
      0x7fa8bc00a118: note: object is of type 'xercesc_3_2::DTDGrammar'
       00 00 00 00  b0 08 99 f6 a8 7f 00 00  70 0e 12 01 00 00 00 00  68 a1 00 bc a8 7f 00 00  00 00 00 00
                    ^~~~~~~~~~~~~~~~~~~~~~~
                    vptr for 'xercesc_3_2::DTDGrammar'
      src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1346694159 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest10.log 2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest10.log 2019-05-04 08:19:07.351510993 -0400
      @@ -1 +1,9 @@
       Test Run Successfully
      +tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x7fa8bc00a118 which does not point to an object of type 'SchemaGrammar'
      +0x7fa8bc00a118: note: object is of type 'xercesc_3_2::DTDGrammar'
      + 00 00 00 00  b0 08 99 f6 a8 7f 00 00  70 0e 12 01 00 00 00 00  68 a1 00 bc a8 7f 00 00  00 00 00 00
      +              ^~~~~~~~~~~~~~~~~~~~~~~
      +              vptr for 'xercesc_3_2::DTDGrammar'
      +src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1346694159 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest10 (exit status: 1)

      FAIL: scripts/ThreadTest11
      ==========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=dom -n -s -f -v=always -quiet -threads 10 -time 20 personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest11.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest11.log"
      Result: pass
      ------
      obs=Test Run Successfully
      tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x7f5e2800a138 which does not point to an object of type 'SchemaGrammar'
      0x7f5e2800a138: note: object is of type 'xercesc_3_2::DTDGrammar'
       00 00 00 00  b0 98 91 3b 5e 7f 00 00  70 ce bd 00 00 00 00 00  88 a1 00 28 5e 7f 00 00  00 00 00 00
                    ^~~~~~~~~~~~~~~~~~~~~~~
                    vptr for 'xercesc_3_2::DTDGrammar'
      src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1437617636 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest11.log 2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest11.log 2019-05-04 08:19:28.408247795 -0400
      @@ -1 +1,9 @@
       Test Run Successfully
      +tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x7f5e2800a138 which does not point to an object of type 'SchemaGrammar'
      +0x7f5e2800a138: note: object is of type 'xercesc_3_2::DTDGrammar'
      + 00 00 00 00  b0 98 91 3b 5e 7f 00 00  70 ce bd 00 00 00 00 00  88 a1 00 28 5e 7f 00 00  00 00 00 00
      +              ^~~~~~~~~~~~~~~~~~~~~~~
      +              vptr for 'xercesc_3_2::DTDGrammar'
      +src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1437617636 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest11 (exit status: 1)

      FAIL: scripts/ThreadTest12
      ==========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax2 -n -s -f -v=always -quiet -threads 10 -time 20 personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest12.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest12.log"
      Result: pass
      ------
      obs=Test Run Successfully
      tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x7f6d4c00a1c8 which does not point to an object of type 'SchemaGrammar'
      0x7f6d4c00a1c8: note: object is of type 'xercesc_3_2::DTDGrammar'
       00 00 00 00  b0 c8 4a 76 6d 7f 00 00  70 1e c5 00 00 00 00 00  18 a2 00 4c 6d 7f 00 00  00 00 00 00
                    ^~~~~~~~~~~~~~~~~~~~~~~
                    vptr for 'xercesc_3_2::DTDGrammar'
      src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1346694165 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest12.log 2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest12.log 2019-05-04 08:19:49.466984591 -0400
      @@ -1 +1,9 @@
       Test Run Successfully
      +tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x7f6d4c00a1c8 which does not point to an object of type 'SchemaGrammar'
      +0x7f6d4c00a1c8: note: object is of type 'xercesc_3_2::DTDGrammar'
      + 00 00 00 00  b0 c8 4a 76 6d 7f 00 00  70 1e c5 00 00 00 00 00  18 a2 00 4c 6d 7f 00 00  00 00 00 00
      +              ^~~~~~~~~~~~~~~~~~~~~~~
      +              vptr for 'xercesc_3_2::DTDGrammar'
      +src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1346694165 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest12 (exit status: 1)

      FAIL: scripts/ThreadTest13
      ==========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax -gc -n -s -f -v=always -quiet -threads 10 -time 20 personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest13.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest13.log"
      Result: pass
      ------
      obs=Test Run Successfully
      tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1346694159 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest13.log 2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest13.log 2019-05-04 08:20:10.567720850 -0400
      @@ -1 +1,4 @@
       Test Run Successfully
      +tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1346694159 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest13 (exit status: 1)

      FAIL: scripts/ThreadTest14
      ==========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=dom -gc -n -s -f -v=always -quiet -threads 10 -time 20 personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest14.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest14.log"
      Result: pass
      ------
      obs=Test Run Successfully
      tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1437617636 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest14.log 2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest14.log 2019-05-04 08:20:31.627457620 -0400
      @@ -1 +1,4 @@
       Test Run Successfully
      +tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1437617636 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest14 (exit status: 1)

      FAIL: scripts/ThreadTest15
      ==========================

      Running /home/build/xerces-c-3.2.2/tests/ThreadTest -parser=sax2 -gc -n -s -f -v=always -quiet -threads 10 -time 20 personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest15.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/ThreadTest15.log"
      Result: pass
      ------
      obs=Test Run Successfully
      tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1346694165 * 5 cannot be represented in type 'int'
      ------
      exp=Test Run Successfully
      ------
      — ./expected/ThreadTest15.log 2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/ThreadTest15.log 2019-05-04 08:20:52.688194361 -0400
      @@ -1 +1,4 @@
       Test Run Successfully
      +tack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +src/ThreadTest/ThreadTest.cpp:640:34: runtime error: signed integer overflow: 1346694165 * 5 cannot be represented in type 'int'
      FAIL scripts/ThreadTest15 (exit status: 1)

      XFAIL: scripts/MemHandlerTest
      =============================

      Running /home/build/xerces-c-3.2.2/tests/MemHandlerTest  > "/home/build/xerces-c-3.2.2/tests/observed/MemHandlerTest.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/MemHandlerTest.log"
      Result: fail
      ------
      obs=
      Usage:
          MemHandlerTest [options] <XML file | List file>

      This program invokes the XercesDOMParser, DOMLSParser, SAXParser ,
      and the SAX2XMLReader, and ensures that MemoryManagers set on these
      domBuilders are called to delete just as many bytes as they allocate.
      This is done for each XML file, and each file is processed
      as many times as indicated.
      Options:
          -l          Indicate the input file is a List File that has a list of xml files.
                      Default to off (Input file is an XML file).
          -v=xxx      Validation scheme [always | never | auto*].
          -n          Enable namespace processing. Defaults to off.
          -s          Enable schema processing. Defaults to off.
          -f          Enable full schema constraint checking. Defaults to off.
          -r=n        Run file through domBuilders n times.
          -?          Show this help.

        * = Default if not provided explicitly.
      ------
      exp=
      Usage:
          MemHandlerTest [options] <XML file | List file>

      This program invokes the XercesDOMParser, DOMLSParser, SAXParser ,
      and the SAX2XMLReader, and ensures that MemoryManagers set on these
      domBuilders are called to delete just as many bytes as they allocate.
      This is done for each XML file, and each file is processed
      as many times as indicated.
      Options:
          -l          Indicate the input file is a List File that has a list of xml files.
                      Default to off (Input file is an XML file).
          -v=xxx      Validation scheme [always | never | auto*].
          -n          Enable namespace processing. Defaults to off.
          -s          Enable schema processing. Defaults to off.
          -f          Enable full schema constraint checking. Defaults to off.
          -r=n        Run file through domBuilders n times.
          -?          Show this help.

        * = Default if not provided explicitly.
      ------
      XFAIL scripts/MemHandlerTest (exit status: 1)

      FAIL: scripts/MemHandlerTest2
      =============================

      Running /home/build/xerces-c-3.2.2/tests/MemHandlerTest -v=always -n -r=2 -s -f personal-schema.xml > "/home/build/xerces-c-3.2.2/tests/observed/MemHandlerTest2.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/MemHandlerTest2.log"
      Result: pass
      ------
      obs=At destruction, domBuilderMemMonitor has 0 bytes.
      At destruction, sax2MemMonitor has 0 bytes.
      At destruction, sax1MemMonitor has 0 bytes.
      At destruction, staticMemMonitor has 0 bytes.
       error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x0000014b2068 which does not point to an object of type 'SchemaGrammar'
      0x0000014b2068: note: object is of type 'xercesc_3_2::DTDGrammar'
       00 00 00 00  b0 58 f8 d2 31 7f 00 00  90 e8 48 01 00 00 00 00  b8 20 4b 01 00 00 00 00  00 00 00 00
                    ^~~~~~~~~~~~~~~~~~~~~~~
                    vptr for 'xercesc_3_2::DTDGrammar'
      ------
      exp=At destruction, domBuilderMemMonitor has 0 bytes.
      At destruction, sax2MemMonitor has 0 bytes.
      At destruction, sax1MemMonitor has 0 bytes.
      At destruction, staticMemMonitor has 0 bytes.
      ------
      — ./expected/MemHandlerTest2.log      2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/MemHandlerTest2.log       2019-05-04 08:20:52.914191545 -0400
      @@ -2,3 +2,9 @@
       At destruction, sax2MemMonitor has 0 bytes.
       At destruction, sax1MemMonitor has 0 bytes.
       At destruction, staticMemMonitor has 0 bytes.
      + error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x0000014b2068 which does not point to an object of type 'SchemaGrammar'
      +0x0000014b2068: note: object is of type 'xercesc_3_2::DTDGrammar'
      + 00 00 00 00  b0 58 f8 d2 31 7f 00 00  90 e8 48 01 00 00 00 00  b8 20 4b 01 00 00 00 00  00 00 00 00
      +              ^~~~~~~~~~~~~~~~~~~~~~~
      +              vptr for 'xercesc_3_2::DTDGrammar'
      FAIL scripts/MemHandlerTest2 (exit status: 1)

      FAIL: scripts/DOMTypeInfoTest
      =============================

      Running /home/build/xerces-c-3.2.2/tests/DOMTypeInfoTest  > "/home/build/xerces-c-3.2.2/tests/observed/DOMTypeInfoTest.log" 2> "/home/build/xerces-c-3.2.2/tests/observed/DOMTypeInfoTest.log"
      Result: pass
      ------
      obs=xercesc/internal/ElemStack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x000001cd5388 which does not point to an object of type 'SchemaGrammar'
      0x000001cd5388: note: object is of type 'xercesc_3_2::DTDGrammar'
       00 00 00 00  b0 b8 00 8a 9d 7f 00 00  70 be c5 01 00 00 00 00  d8 53 cd 01 00 00 00 00  00 00 00 00
                    ^~~~~~~~~~~~~~~~~~~~~~~
                    vptr for 'xercesc_3_2::DTDGrammar'
      Test Run Successfully
      ------
      exp=Test Run Successfully
      ------
      — ./expected/DOMTypeInfoTest.log      2018-02-14 20:22:42.000000000 -0500
      +++ /home/build/xerces-c-3.2.2/tests/observed/DOMTypeInfoTest.log       2019-05-04 08:20:52.980190722 -0400
      @@ -1 +1,8 @@
      +xercesc/internal/ElemStack.cpp:496:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/NamespaceScope.cpp:274:11: runtime error: null pointer passed as argument 2, which is declared to never be null
      +xercesc/validators/schema/SchemaValidator.cpp:773:36: runtime error: member call on address 0x000001cd5388 which does not point to an object of type 'SchemaGrammar'
      +0x000001cd5388: note: object is of type 'xercesc_3_2::DTDGrammar'
      + 00 00 00 00  b0 b8 00 8a 9d 7f 00 00  70 be c5 01 00 00 00 00  d8 53 cd 01 00 00 00 00  00 00 00 00
      +              ^~~~~~~~~~~~~~~~~~~~~~~
      +              vptr for 'xercesc_3_2::DTDGrammar'
       Test Run Successfully
      FAIL scripts/DOMTypeInfoTest (exit status: 1)

      skylake:xerces-c-3.2.2$

      ```

      Attachments

        1. test-suite.log.zip
          4 kB
          Jeffrey Walton

        Activity

          People

            Unassigned Unassigned
            noloader Jeffrey Walton
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: