def full_command(filename)
      include_args = include_path.map { |path| "-I#{path}" }
      macro_args = macros.sort.map { |key, val| "-D#{key}" + (val ? "=#{val}" : '') }
      [*Preprocessor.command.shellsplit, *include_args, *macro_args, filename].shelljoin
    end
def full_command(filename)
      include_args = include_path.map { |path| "-I#{path}" }
      macro_args = macros.sort.map { |key, val| "-D#{key}" + (val ? "=#{val}" : '') }
      [*Preprocessor.command.shellsplit, *include_args, *macro_args, filename].shelljoin
    end
-------------------------------------------------------