| 4531 | }; |
| 4532 | |
| 4533 | static UnionMember parseUnionMember(const Variable &var, |
| 4534 | const Settings &settings) |
| 4535 | { |
| 4536 | const Token *nameToken = var.nameToken(); |
| 4537 | if (nameToken == nullptr) |
| 4538 | return UnionMember(); |
| 4539 | |
| 4540 | const ValueType *vt = nameToken->valueType(); |
| 4541 | size_t size = 0; |
| 4542 | if (var.isArray()) { |
| 4543 | size = var.dimension(0); |
| 4544 | } else if (vt != nullptr) { |
| 4545 | size = vt->getSizeOf(settings, ValueType::Accuracy::ExactOrZero, ValueType::SizeOf::Pointer); |
| 4546 | } |
| 4547 | return UnionMember(nameToken->str(), size); |
| 4548 | } |
| 4549 | |
| 4550 | static std::vector<Union> parseUnions(const SymbolDatabase &symbolDatabase, |
| 4551 | const Settings &settings) |
no test coverage detected