Bit late to the punch, however you can use the shortcut Ctrl + Shift + M, which will open the problems pane.

Answer from Danny Elliott on Stack Overflow
🌐
Microsoft Learn
learn.microsoft.com › en-us › visualstudio › ide › error-list-window
How to view errors and warnings - Visual Studio (Windows) | Microsoft Learn
September 10, 2025 - Press F1 to open the documentation page for the selected error code (if available). The page opens in your default browser or Help Viewer. In Visual Studio 17.12 and later, copying an error from the Error List using Ctrl+C also copies the ...
🌐
Microsoft Learn
learn.microsoft.com › en-us › visualstudio › ide › find-and-fix-code-errors
Fix Program Errors and Improve Code - Visual Studio (Windows) | Microsoft Learn
January 6, 2026 - Press Ctrl+G to quickly jump to the line number where the error occurred. Visual Studio identifies this error with a red "squiggle" underscore. Hover over it for more details. Make the fix and it goes away, although you might introduce a new ...
Discussions

visual studio - How to find out "Problems in this file" errors in VS Code? - Stack Overflow
In my project, I have a file that has turned red and it says it has 8 errors. How do I find these errors? I'm attaching my screenshots below: More on stackoverflow.com
🌐 stackoverflow.com
How to make Visual Studio Code check entire project for errors?
I'm using VS Code for TypeScript/JavaScript development. When I open a file it will check that file for errors. The problem is if I'm refactoring (like I move some shared code to a new location or More on stackoverflow.com
🌐 stackoverflow.com
c# - Visual Studio does not show errors in the code anymore - Stack Overflow
Try deleting the bin folder in ... the code to be recompiled. Just make sure to save any .dll files in the bin folder that may have been added manually. You can see these in References in Solution Explorer, and add them back after. Visual Studio will re-create the bin folder, don't worry! ... I had the same problem in VS 2022 Preview version. The solution was to check: Tools -> Options -> Text Editor -> General -> Show error ... More on stackoverflow.com
🌐 stackoverflow.com
c# - How can I see the compile error-code number in Visual Studio Error List view? - Stack Overflow
In previous versions of Visual Studio I remember I saw the error code/number in the Error List View. I may have that confused with C++ though. To see the actual compile error number I need to save and compile the project and then check the Output-window. More on stackoverflow.com
🌐 stackoverflow.com
🌐
DEV Community
dev.to › pexlkeys › mastering-error-identification-how-to-show-errors-in-visual-studio-code-2oe5
Mastering Error Identification: How to Show Errors in Visual Studio Code - DEV Community
February 21, 2024 - Real-Time Syntax Highlighting: One of the most immediate ways Visual Studio Code helps developers identify errors is through real-time syntax highlighting. As you type or edit your code, Visual Studio Code analyzes it on the fly and highlights syntax errors, such as missing semicolons, parentheses, or curly braces, with a red underline.
🌐
GitHub
github.com › MicrosoftDocs › visualstudio-docs › blob › main › docs › ide › find-and-fix-code-errors.md
visualstudio-docs/docs/ide/find-and-fix-code-errors.md at main · MicrosoftDocs/visualstudio-docs
January 6, 2026 - Press Ctrl+G to quickly jump to the line number where the error occurred. Visual Studio identifies this error with a red "squiggle" underscore. Hover over it for more details. Make the fix and it goes away, although you might introduce a new ...
Author   MicrosoftDocs
🌐
Read the Docs
vscode-docs.readthedocs.io › en › stable › supporting › errors
Errors - vscode-docs
Some errors that happen in Visual Studio Code can be worked around or resolved by you. This topic describes several of the most common error conditions, and what you can do to resolve them. If these steps don't help you, you probably hit a bug. You can check our reported issues list to see ...
Find elsewhere
🌐
Reddit
reddit.com › r/vscode › how do i get vs code to show errors like this?
r/vscode on Reddit: How do i get VS Code to show errors like this?
December 25, 2022 - Hi Angra, that’s not my code else I wouldn’t even ask the name of the other extension neither :) hope someone will answer you ... Oh right, makes sense considering the question you asked :) But thanks anyway! ... Try the Error Lens extension.
🌐
Microsoft Learn
learn.microsoft.com › en-us › visualstudio › extensibility › error-codes
Error Codes - Visual Studio (Windows) | Microsoft Learn
June 13, 2025 - All errors are negative, warnings or informational error codes are positive, and success is 0. IS_SCC_ERROR(rtn) (((rtn) < 0) ? TRUE : FALSE) IS_SCC_SUCCESS(rtn) (((rtn) == SCC_OK) ? TRUE : FALSE) IS_SCC_WARNING(rtn) (((rtn) > 0) ? TRUE : FALSE) All Source Control Plug-in API functions (except the SccAdd, SccCheckin, and SccDiff) are expected to succeed when the local files that are passed as arguments do not exist in the working folder.
🌐
Visual Studio Code
code.visualstudio.com › docs › supporting › troubleshoot-terminal-launch
Troubleshoot Terminal launch failures
November 3, 2021 - For example, if you are having trouble with WSL, you might find a workaround searching for your error code in the open or resolved issues at https://github.com/microsoft/WSL/issues. When you upgrade to Windows 10, some apps might have compatibility mode turned on automatically. If compatibility mode is enabled for VS Code, the terminal breaks because it does some low-level things to enable the emulation it uses. You can check and disable compatibility mode by right-clicking on the VS Code executable, select Properties, and then uncheck the Run this program in compatibility mode option in the Compatibility tab.
🌐
Quora
quora.com › How-can-I-check-for-C-errors-in-Visual-Studio-Code
How to check for C++ errors in Visual Studio Code - Quora
Answer: Compile time errors are shown on the output tab. For runtime errors you trace your program using f10 to step thru the code line by line. You can set breakpoints using f9 to run the code up to a certain point then step through.
🌐
Microsoft Learn
learn.microsoft.com › en-us › answers › questions › 2115648 › in-visual-studio-2022-in-error-list-window-errors
In Visual Studio 2022 in Error list window errors are not displaying - Microsoft Q&A
Set “Show:” to “Build + IntelliSense” to ensure all types of errors are displayed. Sometimes simply restarting Visual Studio can clear up minor UI glitches. If the issue persists, try resetting all Visual Studio settings to default: ...
🌐
Quora
quora.com › How-do-I-solve-a-Visual-Studio-code-error
How to solve a Visual Studio code error - Quora
Answer: You have to follow those simple steps: 1. Read the error message, including the text part of it. Error messages can give you some information on where the error is. 2. Sometimes the error message will also point out to where the error ...
Top answer
1 of 7
73

UPDATE 2019

ES-Lint has introduced a new task in VS Code. You have to enable it in the workspace setings.

"eslint.lintTask.enable": true

Just go to terminal menu and select run task, then choose

eslint: lint whole folder

You can also auto-fix most problems by running the following command in the terminal:

.\node_modules\.bin\eslint.cmd --fix .

Reference: https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint

While we still await the problem scanner in VS Code, this is a good enough alternative if you use eslint.


OLD ANSWER

Here is how you can see all problems in less than 10 seconds.

You use a little trick.

Open replace all in files Ctrl + Shift + H.

Replace ; with ;

Hit replace all. That's it. Now, check Problems.

The assumption here is that all files have at least one semicolon. For bigger projects, if you get a warning asking you to refine your search, just enter something that is common in all files but is not present a lot.

2 of 7
29

Very important: Make sure to check the Super cool! But i don't use the eslint section. What I provide is a global solution! By setting up tasks and is explained in detail.

Note: If you feel the document is bloated make sure to skim and get to the titles that catch you! Even though every section may matter. (TLDS (TOO LONG DO SKIM)).

Javascript and Eslint

To add upon @Ajay Raghav answer!

This section show how to run the task on question! And the output of the execution!

For javascript, Vscode Eslint extension provide such a feature! Which if you are using Eslint (and not jshint) then you are having it already installed!

Usage as described on @Ajay Raghav answer! Are explained on the Eslint extension page!

https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint

eslint.lintTask.enable: whether the extension contributes a lint task to lint a whole workspace folder.

eslint.lintTask.options: Command line options applied when running the task for linting the whole workspace (https://eslint.org/docs/user-guide/command-line-interface). An example to point to a custom .eslintrc.json file and a custom .eslintignore is:

{
  "eslint.lintTask.options": "-c C:/mydirectory/.eslintrc.json --ignore-path C:/mydirectory/.eslintignore ."
}

Using the extension with VS Code's task running

From the doc:

The extension is linting an individual file only on typing. If you want to lint the whole workspace set eslint.lintTask.enable to true and the extension will also contribute the eslint: lint whole folder task. There is no need anymore to define a custom task in tasks.json.

If you are not familiar with task! Here how you use the above!

  • Go to Command pallet (CTRL + P + SHIFT)
  • > tasks run
  • Hit Tasks: run Task
  • You'll find eslint: lint whole folder
  • Hit and that's it

If eslint have no configuration setup! You'll get the following error!

If as such, Run eslint --init

And follow the interactive terminal!

Note if you don't have eslint command avaialble globally!

Intall it globally by running npm i -g eslint!

Result of the run

First the task run on the terminal!

You can see a detailed report! You can use the click link on terminal feature (CTRL + CLICK)! To directly open the file in question!

You can see too that the problems will automatically be listed in the problems tab! Which is cool!

Super cool! But i don't use eslint

Typescript and TSLINT

If you are a typescript user and you use TSLINT! Then we need to go to the global way! And that's by creating a task! Just like eslint did! (problemMatcher: $tsc) [you'll get to know what that is just a bit bellow].

(Make sure to check TSLINT is deprecated title)!

I use a complete other language (c#, java, c++, php, python ...)

Yup yup! We need a global way! And the global way is through creating a task!

Creating a task (The global way)

(Support all languages (to be configured for each))

We need to create a task!

The vscode documentation explains it pretty awesomely and in details!

https://code.visualstudio.com/docs/editor/tasks

Check the documentation!

Now in short! I would resume what a task is in:

A vscode tool and feature! That allow us to setup tasks based on tools and scripts and run them within vscode! Analyse there output within vscode! And activating and profiting from other vscode features! That includes Click link navigation on terminal! And problems listing on problem tab! Auto fixing and suggestions! Integration with the debugging tool! ...etc! It depends on the task type!

A task get set through a setting file (task.json)! For a workspace or the whole user! (Some tasks types need to be set for only a workspace! They depends on the variables of a workspace)!

Also the task feature contains a lot of options and features! And is a big piece! For more just check the documentation!

Back to our problem!

We want linting of a whole project! And errors detection!

We need to have the errors listed on the problems tab! And preferably too with fixes suggestions!

All this gonna be done through a task.

Setting up the task! And core elements

Through vscode task features and integration! We need to configure it to allow good output! And integration with the problems tab!

The config will go as such:

{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [
    {
      "type": "npm",
      "script": "lint",
      "problemMatcher": ["$eslint-stylish"]
    }
  ]
}

(Here eslint through npm run lint)

The most important thing here to see! Is the type which determine the category and the task handling and launch setup! The script which define what get executed! And lastly and importantly problemMatcher!

For the whole tasks setting up! And options you can check the doc!

Here another example for typescript:

{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [
    {
      "type": "typescript",
      "tsconfig": "tsconfig.json",
      "problemMatcher": ["$tsc"],
      "group": {
        "kind": "build",
        "isDefault": true
      }
    }
  ]
}

TSLINT is deprecated

Yo ! You just shown how, a line above! Yea there is something important! We can see typescript problems through tsc compile process! Or Through TSLINT! TSLINT will support code style rules and so on! BUT mmmm TSLINT is deprecated! And ESLINT is taking on! And in simple words use Eslint! And so we can use Eslint for Typescript! And that can be more rich!

Check the link bellow from the official link:

https://code.visualstudio.com/api/advanced-topics/tslint-eslint-migration

And humor face: Don't be affraid to do this

Already did!

Should i migrate Tslint to eslint

Another reason would be: TSLint is a linter that can only be used for TypeScript, while ESLint supports both JavaScript and TypeScript.

Reason for the choice and deprecation is:

In the TypeScript 2019 Roadmap, the TypeScript core team explains that ESLint has a more performant architecture than TSLint and that they will only be focusing on ESLint when providing editor linting integration for TypeScript.

Check it here and how to setup .eslintrc.js without the migration tool!

or https://www.npmjs.com/package/@typescript-eslint/eslint-plugin

Which in short would be like:

module.exports = {
  "parser": "@typescript-eslint/parser", // set eslint parser
   "parserOptions": {
       "ecmaVersion": 12, // latest ecma script features
       "sourceType": "module" // Allows for the use of imports
   },
   "plugins": [
       "@typescript-eslint"
   ],
  extends: [
    "plugin:@typescript-eslint/recommended" // Uses the recommended rules from the @typescript-eslint/eslint-plugin
  ],
  rules: {
    // Place to specify ESLint rules. Can be used to overwrite rules specified from the extended configs
    // e.g. "@typescript-eslint/explicit-function-return-type": "off",
  }
};

And sure : npm install --save-dev eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin

Make sure to use eslint --ext .js,.ts when executing eslint! Since by default eslint will only search for .js files.

Make sure to use the code styles versions that support typescript like this one for airbnb:

https://www.npmjs.com/package/eslint-config-airbnb-typescript

(The next section is the most important)!

Processing task output with problem matchers

https://code.visualstudio.com/docs/editor/tasks#_processing-task-output-with-problem-matchers

VS Code can process the output from a task with a problem matcher. Problem matchers scan the task output text for known warning or error strings, and report these inline in the editor and in the Problems panel. VS Code ships with several problem matchers 'in-the-box':

  • TypeScript: $tsc assumes that file names in the output are relative to the opened folder.
  • TypeScript Watch: $tsc-watch matches problems reported from the tsc compiler when executed in watch mode.
  • JSHint: $jshint assumes that file names are reported as an absolute path.
  • JSHint Stylish: $jshint-stylish assumes that file names are reported as an absolute path.
  • ESLint Compact: $eslint-compact assumes that file names in the output are relative to the opened folder.
  • ESLint Stylish: $eslint-stylish assumes that file names in the output are relative to the opened folder.
  • Go: $go matches problems reported from the go compiler. Assumes that file names are relative to the opened folder.
  • CSharp and VB Compiler: $mscompile assumes that file names are reported as an absolute path.
  • Lessc compiler: $lessc assumes that file names are reported as absolute path.
  • Node Sass compiler: $node-sass assumes that file names are reported as an absolute path.

OK but you said JAVA, C/C++, PHP, Python ... => We need to write our own problemMatcher

C/C++ (GCC)

The c/c++ support in vscode is added through the official ms extension ms-vscode.cpptools

https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools

The extension provide $gcc problemMatcher!

A task will go as:

{
  "version": "2.0.0",
  "tasks": [
    {
      "type": "shell",
      "label": "g++ build all",
      "command": "/usr/bin/g++",
      "args": ["${workspaceFolder}/src/*.cpp", "-o", "${workspaceFolder}/build"],
      "options": {
        "cwd": "/usr/bin"
      },
      "problemMatcher": ["$gcc"],
      "group": {
        "kind": "build",
        "isDefault": true
      }
    }
  ]
}

Note that i just made the compilation to go for files in src (one level)

One can use cmake to build!

May like to check : https://code.visualstudio.com/docs/cpp/config-linux#_build-helloworldcpp

Defining a problem matcher

You can check the doc section bellow:

https://code.visualstudio.com/docs/editor/tasks#_defining-a-problem-matcher

An example for gcc was given for c/c++! A compilation outcome will be like:

helloWorld.c:5:3: warning: implicit declaration of function ‘prinft’

We set a matcher by the following

{
  // The problem is owned by the cpp language service.
  "owner": "cpp",
  // The file name for reported problems is relative to the opened folder.
  "fileLocation": ["relative", "${workspaceFolder}"],
  // The actual pattern to match problems in the output.
  "pattern": {
    // The regular expression. Example to match: helloWorld.c:5:3: warning: implicit declaration of function ‘printf’ [-Wimplicit-function-declaration]
    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
    // The first match group matches the file name which is relative.
    "file": 1,
    // The second match group matches the line on which the problem occurred.
    "line": 2,
    // The third match group matches the column at which the problem occurred.
    "column": 3,
    // The fourth match group matches the problem's severity. Can be ignored. Then all problems are captured as errors.
    "severity": 4,
    // The fifth match group matches the message.
    "message": 5
  }
}

Directly in the task config that can go as:

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "build",
      "command": "g++",
      "args": ["${workspaceFolder}/src/*.cpp", "-o", "${workspaceFolder}/build"],
      "problemMatcher": {
        "owner": "cpp",
        "fileLocation": ["relative", "${workspaceFolder}"],
        "pattern": {
          "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
          "file": 1,
          "line": 2,
          "column": 3,
          "severity": 4,
          "message": 5
        }
      }
    }
  ]
}

You can see how staight forward the setting is! You can check the doc link above for more details!

Defining multiple line problem matcher

https://code.visualstudio.com/docs/editor/tasks#_defining-a-multiline-problem-matcher

Some tools spread problems found in a source file over several lines, especially if stylish reporters are used. An example is ESLint; in stylish mode it produces output like this:

test.js
  1:0   error  Missing "use strict" statement                 strict
 1 problems (1 errors, 0 warnings)

I'll not go about the details check the doc! it explains it well (check the loop property too!

{
  "owner": "javascript",
  "fileLocation": ["relative", "${workspaceFolder}"],
  "pattern": [
    {
      "regexp": "^([^\\s].*)$",
      "file": 1
    },
    {
      "regexp": "^\\s+(\\d+):(\\d+)\\s+(error|warning|info)\\s+(.*)\\s\\s+(.*)$",
      "line": 1,
      "column": 2,
      "severity": 3,
      "message": 4,
      "code": 5,
      "loop": true
    }
  ]
}

Modifying an existing problem matcher

https://code.visualstudio.com/docs/editor/tasks#_modifying-an-existing-problem-matcher

Simply check the doc!

JAVA

oK now we know, how to make problems matchers! We didn't do java yet! So let's do that for it! (Wait i just googled and here someone that did it)

{
    // compiles all files in the folder of the currently opened file
    "taskName": "javac all",
    "args": ["$env:CLASSPATH += ';${fileDirname}'; javac ${fileDirname}\\*.java -Xlint"],
    "showOutput": "silent",
    "problemMatcher": {
        "owner": "java",
        "fileLocation": "absolute",
        "pattern": {
            "regexp": "^(.*):([0-9]+): (error|warning): (.*)$",
            "file": 1,
            "line": 2,
            "severity": 3,
            "message": 4
        }
    }
}

PHP

Here a php task too that use code sniff!

src (googling again): https://github.com/bmewburn/vscode-intelephense/issues/1102

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "PHP: CodeSniff Workspace",
      "type": "shell",
      "command": "${config:phpcs.executablePath}",
      "args": [
        "--standard=${config:phpcs.standard}",
        "--extensions=module,inc,install,php,theme,test,js,css",
        "--report=csv",
        "--basepath=${workspaceFolder}",
        "web/modules/custom"
      ],
      "options": {
        "cwd": "${workspaceFolder}"
      },
      "problemMatcher": {
        "owner": "php",
        "fileLocation": [
          "relative",
          "${workspaceFolder}"
        ],
        "pattern": {
          "regexp": "^\"(.*?)\",(\\d+),(\\d+),(error|warning),\"(.*)\",.*$",
          "file": 1,
          "line": 2,
          "column": 3,
          "severity": 4,
          "message": 5
        }
      }
    }
  ]
}

Problem matcher and auto fixing

Ok so how the problem matcher make the auto fixing suggestions? The answer is it doesn't! It can be clear! Or you may said at the first time you get to see the problem matcher, hey it may have a relation!

It isn't! The languages support or linters extensions are what provide such a feature! And that through using vscode Action api!

Check

https://code.visualstudio.com/api/references/vscode-api#CodeAction

https://code.visualstudio.com/api/references/vscode-api#CodeActionKind

https://code.visualstudio.com/api/references/vscode-api#CodeActionProvider%3CT%3E

So simply: The problemMatcher set how the output of a task run is parsed and outputed on the problems tab! And the languages support extension implement the auto fixes! Or linters! (Extensions) [I can make a play ground extension if i want]!

To note too that the yellow bulbe in the problems tab! Works and allow auto fixing! Because the problem matcher provide the line for the problem! That get mapped with the output of the extension fixing suggestions range! That get precised on the CodeActionProvider!

🌐
Stackoverflow
internal.stackoverflow.help › all collections › enterprise › api and integrations › vs code › explain errors with the visual studio code integration
Explain Errors with the Visual Studio Code Integration | Stack Overflow Internal Help Center
VSC underlines code errors with a wavy red line. When you hover your mouse over an underlined error, VSC displays a pop-up window. To use the Explain Error feature, click Quick Fix.
🌐
Reddit
reddit.com › r/csharp › why is my visual studio editor not showing errors?
r/csharp on Reddit: Why is my Visual Studio editor not showing errors?
April 26, 2023 - I had the same problem a few days ... installer fixed it for me ... Check that when you select the file in Solution Explorer and go to its Properties, Build Action is set to Compile....