'use strict';
var path = require('path');
var async = require('async');
var chalk = require('chalk');
var spawn = require('cross-spawn');
var grunt = require('grunt');

module.exports = function (files, options, cb) {
  var failCount = 0;

  var filesToCheck = files.filter(function (src) {
    return path.basename(src)[0] !== '_' && grunt.file.exists(src);
  });

  async.eachLimit(filesToCheck, options.concurrencyCount, function (src, next) {
    var bin;
    var args;

    if (options.bundleExec) {
      bin = 'bundle';
      args = ['exec', 'sass', '--check', src];
    } else {
      bin = 'sass';
      args = ['--check', src];
    }

    grunt.verbose.writeln('Command: ' + bin + ' ' + args.join(' '));

    grunt.verbose.writeln('Checking file ' + chalk.cyan(src) + ' syntax.');
    spawn(bin, args, {stdio: 'inherit'})
      .on('error', grunt.warn)
      .on('close', function (code) {
        if (code > 0) {
          failCount++;
          grunt.log.error('Checking file ' + chalk.cyan(src) + ' - ' + chalk.red('failed') + '.');
        } else {
          grunt.verbose.ok('Checking file ' + chalk.cyan(src) + ' - ' + chalk.green('passed') + '.');
        }

        next();
      });
  }, function () {
    if (failCount > 0) {
      grunt.warn('Sass check failed for ' + failCount + ' files.');
    } else {
      grunt.log.ok('All ' + chalk.cyan(filesToCheck.length) + ' files passed.');
    }

    cb();
  });
};

@@ -31,24 +31,54 @@
 re('path');%0A
+var dargs = require('dargs');%0A
 var async = 
@@ -498,16 +498,117 @@
  args;%0A%0A
+    var passedArgs = dargs(options, %7B%0A      includes: %5B'loadPath'%5D,%0A      ignoreFalse: true%0A    %7D);%0A%0A
     if (
@@ -765,24 +765,61 @@
 rc%5D;%0A    %7D%0A%0A
+    args = args.concat(passedArgs);%0A%0A
     grunt.ve

allow specifying loadPath in syntax checking