diff --git a/cmake/common/clang-tidy.json b/cmake/common/clang-tidy.json index afa90899d..1b4e1a6a7 100644 --- a/cmake/common/clang-tidy.json +++ b/cmake/common/clang-tidy.json @@ -1,5 +1,11 @@ { - "Checks": "-*, bugprone-*, -bugprone-easily-swappable-parameters,-bugprone-unchecked-optional-access, concurrency-*, cppcoreguidelines-avoid-const-or-ref-data-members, modernize-*, performance-*, portability-*", +"Checks": "-*, + bugprone-*,-bugprone-easily-swappable-parameters, + concurrency-*, + cppcoreguidelines-avoid-const-or-ref-data-members, + modernize-*, + performance-*, + portability-*", "WarningsAsErrors": "*", "FormatStyle": "none", "UseColor": true diff --git a/src/core/jsonschema/jsonschema.cc b/src/core/jsonschema/jsonschema.cc index 0c523e084..fb1e588a9 100644 --- a/src/core/jsonschema/jsonschema.cc +++ b/src/core/jsonschema/jsonschema.cc @@ -626,6 +626,7 @@ auto sourcemeta::core::reference_visit( assert(property.second.is_string()); assert(walker_result.vocabulary.has_value()); sourcemeta::core::URI reference{property.second.to_string()}; + // NOLINTNEXTLINE(bugprone-unchecked-optional-access) callback(subschema, base, walker_result.vocabulary.value(), property.first, reference); } @@ -685,6 +686,7 @@ auto sourcemeta::core::unidentify( } assert(entry.base_dialect.has_value()); + // NOLINTNEXTLINE(bugprone-unchecked-optional-access) sourcemeta::core::anonymize(subschema, entry.base_dialect.value()); if (entry.vocabularies.contains( diff --git a/src/core/jsonschema/walker.cc b/src/core/jsonschema/walker.cc index 1e19a2602..4b6af5c34 100644 --- a/src/core/jsonschema/walker.cc +++ b/src/core/jsonschema/walker.cc @@ -42,6 +42,7 @@ auto walk(const std::optional &parent, sourcemeta::core::SchemaIdentificationStrategy::Strict, maybe_current_dialect)}; const auto is_schema_resource{level == 0 || id.has_value()}; + // NOLINTNEXTLINE(bugprone-unchecked-optional-access) const auto current_dialect{is_schema_resource ? maybe_current_dialect.value() : dialect}; const auto current_base_dialect{ @@ -422,6 +423,7 @@ sourcemeta::core::SchemaIterator::SchemaIterator( assert(base_dialect.has_value()); walk(std::nullopt, pointer, instance_location, instance_location, this->subschemas, schema, walker, resolver, dialect.value(), + // NOLINTNEXTLINE(bugprone-unchecked-optional-access) base_dialect.value(), SchemaWalkerType_t::Deep, 0, false); } } @@ -441,6 +443,7 @@ sourcemeta::core::SchemaIteratorFlat::SchemaIteratorFlat( assert(base_dialect.has_value()); walk(std::nullopt, pointer, instance_location, instance_location, this->subschemas, schema, walker, resolver, dialect.value(), + // NOLINTNEXTLINE(bugprone-unchecked-optional-access) base_dialect.value(), SchemaWalkerType_t::Flat, 0, false); } } diff --git a/src/core/uri/uri.cc b/src/core/uri/uri.cc index 7744e87b2..79dff5960 100644 --- a/src/core/uri/uri.cc +++ b/src/core/uri/uri.cc @@ -213,12 +213,14 @@ auto URI::parse() -> void { if (this->is_urn() || this->is_tag()) { const auto part{uri_text_range(&segment->text)}; assert(part.has_value()); + // NOLINTNEXTLINE(bugprone-unchecked-optional-access) path << part.value(); } else { bool first{true}; while (segment) { const auto part{uri_text_range(&segment->text)}; assert(part.has_value()); + // NOLINTNEXTLINE(bugprone-unchecked-optional-access) const auto value{part.value()}; if (first) {