             i++
         else if arg == "-n"
             negation = args[i + 1].match(/^((?:\*\/)?)([^*]+)(\*?)$/)
-            assert(negation != null)
+            assert(negation != null, "Invalid negation pattern.")
             negations.push(negation)
             i += 2
         else if arg in ["--version", "-v"]

        writeOutput()
catch ex
    console.error("Error: " + ex.message)
    process.exit(1)

    negations.forEach (m) ->
        if m[1] == ""
            if m[3] == ""
                assert(relativeFilePath != m[2], "NV: Negation violated.")
            else
                assert(not relativeFilePath.startsWith(m[2]), "NV: Negation violated.")
        else
            if m[3] == ""
                assert(not (
                    relativeFilePath.endsWith("/" + m[2]) or
                    relativeFilePath == m[2]
                ), "NV: Negation violated.")
            else
                assert(not (
                    relativeFilePath.includes("/" + m[2]) or
                    relativeFilePath.startsWith(m[2])
                ), "NV: Negation violated.")
    rawCodeType = path.extname(filePath).substr(1) # strip the leading "."
    rawCode = fs.readFileSync(filePath, {encoding: "utf8"})
    baseDirectory = path.dirname(filePath)
