mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
GH-174: Add warning for duplicate attributes
This commit is contained in:
parent
9f802b2a4d
commit
989531826f
4 changed files with 20 additions and 5 deletions
|
@ -195,6 +195,12 @@ Attributes::Attributes(std::vector<AttrPtr> a,
|
||||||
|
|
||||||
void Attributes::AddAttr(AttrPtr attr)
|
void Attributes::AddAttr(AttrPtr attr)
|
||||||
{
|
{
|
||||||
|
// Display a warning for duplicated tags on a type. &log tags are intentionally
|
||||||
|
// ignored here because duplicate log tags on record types are valid, and don't
|
||||||
|
// cause any significant breakage for other types.
|
||||||
|
if ( attr->Tag() != ATTR_LOG && Find(attr->Tag()) )
|
||||||
|
reporter->Warning("Found duplicate tag %s", attr_name(attr->Tag()));
|
||||||
|
|
||||||
// We overwrite old attributes by deleting them first.
|
// We overwrite old attributes by deleting them first.
|
||||||
RemoveAttr(attr->Tag());
|
RemoveAttr(attr->Tag());
|
||||||
attrs_list.push_back(attr.get());
|
attrs_list.push_back(attr.get());
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
error in /home/jon/pro/zeek/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 4: &default is not valid for global variables except for tables (&default=0)
|
error in /mnt/data/tim/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 4: &default is not valid for global variables except for tables (&default=0)
|
||||||
error in /home/jon/pro/zeek/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 9: &default is not valid for global variables except for tables (&default=10)
|
error in /mnt/data/tim/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 9: &default is not valid for global variables except for tables (&default=10)
|
||||||
error in /home/jon/pro/zeek/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 9: &default is not valid for global variables except for tables (&default=9)
|
warning in /mnt/data/tim/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 9: Found duplicate tag &default
|
||||||
error in /home/jon/pro/zeek/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 9: &optional is not valid for global variables (&default=9, &optional)
|
error in /mnt/data/tim/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 9: &default is not valid for global variables except for tables (&default=9)
|
||||||
error in /home/jon/pro/zeek/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 10: &default is not valid for global variables except for tables (&default=set())
|
error in /mnt/data/tim/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 9: &optional is not valid for global variables (&default=9, &optional)
|
||||||
|
error in /mnt/data/tim/zeek/testing/btest/.tmp/language.attr-default-global-set-error/attr-default-global-set-error.zeek, line 10: &default is not valid for global variables except for tables (&default=set())
|
||||||
|
|
2
testing/btest/Baseline/language.duplicate-attributes/out
Normal file
2
testing/btest/Baseline/language.duplicate-attributes/out
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
warning in /Users/tim/Desktop/projects/zeek/testing/btest/.tmp/language.duplicate-attributes/duplicate-attributes.zeek, line 6: Found duplicate tag &default
|
||||||
|
warning in /Users/tim/Desktop/projects/zeek/testing/btest/.tmp/language.duplicate-attributes/duplicate-attributes.zeek, line 6: Found duplicate tag &read_expire
|
6
testing/btest/language/duplicate-attributes.zeek
Normal file
6
testing/btest/language/duplicate-attributes.zeek
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# @TEST-EXEC: zeek -b %INPUT >out 2>&1
|
||||||
|
# @TEST-EXEC: TEST_DIFF_CANONIFIER=$SCRIPTS/diff-remove-abspath btest-diff out
|
||||||
|
|
||||||
|
global a: table[count] of count
|
||||||
|
&default = 10 &default = 9
|
||||||
|
&read_expire = 5 sec &read_expire = 1 min;
|
Loading…
Add table
Add a link
Reference in a new issue