C Smart Differencer

The C Smart Differencer tool compares two C source files to determine the changes made from one to determine the other. It is a member of SD's family of SmartDifferencer tools. An example of the C Smart Differencer's results can be seen here.

C Smart Differencer Features

  • Compares two C files and produces list of explicit changes
  • Handles C in a variety of dialects: ANSI89, GCC3/4, MS VisualC6, and MS Visual Studio 2005.
  • Understands C language syntax precisely:
    • All keywords, operators, and identifiers
    • Integer and floating constants as their numeric value
    • Characters, strings and corresponding escape sequences
    • Whitespace (ignored)
    • /* ... */ and //... comments (ignored)
  • Output in terms of language syntax elements: identifiers, expressions, statements, blocks, and functions
  • Detects consistent renaming within an arbitrary block of code
  • Generates deltas in two forms:
    • Human readable format, showing location of deltas type (language nonterminals), locations (line,column) and before and after text
    • Summary form, showing just succinct summary of delta types and locations
  • Can process batches of files, specified either manually or through a C-based file-selector GUI.
  • Input encoding in ASCII, European ASCII, or UNICODE (UTF-8 or UTF-16)
  • Output encoding in ASCII, European ASCII, or UNICODE (UTF-8 or UTF-16)

Note: The SmartDifferencer operates on only well-structured C source files. C source files that contain preprocessor conditionals or macro calls in unusual places will not be processed by the SmartDifferencer tool

Download an evaluation copy

For more information: [email protected]    Follow us at Twitter: @SemanticDesigns


C Smart Differencer