Yunqa • The Delphi Inspiration

Delphi Components and Applications

User Tools

Site Tools


Table of Contents

DIPP: Version History

DIPP stands for “Delphi Inspiration Pascal Preprocessor”. It is a simple console application working as a swiss army knife for Pascal source code manipulation in batch processing.

DIPP 1.10

  • Compiler updates up to Delphi 10.3 Rio.
  • New Unicode support.
  • New comment removal specifiers follwing the -C option:
    • -Cd: Removes comments, but keeps comments up to first identifier (usually unit, program, library, etc., whatever comes first).
    • -Ct: Removes comments, but keeps comments in the interface section.
  • New {$R …} resource directive manipulation:
  • Partly restructured the command line syntax into logical groups of options where it seemed appropriate to accomodate added functionalty (see above). Check the new syntax and adjust your settings if necessary.
  • Added basic handling of the {$IF Some Expression} family of compiler directives which were introduced in Delphi 6. In previous versions of DIPP, nested {$ELSE} could interfere with those from the {$DEFINE …} familiy of compiler directives. DIPP still does not evaluate compiler directive expressions but passes them to output unchanged.
  • Added string parsing to the {$IF Some Expression} family of compiler directives to avoid parsing errors when literal strings contain '}' or '*)'.
  • Improved the searching of include files to follow Delphi more closely.
  • Improved handling of (malformed?) multiple {$ELSE} compiler directives. Multiple {$ELSE} directives are not covered by the Delphi Help, but Delphi seems to ignore all {$ELSE} branches after the first. DIPP does so as well.
  • Improved the handling of {$IFOPT} conditional directives. Conditional options like {$A+} etc. are now taken into account for conditional processing.
  • Improved output layout preservation.
  • Fix: No longer insert 2nd level nested include files if 1st level include file is not inserted but read only.
  • Fixed a bug related to parsing of inline assembler octal numbers and hexadecimal numbers not starting with '$'.
  • Corrected the parsing of inline assembler local labels starting with '@' and containing digits followed by letters.

DIPP 1.2

  • Added recognition of recursive include files to prevent indefinite loops.
  • Added '.pas' default extension for include files with no extension specified.
  • {$IFNDEF …} compiler directive was not negated. Fixed.

DIPP 1.1

  • Added -$ remove directives option.
  • Added -n interface only option.
  • Added -o overwrite existing file option. Changed the default not to overwrite an existing file.
  • Added -p Pascal compiler option.
  • Added -t time stamp option.
  • Added processing of compiler switches.
  • Added Help file.
  • Bug fixes.

DIPP 1.0

Initial, limited release.

apps/dipp/history.txt · Last modified: 2018/12/27 22:12 by