microsoft / microsoft/vscode-cpptools
call hierarchy doesn't show thread creations using the function pointer
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- TypeScript
- Estrellas
- 6.2k
- Forks
- 1.7k
- Merge medio
- 14 h 46 min
- PR fusionados (30 d)
- 61
Descripción
Environment
- OS and Version: Windows_NT x64 10.0.19045
- VS Code Version: 1.94.0
- C/C++ Extension Version: 1.22.11
- If using SSH remote, specify OS of remote machine: Ubuntu 20.04.6 LTS
Bug Summary and Steps to Reproduce
Bug Summary:
When you look for call hierarchy of a function, it doesn't list the references where it is called as function pointer, for example thread creation. This is useful, else we have to figure out the rest of the hierarchy using search function.
Steps to reproduce:
- Go to '...' function definition or declaration
- Click on '....' right click and select call hierarchy
- Scroll down to '....'
- See error
Expected behavior:
Configuration and Logs
I couldn't find "c_cpp_properties.json" in command palette
C/C++: Log Diagnostics
Version: 1.22.11
Current Configuration:
{
"name": "Linux",
"includePath": [
"/path/to/folder**"
],
"defines": [],
"compilerPath": "/usr/bin/clang",
"cStandard": "c17",
"cppStandard": "c++14",
"intelliSenseMode": "linux-clang-x64",
"compilerPathInCppPropertiesJson": "/usr/bin/clang",
"intelliSenseModeIsExplicit": false,
"cStandardIsExplicit": false,
"cppStandardIsExplicit": false,
"mergeConfigurations": false,
"compilerPathIsExplicit": false,
"browse": {
"path": [
"/path/to/folder**",
"${workspaceFolder}"
],
"limitSymbolsToIncludedHeaders": true
}
}
Modified Settings:
{
"C_Cpp.dimInactiveRegions": false,
"C_Cpp.inactiveRegionOpacity": 1
}
Additional Tracked Settings:
{
"editorTabSize": 4,
"editorInsertSpaces": true,
"editorAutoClosingBrackets": "languageDefined",
"filesEncoding": "utf8",
"filesAssociations": {
"string": "cpp"
},
"filesExclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/CVS": true,
"**/.DS_Store": true,
"**/Thumbs.db": true
},
"filesAutoSaveAfterDelay": true,
"editorInlayHintsEnabled": true,
"editorParameterHintsEnabled": true,
"searchExclude": {
"**/node_modules": true,
"**/bower_components": true,
"**/*.code-search": true
},
"workbenchSettingsEditor": "ui"
}
cpptools version (native): 1.22.11.0
Current database path: /home/username/.cache/vscode-cpptools/72eeda4a81e2b8934c4f4a61f7642951/.browse.VC.db
Translation Unit Mappings:
[ /path/to/foldersrc/send_packets.c - source TU]:
/path/to/folderinclude/send_packets.h
[ /path/to/foldersrc/stun.c - source TU]:
/path/to/folderinclude/stun.h
Translation Unit Configurations:
[ /path/to/foldersrc/send_packets.c ]
Process ID: 2784273
Memory Usage: 48 MB
Compiler Path: /usr/bin/clang
Includes:
/path/to/folderinclude
System Includes:
/usr/local/include
/usr/lib/llvm-10/lib/clang/10.0.0/include
/usr/include/x86_64-linux-gnu
/usr/include
Standard Version: c17
IntelliSense Mode: linux-clang-x64
Other Flags:
--clang
--clang_version=100000
[ /path/to/foldersrc/stun.c ]
Process ID: 2785321
Memory Usage: 39 MB
Compiler Path: /usr/bin/clang
Includes:
/path/to/folderinclude
System Includes:
/usr/local/include
/usr/lib/llvm-10/lib/clang/10.0.0/include
/usr/include/x86_64-linux-gnu
/usr/include
Standard Version: c17
IntelliSense Mode: linux-clang-x64
Other Flags:
--clang
--clang_version=100000
Total Memory Usage: 87 MB
------- Workspace parsing diagnostics -------
Number of files discovered (not excluded): 6421
Number of files parsed: 983
Other Extensions
No response
Additional context
No response
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
No se indican archivos del repositorio ni pruebas. Empieza reproduciendo la jerarquía de llamadas a partir de una función C o C++ utilizada como puntero a función para la creación de hilos y, después, sigue la implementación de la jerarquía de llamadas en la extensión. Se considera completado cuando las referencias alcanzadas a través del puntero a función aparecen en la jerarquía y una prueba de regresión cubre el caso.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cpp, typescript, vscode
- Área
- developer-experience, tooling
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100