microsoft / microsoft/vscode-cpptools
Intellisense error sizeof(uint32_t) is 8 bytes
Nessuno ha ancora preso questa issue.
- Lingua principale
- TypeScript
- Stelle
- 6.2k
- Fork
- 1.7k
- Merge medio
- 14h 46m
- PR unite (30g)
- 61
Descrizione
Environment
- OS and Version: Linux x64 6.8.10-300.fc40.x86_64
- VS Code Version: 1.90.0
- C/C++ Extension Version: v1.20.5
- If using SSH remote, specify OS of remote machine: no
Bug Summary and Steps to Reproduce
Bug Summary:
I'm work on ESP-IDF get C/C++(1578), and hover sizeof(uint32_t) get (size_t)8U, hover uint32_t get typedef unsigned long uint32_t
In Windows 10 i get sizeof(uint32_t) is (size_t)4U
code snippets
switch (size) {
case sizeof(uint8_t): {
ret = nvs_set_u8(__nvs_handle, key, *((uint8_t *)data));
} break;
case sizeof(uint16_t): {
ret = nvs_set_u16(__nvs_handle, key, *((uint16_t *)data));
} break;
case sizeof(uint32_t): {
ret = nvs_set_u32(__nvs_handle, key, *((uint32_t *)data));
} break;
case sizeof(uint64_t): {
ret = nvs_set_u64(__nvs_handle, key, *((uint64_t *)data));
} break;
default: {
ret = nvs_set_blob(__nvs_handle, key, (void *)data, size);
} break;
}
Steps to reproduce:
- Go to '...'
- Click on '....'
- Scroll down to '....'
- See error
Expected behavior:
Configuration and Logs
c_cpp_properties.json
{
"configurations": [
{
"name": "ESP-IDF",
"includePath": [
"${config:idf.espIdfPathWin}/components",
"${workspaceFolder}"
],
"browse": {
"path": [
"${config:idf.espIdfPathWin}/components",
"${workspaceFolder}"
],
"limitSymbolsToIncludedHeaders": true
},
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"cStandard": "c11",
"compilerPath": "${config:idf.toolsPath}/tools/riscv32-esp-elf/esp-13.2.0_20230928/riscv32-esp-elf/bin/riscv32-esp-elf-gcc"
}
],
"version": 4
}
Other Extensions
ESP_IDF: espressif.esp-idf-extension
Additional context
No response
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia con c_cpp_properties.json e workspace build/compile_commands.json, quindi verifica il compilatore riscv32-esp-elf-gcc configurato e le informazioni sui tipi di IntelliSense per uint32_t. Riproduci il risultato dell’hover su Linux e Windows; il lavoro è completato quando sizeof(uint32_t) restituisce la dimensione prevista per la destinazione configurata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- c, cpp
- Ambito
- devtools, embedded-iot
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 30/100