microsoft / microsoft/vscode-cpptools

[Win10] After __debugbreak(), the debugger no longer works correctly

Ouverte
#758 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

debugger
Langage dominant
TypeScript
Étoiles
6.2k
Forks
1.7k
Merge moyen
14 h 46 min
PR mergées (30 j)
61

Description

Environment:

  • tool-chain: C++ tool-chain that comes with Visual Studio 2015.
  • VSCode 1.12.2
  • Windows 10.

Steps to reproduce:

  1. Add __debugBreak somewhere in your C++ code.
  2. Start a debugging session until the execution stops in the __debugBreak() call.
  3. From this moment on, try to go step-by-step in the code (using F10)

Expected result:
The debugger should step by step into the code, and the execution cursor (yellow arrow at the left side of the editor pane while in the Debugger view) should show the currently executed line.

Actual result:
The debugger goes step by step into the code, but the execution cursor disappears after the first F10 key-press. After this point you don't know where the execution cursor is.

Recovery:
The only way to recover from this is to look into the call-stack view, select the current thread, and double click the function at the top of the call-stack. After this action, the execution cursor reappears, but only until you press F10 again, when it disappears.

Mention:
This only happens after __debugBreak(). For a normal breakpoint added with F9 the debugger works correctly.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Reproduire le problème avec l’environnement indiqué composé de Visual Studio 2015, VS Code 1.12.2 et Windows 10, à l’aide d’un programme C++ contenant __debugBreak(), puis comparer l’exécution pas à pas avec un point d’arrêt F9 normal. Suivre les mises à jour du thread actuel et de l’emplacement d’exécution du débogueur après F10 ; le travail est terminé lorsque le curseur d’exécution reste visible et précis après chaque étape.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
cpp, typescript, vscode
Domaine
devtools
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.