Merge remote-tracking branch 'origin/topic/timw/174-duplicate-attributes'

- Replaced "tag" with "attribute" in the error message since the former
  is not exactly the same concept/meaning and also not user-facing
  terminology

* origin/topic/timw/174-duplicate-attributes:
  Allow duplicate attributes in full redefs
  Short-circuit checking of whether attr exists
  Expanded check for other tag types, fixed btest to cover more tags
  GH-174: Add warning for duplicate attributes
This commit is contained in:
Jon Siwek 2020-08-31 17:31:21 -07:00
commit 5e6bb843ab
10 changed files with 65 additions and 18 deletions

View file

@ -316,10 +316,10 @@ std::string ID::GetDeprecationWarning() const
return util::fmt("deprecated (%s): %s", Name(), result.c_str());
}
void ID::AddAttrs(AttributesPtr a)
void ID::AddAttrs(AttributesPtr a, bool is_redef)
{
if ( attrs )
attrs->AddAttrs(a);
attrs->AddAttrs(a, is_redef);
else
attrs = std::move(a);