• DocumentCode
    2223751
  • Title

    TUAnalyzer - analyzing templates in C++ code

  • Author

    Gschwind, Thomas ; Pinzger, Martin ; Gall, Harald

  • fYear
    2004
  • fDate
    8-12 Nov. 2004
  • Firstpage
    48
  • Lastpage
    57
  • Abstract
    We present TUAnalyzer, a novel tool that extracts the template structure of C++ programs on the basis of the GNU C/C++ compiler´s internal representation of a C/C++ translation unit. In comparison to other such tools, our tool is capable of supporting the extraction of function invocations that depend on the particular instantiation of C++ templates and to relate them to their particular template instantiation. TUAnalyzer produces RSF format output that can be easily fed into existing visualization and analysis tools such as Rigi or Graphviz. We motivate why this kind of template analysis information is essential to understand real-world legacy C++ applications. We present how our tool extracts this kind of information to allow others to build on our results and further use the template information. The applicability of our tool has been validated on real code as proof of concept. The results obtained with TUAnalyzer enable us and other approaches and tools to perform detailed studies of large (open source) C/C++ projects in the near future.
  • Keywords
    C++ language; program compilers; program diagnostics; program visualisation; C++ applications; C++ code template analysis; C++ programs; C/C++ translation unit; GNU C/C++ compiler; Graphviz; RSF format output; Rigi; TUAnalyzer; function invocations extraction; program analysis tools; program visualization tools; template information; template instantiation; template structure; templates analysis; Computer languages; Data mining; Feeds; Information analysis; Laboratories; Program processors; Reverse engineering; Software systems; Visualization; XML;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Reverse Engineering, 2004. Proceedings. 11th Working Conference on
  • ISSN
    1095-1350
  • Print_ISBN
    0-7695-2243-2
  • Type

    conf

  • DOI
    10.1109/WCRE.2004.40
  • Filename
    1374305