cppcheck/addons/test
Tim Blume b70e1df26c
fix crash while checking misra_9 when initializing a union with {{0,0}} (#5250)
This fixes a crash with following error:
```
Traceback (most recent call last):
  File "/usr/local/share/Cppcheck/addons/runaddon.py", line 8, in <module>
    runpy.run_path(addon, run_name='__main__')
  File "<frozen runpy>", line 291, in run_path
  File "<frozen runpy>", line 98, in _run_module_code
  File "<frozen runpy>", line 88, in _run_code
  File "/usr/local/share/Cppcheck/addons/misra.py", line 4737, in <module>
    main()
  File "/usr/local/share/Cppcheck/addons/misra.py", line 4679, in main
    checker.parseDump(item)
  File "/usr/local/share/Cppcheck/addons/misra.py", line 4335, in parseDump
    self.executeCheck(902, self.misra_9_2, cfg)
  File "/usr/local/share/Cppcheck/addons/misra.py", line 4246, in executeCheck
    check_function(*args)
  File "/usr/local/share/Cppcheck/addons/misra.py", line 2104, in misra_9_2
    misra_9.misra_9_x(self, data, 902)
  File "/usr/local/share/Cppcheck/addons/misra_9.py", line 414, in misra_9_x
    parser.parseInitializer(ed, eq.astOperand2)
  File "/usr/local/share/Cppcheck/addons/misra_9.py", line 320, in parseInitializer
    child = self.root.getChildByValueElement(self.ed)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'getChildByValueElement'
```

A minimal example and testcase is added. 
The extra check for nextChild seems to fix it, however i did not read
the whole codebase, so maybe this creates other issues.

---------

Co-authored-by: Tim Blume <tbl@sevenstax-intern.de>
2023-08-31 09:38:03 +02:00
..
misra fix crash while checking misra_9 when initializing a union with {{0,0}} (#5250) 2023-08-31 09:38:03 +02:00
path1 Fix per file excludes (#1437) 2018-10-18 09:17:57 +02:00
threadsafety The threadsafety.py addon now flags MT-Unsafe symbols and functions. (#5086) 2023-06-08 14:46:09 +02:00
y2038 y2038 addon: Fix that check can never return True, add tests (#2417) 2019-12-03 18:49:11 +01:00
__init__.py misra.py: Fix up and improve load rules parser. (#1895) 2019-06-17 21:17:29 +02:00
misc-test.cpp Fixed #9971 (missing system includes in addon/test test files) 2020-11-15 12:46:28 +01:00
naming_test.c added .gitattributes and normalized files (#4668) 2022-12-30 21:33:45 +01:00
naming_test.cpp added .gitattributes and normalized files (#4668) 2022-12-30 21:33:45 +01:00
namingng_test.c Fixed #9971 (missing system includes in addon/test test files) 2020-11-15 12:46:28 +01:00
test-misra.py fix crash while checking misra_9 when initializing a union with {{0,0}} (#5250) 2023-08-31 09:38:03 +02:00
test-y2038.py donate-cpu: greatly improved `LibraryIncludes.get_libraries()` performance / some optimizations and cleanups (#4273) 2022-07-13 21:09:29 +02:00
util.py misra; implemented rule 20.8 2021-07-22 08:46:28 +02:00