diff --git a/hilti/toolchain/include/ast/node.h b/hilti/toolchain/include/ast/node.h
index b280e886aa..93e3afc6e1 100644
--- a/hilti/toolchain/include/ast/node.h
+++ b/hilti/toolchain/include/ast/node.h
@@ -47,8 +47,8 @@
__HILTI_NODE_0(hilti, CLASS, override_) \
\
void dispatch(::hilti::visitor::Dispatcher& v) override_ { \
- v(static_cast<::hilti::Node*>(this)); \
v(this); \
+ v(static_cast<::hilti::Node*>(this)); \
}
#define __HILTI_NODE_1(NS, CLASS, BASE, override_) \
@@ -63,9 +63,9 @@
__HILTI_NODE_1(hilti, CLASS, BASE, override_) \
\
void dispatch(::hilti::visitor::Dispatcher& v) override_ { \
- v(static_cast<::hilti::Node*>(this)); \
- v(static_cast(this)); \
v(this); \
+ v(static_cast(this)); \
+ v(static_cast<::hilti::Node*>(this)); \
}
#define __HILTI_NODE_2(NS, CLASS, BASE1, BASE2, override_) \
@@ -80,10 +80,10 @@
__HILTI_NODE_2(hilti, CLASS, BASE1, BASE2, override_) \
\
void dispatch(::hilti::visitor::Dispatcher& v) override_ { \
- v(static_cast<::hilti::Node*>(this)); \
+ v(this); \
v(static_cast(this)); \
v(static_cast(this)); \
- v(this); \
+ v(static_cast<::hilti::Node*>(this)); \
}
namespace hilti {
diff --git a/hilti/toolchain/include/compiler/detail/optimizer/optimizer.h b/hilti/toolchain/include/compiler/detail/optimizer/optimizer.h
index e637469976..dd92bae00e 100644
--- a/hilti/toolchain/include/compiler/detail/optimizer/optimizer.h
+++ b/hilti/toolchain/include/compiler/detail/optimizer/optimizer.h
@@ -279,7 +279,6 @@ class Optimizer {
*
* @param id the ID to check
*/
- // FIXME(bbannier): drop `%`?
static bool isFeatureFlag(const ID& id) { return util::startsWith(id.local(), HILTI_INTERNAL_ID("feat%")); }
/**
diff --git a/hilti/toolchain/src/compiler/validator.cc b/hilti/toolchain/src/compiler/validator.cc
index 7710933338..a6fee38756 100644
--- a/hilti/toolchain/src/compiler/validator.cc
+++ b/hilti/toolchain/src/compiler/validator.cc
@@ -939,7 +939,9 @@ struct VisitorCFG : visitor::PreOrder, public validator::VisitorMixIn {
return false;
for ( const auto& s : successors ) {
- if ( ! ensureReturns(cfg, *cfg.graph().getNode(s), seen) )
+ const auto* n = cfg.graph().getNode(s);
+ assert(n);
+ if ( ! ensureReturns(cfg, *n, seen) )
return false;
}
diff --git a/spicy/toolchain/include/ast/node.h b/spicy/toolchain/include/ast/node.h
index 8294d0b4f9..4264449900 100644
--- a/spicy/toolchain/include/ast/node.h
+++ b/spicy/toolchain/include/ast/node.h
@@ -13,12 +13,12 @@
void dispatch(::hilti::visitor::Dispatcher& v) override_ { \
if ( v.dispatcherTag() == spicy::visitor::Dispatcher::Spicy ) { \
auto sv = static_cast(&v); \
- (*sv)(static_cast<::hilti::Node*>(this)); \
(*sv)(this); \
+ (*sv)(static_cast<::hilti::Node*>(this)); \
} \
else { \
- v(static_cast<::hilti::Node*>(this)); \
v(this); \
+ v(static_cast<::hilti::Node*>(this)); \
} \
}
@@ -28,14 +28,14 @@
void dispatch(::hilti::visitor::Dispatcher& v) override_ { \
if ( v.dispatcherTag() == spicy::visitor::Dispatcher::Spicy ) { \
auto sv = static_cast(&v); \
- (*sv)(static_cast<::hilti::Node*>(this)); \
- (*sv)(static_cast(this)); \
(*sv)(this); \
+ (*sv)(static_cast(this)); \
+ (*sv)(static_cast<::hilti::Node*>(this)); \
} \
else { \
- v(static_cast<::hilti::Node*>(this)); \
- v(static_cast(this)); \
v(this); \
+ v(static_cast(this)); \
+ v(static_cast<::hilti::Node*>(this)); \
} \
}
@@ -46,15 +46,15 @@
using namespace hilti; \
if ( v.dispatcherTag() == spicy::visitor::Dispatcher::Spicy ) { \
auto sv = static_cast(&v); \
- (*sv)(static_cast<::hilti::Node*>(this)); \
+ (*sv)(this); \
(*sv)(static_cast(this)); \
(*sv)(static_cast(this)); \
- (*sv)(this); \
+ (*sv)(static_cast<::hilti::Node*>(this)); \
} \
else { \
- v(static_cast<::hilti::Node*>(this)); \
v(static_cast(this)); \
v(static_cast(this)); \
+ v(static_cast<::hilti::Node*>(this)); \
} \
}
diff --git a/tests/Baseline/hilti.ast.imported-id/output b/tests/Baseline/hilti.ast.imported-id/output
index a525b12468..57e3434c90 100644
--- a/tests/Baseline/hilti.ast.imported-id/output
+++ b/tests/Baseline/hilti.ast.imported-id/output
@@ -37,277 +37,277 @@
[debug/resolver] [hilti.hlt:63:38-63:55] type::Name "RecoverableFailure" -> set resolved type to T16
[debug/resolver] [hilti.hlt:66:39-66:53] type::Name "SystemException" -> set resolved type to T15
[debug/resolver] [hilti.hlt:67:39-67:56] type::Name "RecoverableFailure" -> set resolved type to T16
-[debug/resolver] [foo.hlt:4:1-4:11] declaration::ImportedModule "import Bar;" -> set declaration's canonical ID to Foo::Bar
[debug/resolver] [foo.hlt:4:1-4:11] declaration::ImportedModule "import Bar;" -> set declaration's fully qualified ID to Foo::Bar
[debug/compiler] parsing file "./bar.hlt" as HILTI code
[debug/resolver] [foo.hlt:4:1-4:11] declaration::ImportedModule "import Bar;" -> imported module Bar
-[debug/resolver] [foo.hlt:6:1-6:24] declaration::Type "public type Foo1 = bool;" -> set declaration's canonical ID to Foo::Foo1
+[debug/resolver] [foo.hlt:4:1-4:11] declaration::ImportedModule "import Bar;" -> set declaration's canonical ID to Foo::Bar
[debug/resolver] [foo.hlt:6:1-6:24] declaration::Type "public type Foo1 = bool;" -> set declaration's fully qualified ID to Foo::Foo1
-[debug/resolver] -> [D1] declaration::Type Foo::Foo1 | public type Foo1 = bool; (foo.hlt:6:1-6:24)
+[debug/resolver] -> [D1] declaration::Type | public type Foo1 = bool; (foo.hlt:6:1-6:24)
[debug/resolver] [foo.hlt:6:20-6:23] type::Bool "bool" -> set type's declaration to D1
-[debug/resolver] [foo.hlt:7:1-7:29] declaration::Type "public type Foo2 = Bar::Bar1;" -> set declaration's canonical ID to Foo::Foo2
+[debug/resolver] [foo.hlt:6:1-6:24] declaration::Type "public type Foo1 = bool;" -> set declaration's canonical ID to Foo::Foo1
[debug/resolver] [foo.hlt:7:1-7:29] declaration::Type "public type Foo2 = Bar::Bar1;" -> set declaration's fully qualified ID to Foo::Foo2
-[debug/resolver] [foo.hlt:9:21-9:28] declaration::Parameter "bool foo" -> set declaration's canonical ID to Foo::foo
+[debug/resolver] [foo.hlt:7:1-7:29] declaration::Type "public type Foo2 = Bar::Bar1;" -> set declaration's canonical ID to Foo::Foo2
[debug/resolver] [foo.hlt:9:21-9:28] declaration::Parameter "bool foo" -> set declaration's fully qualified ID to foo
-[debug/resolver] [foo.hlt:9:31-9:43] declaration::Parameter "Bar::Bar1 bar" -> set declaration's canonical ID to Foo::bar
+[debug/resolver] [foo.hlt:9:21-9:28] declaration::Parameter "bool foo" -> set declaration's canonical ID to Foo::foo
[debug/resolver] [foo.hlt:9:31-9:43] declaration::Parameter "Bar::Bar1 bar" -> set declaration's fully qualified ID to bar
-[debug/resolver] [foo.hlt:9:1-9:59] declaration::Function "function string foo(bool foo, Bar::Bar1 bar) { return ""; }" -> set declaration's canonical ID to Foo::foo_2
+[debug/resolver] [foo.hlt:9:31-9:43] declaration::Parameter "Bar::Bar1 bar" -> set declaration's canonical ID to Foo::bar
[debug/resolver] [foo.hlt:9:1-9:59] declaration::Function "function string foo(bool foo, Bar::Bar1 bar) { return ""; }" -> set declaration's fully qualified ID to Foo::foo
+[debug/resolver] [foo.hlt:9:1-9:59] declaration::Function "function string foo(bool foo, Bar::Bar1 bar) { return ""; }" -> set declaration's canonical ID to Foo::foo_2
[debug/resolver] [foo.hlt:2:1-11:1] declaration::Module "module Foo { import Bar; public type Foo1 = bool; public type Foo2 = Bar::Bar1; function string foo(bool foo, Bar::Bar1 bar) { return ""; } }" -> set declaration's fully qualified ID to Foo
[debug/resolver] [foo.hlt:2:1-11:1] declaration::Module "module Foo { import Bar; public type Foo1 = bool; public type Foo2 = Bar::Bar1; function string foo(bool foo, Bar::Bar1 bar) { return ""; } }" -> set module's canonical ID to Foo
[debug/resolver] -> [D2] declaration::Module Foo | module Foo { import Bar; public type Foo1 = bool; public type Foo2 = Bar::Bar1; function string foo(bool foo, Bar::Bar1 bar) { return ""; } } (foo.hlt:2:1-11:1)
[debug/resolver] [foo.hlt:2:1-11:1] declaration::Module "module Foo { import Bar; public type Foo1 = bool; public type Foo2 = Bar::Bar1; function string foo(bool foo, Bar::Bar1 bar) { return ""; } }" -> set module's declaration index to D2
-[debug/resolver] [hilti.hlt:6:1-6:21] declaration::Property "" -> set declaration's canonical ID to hilti::%skip-implementation
[debug/resolver] [hilti.hlt:6:1-6:21] declaration::Property "" -> set declaration's fully qualified ID to hilti::%skip-implementation
+[debug/resolver] [hilti.hlt:6:1-6:21] declaration::Property "" -> set declaration's canonical ID to hilti::%skip-implementation
[debug/resolver] [hilti.hlt:8:24-8:42] declaration::Constant "const enum { LSB0 = 0, MSB0 = 1 } LSB0 = ::LSB0;" -> set declaration's canonical ID to hilti::LSB0
[debug/resolver] [hilti.hlt:8:24-8:42] declaration::Constant "const enum { LSB0 = 0, MSB0 = 1 } MSB0 = ::MSB0;" -> set declaration's canonical ID to hilti::MSB0
[debug/resolver] [hilti.hlt:8:24-8:42] declaration::Constant "const enum { LSB0 = 0, MSB0 = 1 } Undef = ::Undef;" -> set declaration's canonical ID to hilti::Undef
[debug/resolver] [hilti.hlt:8:44-8:82] Attribute "&cxxname="hilti::rt::integer::BitOrder"" -> Attribute "&cxxname="::hilti::rt::integer::BitOrder""
-[debug/resolver] [hilti.hlt:8:1-8:83] declaration::Type "public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder";" -> set declaration's canonical ID to hilti::BitOrder
[debug/resolver] [hilti.hlt:8:1-8:83] declaration::Type "public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder";" -> set declaration's fully qualified ID to hilti::BitOrder
-[debug/resolver] -> [D3] declaration::Type hilti::BitOrder | public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder"; (hilti.hlt:8:1-8:83)
+[debug/resolver] -> [D3] declaration::Type | public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder"; (hilti.hlt:8:1-8:83)
[debug/resolver] [hilti.hlt:8:24-8:42] type::Enum "hilti::BitOrder" -> set type's declaration to D3
+[debug/resolver] [hilti.hlt:8:1-8:83] declaration::Type "public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder";" -> set declaration's canonical ID to hilti::BitOrder
[debug/resolver] [hilti.hlt:9:25-9:59] declaration::Constant "const enum { Little = 0, Big = 1, Network = 2, Host = 3 } Little = ::Little;" -> set declaration's canonical ID to hilti::Little
[debug/resolver] [hilti.hlt:9:25-9:59] declaration::Constant "const enum { Little = 0, Big = 1, Network = 2, Host = 3 } Big = ::Big;" -> set declaration's canonical ID to hilti::Big
[debug/resolver] [hilti.hlt:9:25-9:59] declaration::Constant "const enum { Little = 0, Big = 1, Network = 2, Host = 3 } Network = ::Network;" -> set declaration's canonical ID to hilti::Network
[debug/resolver] [hilti.hlt:9:25-9:59] declaration::Constant "const enum { Little = 0, Big = 1, Network = 2, Host = 3 } Host = ::Host;" -> set declaration's canonical ID to hilti::Host
[debug/resolver] [hilti.hlt:9:25-9:59] declaration::Constant "const enum { Little = 0, Big = 1, Network = 2, Host = 3 } Undef = ::Undef;" -> set declaration's canonical ID to hilti::Undef_2
[debug/resolver] [hilti.hlt:9:61-9:91] Attribute "&cxxname="hilti::rt::ByteOrder"" -> Attribute "&cxxname="::hilti::rt::ByteOrder""
-[debug/resolver] [hilti.hlt:9:1-9:92] declaration::Type "public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder";" -> set declaration's canonical ID to hilti::ByteOrder
[debug/resolver] [hilti.hlt:9:1-9:92] declaration::Type "public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder";" -> set declaration's fully qualified ID to hilti::ByteOrder
-[debug/resolver] -> [D4] declaration::Type hilti::ByteOrder | public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder"; (hilti.hlt:9:1-9:92)
+[debug/resolver] -> [D4] declaration::Type | public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder"; (hilti.hlt:9:1-9:92)
[debug/resolver] [hilti.hlt:9:25-9:59] type::Enum "hilti::ByteOrder" -> set type's declaration to D4
+[debug/resolver] [hilti.hlt:9:1-9:92] declaration::Type "public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder";" -> set declaration's canonical ID to hilti::ByteOrder
[debug/resolver] [hilti.hlt:10:20-10:45] declaration::Constant "const enum { Left = 0, Right = 1, Both = 2 } Left = ::Left;" -> set declaration's canonical ID to hilti::Left
[debug/resolver] [hilti.hlt:10:20-10:45] declaration::Constant "const enum { Left = 0, Right = 1, Both = 2 } Right = ::Right;" -> set declaration's canonical ID to hilti::Right
[debug/resolver] [hilti.hlt:10:20-10:45] declaration::Constant "const enum { Left = 0, Right = 1, Both = 2 } Both = ::Both;" -> set declaration's canonical ID to hilti::Both
[debug/resolver] [hilti.hlt:10:20-10:45] declaration::Constant "const enum { Left = 0, Right = 1, Both = 2 } Undef = ::Undef;" -> set declaration's canonical ID to hilti::Undef_3
[debug/resolver] [hilti.hlt:10:47-10:79] Attribute "&cxxname="hilti::rt::bytes::Side"" -> Attribute "&cxxname="::hilti::rt::bytes::Side""
-[debug/resolver] [hilti.hlt:10:1-10:80] declaration::Type "public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side";" -> set declaration's canonical ID to hilti::Side
[debug/resolver] [hilti.hlt:10:1-10:80] declaration::Type "public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side";" -> set declaration's fully qualified ID to hilti::Side
-[debug/resolver] -> [D5] declaration::Type hilti::Side | public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side"; (hilti.hlt:10:1-10:80)
+[debug/resolver] -> [D5] declaration::Type | public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side"; (hilti.hlt:10:1-10:80)
[debug/resolver] [hilti.hlt:10:20-10:45] type::Enum "hilti::Side" -> set type's declaration to D5
+[debug/resolver] [hilti.hlt:10:1-10:80] declaration::Type "public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side";" -> set declaration's canonical ID to hilti::Side
[debug/resolver] [hilti.hlt:11:29-11:47] declaration::Constant "const enum { IPv4 = 0, IPv6 = 1 } IPv4 = ::IPv4;" -> set declaration's canonical ID to hilti::IPv4
[debug/resolver] [hilti.hlt:11:29-11:47] declaration::Constant "const enum { IPv4 = 0, IPv6 = 1 } IPv6 = ::IPv6;" -> set declaration's canonical ID to hilti::IPv6
[debug/resolver] [hilti.hlt:11:29-11:47] declaration::Constant "const enum { IPv4 = 0, IPv6 = 1 } Undef = ::Undef;" -> set declaration's canonical ID to hilti::Undef_4
[debug/resolver] [hilti.hlt:11:49-11:83] Attribute "&cxxname="hilti::rt::AddressFamily"" -> Attribute "&cxxname="::hilti::rt::AddressFamily""
-[debug/resolver] [hilti.hlt:11:1-11:84] declaration::Type "public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily";" -> set declaration's canonical ID to hilti::AddressFamily
[debug/resolver] [hilti.hlt:11:1-11:84] declaration::Type "public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily";" -> set declaration's fully qualified ID to hilti::AddressFamily
-[debug/resolver] -> [D6] declaration::Type hilti::AddressFamily | public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily"; (hilti.hlt:11:1-11:84)
+[debug/resolver] -> [D6] declaration::Type | public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily"; (hilti.hlt:11:1-11:84)
[debug/resolver] [hilti.hlt:11:29-11:47] type::Enum "hilti::AddressFamily" -> set type's declaration to D6
+[debug/resolver] [hilti.hlt:11:1-11:84] declaration::Type "public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily";" -> set declaration's canonical ID to hilti::AddressFamily
[debug/resolver] [hilti.hlt:12:24-12:62] declaration::Constant "const enum { IEEE754_Single = 0, IEEE754_Double = 1 } IEEE754_Single = ::IEEE754_Single;" -> set declaration's canonical ID to hilti::IEEE754_Single
[debug/resolver] [hilti.hlt:12:24-12:62] declaration::Constant "const enum { IEEE754_Single = 0, IEEE754_Double = 1 } IEEE754_Double = ::IEEE754_Double;" -> set declaration's canonical ID to hilti::IEEE754_Double
[debug/resolver] [hilti.hlt:12:24-12:62] declaration::Constant "const enum { IEEE754_Single = 0, IEEE754_Double = 1 } Undef = ::Undef;" -> set declaration's canonical ID to hilti::Undef_5
[debug/resolver] [hilti.hlt:12:64-12:95] Attribute "&cxxname="hilti::rt::real::Type"" -> Attribute "&cxxname="::hilti::rt::real::Type""
-[debug/resolver] [hilti.hlt:12:1-12:96] declaration::Type "public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type";" -> set declaration's canonical ID to hilti::RealType
[debug/resolver] [hilti.hlt:12:1-12:96] declaration::Type "public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type";" -> set declaration's fully qualified ID to hilti::RealType
-[debug/resolver] -> [D7] declaration::Type hilti::RealType | public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type"; (hilti.hlt:12:1-12:96)
+[debug/resolver] -> [D7] declaration::Type | public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type"; (hilti.hlt:12:1-12:96)
[debug/resolver] [hilti.hlt:12:24-12:62] type::Enum "hilti::RealType" -> set type's declaration to D7
+[debug/resolver] [hilti.hlt:12:1-12:96] declaration::Type "public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type";" -> set declaration's canonical ID to hilti::RealType
[debug/resolver] [hilti.hlt:13:24-13:46] declaration::Constant "const enum { TCP = 0, UDP = 1, ICMP = 2 } TCP = ::TCP;" -> set declaration's canonical ID to hilti::TCP
[debug/resolver] [hilti.hlt:13:24-13:46] declaration::Constant "const enum { TCP = 0, UDP = 1, ICMP = 2 } UDP = ::UDP;" -> set declaration's canonical ID to hilti::UDP
[debug/resolver] [hilti.hlt:13:24-13:46] declaration::Constant "const enum { TCP = 0, UDP = 1, ICMP = 2 } ICMP = ::ICMP;" -> set declaration's canonical ID to hilti::ICMP
[debug/resolver] [hilti.hlt:13:24-13:46] declaration::Constant "const enum { TCP = 0, UDP = 1, ICMP = 2 } Undef = ::Undef;" -> set declaration's canonical ID to hilti::Undef_6
[debug/resolver] [hilti.hlt:13:48-13:77] Attribute "&cxxname="hilti::rt::Protocol"" -> Attribute "&cxxname="::hilti::rt::Protocol""
-[debug/resolver] [hilti.hlt:13:1-13:78] declaration::Type "public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol";" -> set declaration's canonical ID to hilti::Protocol
[debug/resolver] [hilti.hlt:13:1-13:78] declaration::Type "public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol";" -> set declaration's fully qualified ID to hilti::Protocol
-[debug/resolver] -> [D8] declaration::Type hilti::Protocol | public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol"; (hilti.hlt:13:1-13:78)
+[debug/resolver] -> [D8] declaration::Type | public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol"; (hilti.hlt:13:1-13:78)
[debug/resolver] [hilti.hlt:13:24-13:46] type::Enum "hilti::Protocol" -> set type's declaration to D8
+[debug/resolver] [hilti.hlt:13:1-13:78] declaration::Type "public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol";" -> set declaration's canonical ID to hilti::Protocol
[debug/resolver] [hilti.hlt:14:23-14:60] declaration::Constant "const enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } ASCII = ::ASCII;" -> set declaration's canonical ID to hilti::ASCII
[debug/resolver] [hilti.hlt:14:23-14:60] declaration::Constant "const enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } UTF8 = ::UTF8;" -> set declaration's canonical ID to hilti::UTF8
[debug/resolver] [hilti.hlt:14:23-14:60] declaration::Constant "const enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } UTF16LE = ::UTF16LE;" -> set declaration's canonical ID to hilti::UTF16LE
[debug/resolver] [hilti.hlt:14:23-14:60] declaration::Constant "const enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } UTF16BE = ::UTF16BE;" -> set declaration's canonical ID to hilti::UTF16BE
[debug/resolver] [hilti.hlt:14:23-14:60] declaration::Constant "const enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } Undef = ::Undef;" -> set declaration's canonical ID to hilti::Undef_7
[debug/resolver] [hilti.hlt:14:62-14:99] Attribute "&cxxname="hilti::rt::unicode::Charset"" -> Attribute "&cxxname="::hilti::rt::unicode::Charset""
-[debug/resolver] [hilti.hlt:14:1-14:100] declaration::Type "public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset";" -> set declaration's canonical ID to hilti::Charset
[debug/resolver] [hilti.hlt:14:1-14:100] declaration::Type "public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset";" -> set declaration's fully qualified ID to hilti::Charset
-[debug/resolver] -> [D9] declaration::Type hilti::Charset | public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset"; (hilti.hlt:14:1-14:100)
+[debug/resolver] -> [D9] declaration::Type | public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset"; (hilti.hlt:14:1-14:100)
[debug/resolver] [hilti.hlt:14:23-14:60] type::Enum "hilti::Charset" -> set type's declaration to D9
+[debug/resolver] [hilti.hlt:14:1-14:100] declaration::Type "public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset";" -> set declaration's canonical ID to hilti::Charset
[debug/resolver] [hilti.hlt:15:35-15:66] declaration::Constant "const enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } IGNORE = ::IGNORE;" -> set declaration's canonical ID to hilti::IGNORE
[debug/resolver] [hilti.hlt:15:35-15:66] declaration::Constant "const enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } REPLACE = ::REPLACE;" -> set declaration's canonical ID to hilti::REPLACE
[debug/resolver] [hilti.hlt:15:35-15:66] declaration::Constant "const enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } STRICT = ::STRICT;" -> set declaration's canonical ID to hilti::STRICT
[debug/resolver] [hilti.hlt:15:35-15:66] declaration::Constant "const enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } Undef = ::Undef;" -> set declaration's canonical ID to hilti::Undef_8
[debug/resolver] [hilti.hlt:15:68-15:117] Attribute "&cxxname="hilti::rt::unicode::DecodeErrorStrategy"" -> Attribute "&cxxname="::hilti::rt::unicode::DecodeErrorStrategy""
-[debug/resolver] [hilti.hlt:15:1-15:118] declaration::Type "public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy";" -> set declaration's canonical ID to hilti::DecodeErrorStrategy
[debug/resolver] [hilti.hlt:15:1-15:118] declaration::Type "public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy";" -> set declaration's fully qualified ID to hilti::DecodeErrorStrategy
-[debug/resolver] -> [D10] declaration::Type hilti::DecodeErrorStrategy | public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy"; (hilti.hlt:15:1-15:118)
+[debug/resolver] -> [D10] declaration::Type | public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy"; (hilti.hlt:15:1-15:118)
[debug/resolver] [hilti.hlt:15:35-15:66] type::Enum "hilti::DecodeErrorStrategy" -> set type's declaration to D10
-[debug/resolver] [hilti.hlt:16:1-16:37] declaration::Type "public type Captures = vector;" -> set declaration's canonical ID to hilti::Captures
+[debug/resolver] [hilti.hlt:15:1-15:118] declaration::Type "public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy";" -> set declaration's canonical ID to hilti::DecodeErrorStrategy
[debug/resolver] [hilti.hlt:16:1-16:37] declaration::Type "public type Captures = vector;" -> set declaration's fully qualified ID to hilti::Captures
-[debug/resolver] -> [D11] declaration::Type hilti::Captures | public type Captures = vector; (hilti.hlt:16:1-16:37)
+[debug/resolver] -> [D11] declaration::Type | public type Captures = vector; (hilti.hlt:16:1-16:37)
[debug/resolver] [hilti.hlt:16:24-16:36] type::Vector "vector" -> set type's declaration to D11
-[debug/resolver] [hilti.hlt:17:1-17:61] declaration::Type "public type Profiler = _t_library_type("::hilti::rt::Profiler");" -> set declaration's canonical ID to hilti::Profiler
+[debug/resolver] [hilti.hlt:16:1-16:37] declaration::Type "public type Captures = vector;" -> set declaration's canonical ID to hilti::Captures
[debug/resolver] [hilti.hlt:17:1-17:61] declaration::Type "public type Profiler = _t_library_type("::hilti::rt::Profiler");" -> set declaration's fully qualified ID to hilti::Profiler
-[debug/resolver] -> [D12] declaration::Type hilti::Profiler | public type Profiler = hilti::Profiler; (hilti.hlt:17:1-17:61)
+[debug/resolver] -> [D12] declaration::Type | public type Profiler = hilti::Profiler; (hilti.hlt:17:1-17:61)
[debug/resolver] [hilti.hlt:17:24-17:60] type::Library "hilti::Profiler" -> set type's declaration to D12
-[debug/resolver] [hilti.hlt:19:26-21:1] declaration::Expression "self" -> set declaration's canonical ID to hilti::self
+[debug/resolver] [hilti.hlt:17:1-17:61] declaration::Type "public type Profiler = hilti::Profiler &cxxname="::hilti::rt::Profiler";" -> set declaration's canonical ID to hilti::Profiler
[debug/resolver] [hilti.hlt:19:26-21:1] declaration::Expression "self" -> set declaration's fully qualified ID to self
-[debug/resolver] [hilti.hlt:20:30-20:46] declaration::Parameter "view data" -> set declaration's canonical ID to hilti::data
+[debug/resolver] [hilti.hlt:19:26-21:1] declaration::Expression "self" -> set declaration's canonical ID to hilti::self
[debug/resolver] [hilti.hlt:20:30-20:46] declaration::Parameter "view data" -> set declaration's fully qualified ID to data
-[debug/resolver] [hilti.hlt:20:5-20:48] declaration::Field "method Captures captures(view data);" -> set declaration's canonical ID to hilti::captures
+[debug/resolver] [hilti.hlt:20:30-20:46] declaration::Parameter "view data" -> set declaration's canonical ID to hilti::data
[debug/resolver] [hilti.hlt:20:5-20:48] declaration::Field "method Captures captures(view data);" -> set linked type to T9
+[debug/resolver] [hilti.hlt:20:5-20:48] declaration::Field "method Captures captures(view data);" -> set declaration's canonical ID to hilti::captures
[debug/resolver] [hilti.hlt:21:3-21:42] Attribute "&cxxname="hilti::rt::regexp::MatchState"" -> Attribute "&cxxname="::hilti::rt::regexp::MatchState""
-[debug/resolver] [hilti.hlt:19:1-21:43] declaration::Type "public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState";" -> set declaration's canonical ID to hilti::MatchState
[debug/resolver] [hilti.hlt:19:1-21:43] declaration::Type "public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState";" -> set declaration's fully qualified ID to hilti::MatchState
-[debug/resolver] -> [D13] declaration::Type hilti::MatchState | public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState"; (hilti.hlt:19:1-21:43)
+[debug/resolver] -> [D13] declaration::Type | public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState"; (hilti.hlt:19:1-21:43)
[debug/resolver] [hilti.hlt:19:26-21:1] type::Struct "hilti::MatchState" -> set type's declaration to D13
-[debug/resolver] [hilti.hlt:23:32-28:1] declaration::Expression "self" -> set declaration's canonical ID to hilti::self_2
+[debug/resolver] [hilti.hlt:19:1-21:43] declaration::Type "public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState";" -> set declaration's canonical ID to hilti::MatchState
[debug/resolver] [hilti.hlt:23:32-28:1] declaration::Expression "self" -> set declaration's fully qualified ID to self
-[debug/resolver] [hilti.hlt:24:5-24:28] declaration::Field "uint<64> num_data_bytes;" -> set declaration's canonical ID to hilti::num_data_bytes
+[debug/resolver] [hilti.hlt:23:32-28:1] declaration::Expression "self" -> set declaration's canonical ID to hilti::self_2
[debug/resolver] [hilti.hlt:24:5-24:28] declaration::Field "uint<64> num_data_bytes;" -> set linked type to T10
-[debug/resolver] [hilti.hlt:25:5-25:29] declaration::Field "uint<64> num_data_chunks;" -> set declaration's canonical ID to hilti::num_data_chunks
+[debug/resolver] [hilti.hlt:24:5-24:28] declaration::Field "uint<64> num_data_bytes;" -> set declaration's canonical ID to hilti::num_data_bytes
[debug/resolver] [hilti.hlt:25:5-25:29] declaration::Field "uint<64> num_data_chunks;" -> set linked type to T10
-[debug/resolver] [hilti.hlt:26:5-26:27] declaration::Field "uint<64> num_gap_bytes;" -> set declaration's canonical ID to hilti::num_gap_bytes
+[debug/resolver] [hilti.hlt:25:5-25:29] declaration::Field "uint<64> num_data_chunks;" -> set declaration's canonical ID to hilti::num_data_chunks
[debug/resolver] [hilti.hlt:26:5-26:27] declaration::Field "uint<64> num_gap_bytes;" -> set linked type to T10
-[debug/resolver] [hilti.hlt:27:5-27:28] declaration::Field "uint<64> num_gap_chunks;" -> set declaration's canonical ID to hilti::num_gap_chunks
+[debug/resolver] [hilti.hlt:26:5-26:27] declaration::Field "uint<64> num_gap_bytes;" -> set declaration's canonical ID to hilti::num_gap_bytes
[debug/resolver] [hilti.hlt:27:5-27:28] declaration::Field "uint<64> num_gap_chunks;" -> set linked type to T10
+[debug/resolver] [hilti.hlt:27:5-27:28] declaration::Field "uint<64> num_gap_chunks;" -> set declaration's canonical ID to hilti::num_gap_chunks
[debug/resolver] [hilti.hlt:28:3-28:44] Attribute "&cxxname="hilti::rt::stream::Statistics"" -> Attribute "&cxxname="::hilti::rt::stream::Statistics""
-[debug/resolver] [hilti.hlt:23:1-28:45] declaration::Type "public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics";" -> set declaration's canonical ID to hilti::StreamStatistics
[debug/resolver] [hilti.hlt:23:1-28:45] declaration::Type "public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics";" -> set declaration's fully qualified ID to hilti::StreamStatistics
-[debug/resolver] -> [D14] declaration::Type hilti::StreamStatistics | public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics"; (hilti.hlt:23:1-28:45)
+[debug/resolver] -> [D14] declaration::Type | public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics"; (hilti.hlt:23:1-28:45)
[debug/resolver] [hilti.hlt:23:32-28:1] type::Struct "hilti::StreamStatistics" -> set type's declaration to D14
-[debug/resolver] [hilti.hlt:30:27-30:33] declaration::Parameter "any obj" -> set declaration's canonical ID to hilti::obj
+[debug/resolver] [hilti.hlt:23:1-28:45] declaration::Type "public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics";" -> set declaration's canonical ID to hilti::StreamStatistics
[debug/resolver] [hilti.hlt:30:27-30:33] declaration::Parameter "any obj" -> set declaration's fully qualified ID to obj
-[debug/resolver] [hilti.hlt:30:36-30:54] declaration::Parameter "bool newline = True" -> set declaration's canonical ID to hilti::newline
+[debug/resolver] [hilti.hlt:30:27-30:33] declaration::Parameter "any obj" -> set declaration's canonical ID to hilti::obj
[debug/resolver] [hilti.hlt:30:36-30:54] declaration::Parameter "bool newline = True" -> set declaration's fully qualified ID to newline
+[debug/resolver] [hilti.hlt:30:36-30:54] declaration::Parameter "bool newline = True" -> set declaration's canonical ID to hilti::newline
[debug/resolver] [hilti.hlt:30:57-30:83] Attribute "&cxxname="hilti::rt::print"" -> Attribute "&cxxname="::hilti::rt::print""
-[debug/resolver] [hilti.hlt:30:1-30:100] declaration::Function "declare public function void print(any obj, bool newline = True) &cxxname="::hilti::rt::print" &have_prototype;" -> set declaration's canonical ID to hilti::print
[debug/resolver] [hilti.hlt:30:1-30:100] declaration::Function "declare public function void print(any obj, bool newline = True) &cxxname="::hilti::rt::print" &have_prototype;" -> set declaration's fully qualified ID to hilti::print
[debug/resolver] [hilti.hlt:30:1-30:100] declaration::Function "declare public function void print(any obj, bool newline = True) &cxxname="::hilti::rt::print" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:31:32-31:41] declaration::Parameter "tuple<*> t" -> set declaration's canonical ID to hilti::t
+[debug/resolver] [hilti.hlt:30:1-30:100] declaration::Function "declare public function void print(any obj, bool newline = True) &cxxname="::hilti::rt::print" &have_prototype;" -> set declaration's canonical ID to hilti::print
[debug/resolver] [hilti.hlt:31:32-31:41] declaration::Parameter "tuple<*> t" -> set declaration's fully qualified ID to t
-[debug/resolver] [hilti.hlt:31:44-31:62] declaration::Parameter "bool newline = True" -> set declaration's canonical ID to hilti::newline_2
+[debug/resolver] [hilti.hlt:31:32-31:41] declaration::Parameter "tuple<*> t" -> set declaration's canonical ID to hilti::t
[debug/resolver] [hilti.hlt:31:44-31:62] declaration::Parameter "bool newline = True" -> set declaration's fully qualified ID to newline
+[debug/resolver] [hilti.hlt:31:44-31:62] declaration::Parameter "bool newline = True" -> set declaration's canonical ID to hilti::newline_2
[debug/resolver] [hilti.hlt:31:65-31:98] Attribute "&cxxname="hilti::rt::tuple::print"" -> Attribute "&cxxname="::hilti::rt::tuple::print""
-[debug/resolver] [hilti.hlt:31:1-31:115] declaration::Function "declare public function void printTuple(tuple<*> t, bool newline = True) &cxxname="::hilti::rt::tuple::print" &have_prototype;" -> set declaration's canonical ID to hilti::printTuple
[debug/resolver] [hilti.hlt:31:1-31:115] declaration::Function "declare public function void printTuple(tuple<*> t, bool newline = True) &cxxname="::hilti::rt::tuple::print" &have_prototype;" -> set declaration's fully qualified ID to hilti::printTuple
[debug/resolver] [hilti.hlt:31:1-31:115] declaration::Function "declare public function void printTuple(tuple<*> t, bool newline = True) &cxxname="::hilti::rt::tuple::print" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:33:27-33:43] declaration::Parameter "string dbg_stream" -> set declaration's canonical ID to hilti::dbg_stream
+[debug/resolver] [hilti.hlt:31:1-31:115] declaration::Function "declare public function void printTuple(tuple<*> t, bool newline = True) &cxxname="::hilti::rt::tuple::print" &have_prototype;" -> set declaration's canonical ID to hilti::printTuple
[debug/resolver] [hilti.hlt:33:27-33:43] declaration::Parameter "string dbg_stream" -> set declaration's fully qualified ID to dbg_stream
-[debug/resolver] [hilti.hlt:33:46-33:52] declaration::Parameter "any obj" -> set declaration's canonical ID to hilti::obj_2
+[debug/resolver] [hilti.hlt:33:27-33:43] declaration::Parameter "string dbg_stream" -> set declaration's canonical ID to hilti::dbg_stream
[debug/resolver] [hilti.hlt:33:46-33:52] declaration::Parameter "any obj" -> set declaration's fully qualified ID to obj
+[debug/resolver] [hilti.hlt:33:46-33:52] declaration::Parameter "any obj" -> set declaration's canonical ID to hilti::obj_2
[debug/resolver] [hilti.hlt:33:55-33:88] Attribute "&cxxname="hilti::rt::debug::print"" -> Attribute "&cxxname="::hilti::rt::debug::print""
-[debug/resolver] [hilti.hlt:33:1-33:105] declaration::Function "declare public function void debug(string dbg_stream, any obj) &cxxname="::hilti::rt::debug::print" &have_prototype;" -> set declaration's canonical ID to hilti::debug
[debug/resolver] [hilti.hlt:33:1-33:105] declaration::Function "declare public function void debug(string dbg_stream, any obj) &cxxname="::hilti::rt::debug::print" &have_prototype;" -> set declaration's fully qualified ID to hilti::debug
[debug/resolver] [hilti.hlt:33:1-33:105] declaration::Function "declare public function void debug(string dbg_stream, any obj) &cxxname="::hilti::rt::debug::print" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:34:33-34:49] declaration::Parameter "string dbg_stream" -> set declaration's canonical ID to hilti::dbg_stream_2
+[debug/resolver] [hilti.hlt:33:1-33:105] declaration::Function "declare public function void debug(string dbg_stream, any obj) &cxxname="::hilti::rt::debug::print" &have_prototype;" -> set declaration's canonical ID to hilti::debug
[debug/resolver] [hilti.hlt:34:33-34:49] declaration::Parameter "string dbg_stream" -> set declaration's fully qualified ID to dbg_stream
+[debug/resolver] [hilti.hlt:34:33-34:49] declaration::Parameter "string dbg_stream" -> set declaration's canonical ID to hilti::dbg_stream_2
[debug/resolver] [hilti.hlt:34:52-34:86] Attribute "&cxxname="hilti::rt::debug::indent"" -> Attribute "&cxxname="::hilti::rt::debug::indent""
-[debug/resolver] [hilti.hlt:34:1-34:103] declaration::Function "declare public function void debugIndent(string dbg_stream) &cxxname="::hilti::rt::debug::indent" &have_prototype;" -> set declaration's canonical ID to hilti::debugIndent
[debug/resolver] [hilti.hlt:34:1-34:103] declaration::Function "declare public function void debugIndent(string dbg_stream) &cxxname="::hilti::rt::debug::indent" &have_prototype;" -> set declaration's fully qualified ID to hilti::debugIndent
[debug/resolver] [hilti.hlt:34:1-34:103] declaration::Function "declare public function void debugIndent(string dbg_stream) &cxxname="::hilti::rt::debug::indent" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:35:33-35:49] declaration::Parameter "string dbg_stream" -> set declaration's canonical ID to hilti::dbg_stream_3
+[debug/resolver] [hilti.hlt:34:1-34:103] declaration::Function "declare public function void debugIndent(string dbg_stream) &cxxname="::hilti::rt::debug::indent" &have_prototype;" -> set declaration's canonical ID to hilti::debugIndent
[debug/resolver] [hilti.hlt:35:33-35:49] declaration::Parameter "string dbg_stream" -> set declaration's fully qualified ID to dbg_stream
+[debug/resolver] [hilti.hlt:35:33-35:49] declaration::Parameter "string dbg_stream" -> set declaration's canonical ID to hilti::dbg_stream_3
[debug/resolver] [hilti.hlt:35:52-35:86] Attribute "&cxxname="hilti::rt::debug::dedent"" -> Attribute "&cxxname="::hilti::rt::debug::dedent""
-[debug/resolver] [hilti.hlt:35:1-35:103] declaration::Function "declare public function void debugDedent(string dbg_stream) &cxxname="::hilti::rt::debug::dedent" &have_prototype;" -> set declaration's canonical ID to hilti::debugDedent
[debug/resolver] [hilti.hlt:35:1-35:103] declaration::Function "declare public function void debugDedent(string dbg_stream) &cxxname="::hilti::rt::debug::dedent" &have_prototype;" -> set declaration's fully qualified ID to hilti::debugDedent
[debug/resolver] [hilti.hlt:35:1-35:103] declaration::Function "declare public function void debugDedent(string dbg_stream) &cxxname="::hilti::rt::debug::dedent" &have_prototype;" -> creating function call operator
+[debug/resolver] [hilti.hlt:35:1-35:103] declaration::Function "declare public function void debugDedent(string dbg_stream) &cxxname="::hilti::rt::debug::dedent" &have_prototype;" -> set declaration's canonical ID to hilti::debugDedent
[debug/resolver] [hilti.hlt:37:36-37:75] Attribute "&cxxname="hilti::rt::time::current_time"" -> Attribute "&cxxname="::hilti::rt::time::current_time""
-[debug/resolver] [hilti.hlt:37:1-37:92] declaration::Function "declare public function time current_time() &cxxname="::hilti::rt::time::current_time" &have_prototype;" -> set declaration's canonical ID to hilti::current_time
[debug/resolver] [hilti.hlt:37:1-37:92] declaration::Function "declare public function time current_time() &cxxname="::hilti::rt::time::current_time" &have_prototype;" -> set declaration's fully qualified ID to hilti::current_time
[debug/resolver] [hilti.hlt:37:1-37:92] declaration::Function "declare public function time current_time() &cxxname="::hilti::rt::time::current_time" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:38:28-38:37] declaration::Parameter "uint<64> y" -> set declaration's canonical ID to hilti::y
+[debug/resolver] [hilti.hlt:37:1-37:92] declaration::Function "declare public function time current_time() &cxxname="::hilti::rt::time::current_time" &have_prototype;" -> set declaration's canonical ID to hilti::current_time
[debug/resolver] [hilti.hlt:38:28-38:37] declaration::Parameter "uint<64> y" -> set declaration's fully qualified ID to y
-[debug/resolver] [hilti.hlt:38:40-38:49] declaration::Parameter "uint<64> m" -> set declaration's canonical ID to hilti::m
+[debug/resolver] [hilti.hlt:38:28-38:37] declaration::Parameter "uint<64> y" -> set declaration's canonical ID to hilti::y
[debug/resolver] [hilti.hlt:38:40-38:49] declaration::Parameter "uint<64> m" -> set declaration's fully qualified ID to m
-[debug/resolver] [hilti.hlt:38:52-38:61] declaration::Parameter "uint<64> d" -> set declaration's canonical ID to hilti::d
+[debug/resolver] [hilti.hlt:38:40-38:49] declaration::Parameter "uint<64> m" -> set declaration's canonical ID to hilti::m
[debug/resolver] [hilti.hlt:38:52-38:61] declaration::Parameter "uint<64> d" -> set declaration's fully qualified ID to d
-[debug/resolver] [hilti.hlt:38:64-38:73] declaration::Parameter "uint<64> H" -> set declaration's canonical ID to hilti::H
+[debug/resolver] [hilti.hlt:38:52-38:61] declaration::Parameter "uint<64> d" -> set declaration's canonical ID to hilti::d
[debug/resolver] [hilti.hlt:38:64-38:73] declaration::Parameter "uint<64> H" -> set declaration's fully qualified ID to H
-[debug/resolver] [hilti.hlt:38:76-38:85] declaration::Parameter "uint<64> M" -> set declaration's canonical ID to hilti::M
+[debug/resolver] [hilti.hlt:38:64-38:73] declaration::Parameter "uint<64> H" -> set declaration's canonical ID to hilti::H
[debug/resolver] [hilti.hlt:38:76-38:85] declaration::Parameter "uint<64> M" -> set declaration's fully qualified ID to M
-[debug/resolver] [hilti.hlt:38:88-38:97] declaration::Parameter "uint<64> S" -> set declaration's canonical ID to hilti::S
+[debug/resolver] [hilti.hlt:38:76-38:85] declaration::Parameter "uint<64> M" -> set declaration's canonical ID to hilti::M
[debug/resolver] [hilti.hlt:38:88-38:97] declaration::Parameter "uint<64> S" -> set declaration's fully qualified ID to S
+[debug/resolver] [hilti.hlt:38:88-38:97] declaration::Parameter "uint<64> S" -> set declaration's canonical ID to hilti::S
[debug/resolver] [hilti.hlt:38:100-38:133] Attribute "&cxxname="hilti::rt::time::mktime"" -> Attribute "&cxxname="::hilti::rt::time::mktime""
-[debug/resolver] [hilti.hlt:38:1-38:150] declaration::Function "declare public function time mktime(uint<64> y, uint<64> m, uint<64> d, uint<64> H, uint<64> M, uint<64> S) &cxxname="::hilti::rt::time::mktime" &have_prototype;" -> set declaration's canonical ID to hilti::mktime
[debug/resolver] [hilti.hlt:38:1-38:150] declaration::Function "declare public function time mktime(uint<64> y, uint<64> m, uint<64> d, uint<64> H, uint<64> M, uint<64> S) &cxxname="::hilti::rt::time::mktime" &have_prototype;" -> set declaration's fully qualified ID to hilti::mktime
[debug/resolver] [hilti.hlt:38:1-38:150] declaration::Function "declare public function time mktime(uint<64> y, uint<64> m, uint<64> d, uint<64> H, uint<64> M, uint<64> S) &cxxname="::hilti::rt::time::mktime" &have_prototype;" -> creating function call operator
+[debug/resolver] [hilti.hlt:38:1-38:150] declaration::Function "declare public function time mktime(uint<64> y, uint<64> m, uint<64> d, uint<64> H, uint<64> M, uint<64> S) &cxxname="::hilti::rt::time::mktime" &have_prototype;" -> set declaration's canonical ID to hilti::mktime
[debug/resolver] [hilti.hlt:40:29-40:70] Attribute "&cxxname="hilti::rt::abort_with_backtrace"" -> Attribute "&cxxname="::hilti::rt::abort_with_backtrace""
-[debug/resolver] [hilti.hlt:40:1-40:87] declaration::Function "declare public function void abort() &cxxname="::hilti::rt::abort_with_backtrace" &have_prototype;" -> set declaration's canonical ID to hilti::abort
[debug/resolver] [hilti.hlt:40:1-40:87] declaration::Function "declare public function void abort() &cxxname="::hilti::rt::abort_with_backtrace" &have_prototype;" -> set declaration's fully qualified ID to hilti::abort
[debug/resolver] [hilti.hlt:40:1-40:87] declaration::Function "declare public function void abort() &cxxname="::hilti::rt::abort_with_backtrace" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:42:50-42:60] declaration::Parameter "string name" -> set declaration's canonical ID to hilti::name
+[debug/resolver] [hilti.hlt:40:1-40:87] declaration::Function "declare public function void abort() &cxxname="::hilti::rt::abort_with_backtrace" &have_prototype;" -> set declaration's canonical ID to hilti::abort
[debug/resolver] [hilti.hlt:42:50-42:60] declaration::Parameter "string name" -> set declaration's fully qualified ID to name
-[debug/resolver] [hilti.hlt:42:63-42:92] declaration::Parameter "optional> size = Null" -> set declaration's canonical ID to hilti::size
+[debug/resolver] [hilti.hlt:42:50-42:60] declaration::Parameter "string name" -> set declaration's canonical ID to hilti::name
[debug/resolver] [hilti.hlt:42:63-42:92] declaration::Parameter "optional> size = Null" -> set declaration's fully qualified ID to size
+[debug/resolver] [hilti.hlt:42:63-42:92] declaration::Parameter "optional> size = Null" -> set declaration's canonical ID to hilti::size
[debug/resolver] [hilti.hlt:42:95-42:131] Attribute "&cxxname="hilti::rt::profiler::start"" -> Attribute "&cxxname="::hilti::rt::profiler::start""
-[debug/resolver] [hilti.hlt:42:1-42:148] declaration::Function "declare public function optional profiler_start(string name, optional> size = Null) &cxxname="::hilti::rt::profiler::start" &have_prototype;" -> set declaration's canonical ID to hilti::profiler_start
[debug/resolver] [hilti.hlt:42:1-42:148] declaration::Function "declare public function optional profiler_start(string name, optional> size = Null) &cxxname="::hilti::rt::profiler::start" &have_prototype;" -> set declaration's fully qualified ID to hilti::profiler_start
[debug/resolver] [hilti.hlt:42:1-42:148] declaration::Function "declare public function optional profiler_start(string name, optional> size = Null) &cxxname="::hilti::rt::profiler::start" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:43:35-43:54] declaration::Parameter "optional p" -> set declaration's canonical ID to hilti::p
+[debug/resolver] [hilti.hlt:42:1-42:148] declaration::Function "declare public function optional profiler_start(string name, optional> size = Null) &cxxname="::hilti::rt::profiler::start" &have_prototype;" -> set declaration's canonical ID to hilti::profiler_start
[debug/resolver] [hilti.hlt:43:35-43:54] declaration::Parameter "optional p" -> set declaration's fully qualified ID to p
-[debug/resolver] [hilti.hlt:43:57-43:86] declaration::Parameter "optional> size = Null" -> set declaration's canonical ID to hilti::size_2
+[debug/resolver] [hilti.hlt:43:35-43:54] declaration::Parameter "optional p" -> set declaration's canonical ID to hilti::p
[debug/resolver] [hilti.hlt:43:57-43:86] declaration::Parameter "optional> size = Null" -> set declaration's fully qualified ID to size
+[debug/resolver] [hilti.hlt:43:57-43:86] declaration::Parameter "optional> size = Null" -> set declaration's canonical ID to hilti::size_2
[debug/resolver] [hilti.hlt:43:89-43:124] Attribute "&cxxname="hilti::rt::profiler::stop"" -> Attribute "&cxxname="::hilti::rt::profiler::stop""
-[debug/resolver] [hilti.hlt:43:1-43:141] declaration::Function "declare public function void profiler_stop(optional p, optional> size = Null) &cxxname="::hilti::rt::profiler::stop" &have_prototype;" -> set declaration's canonical ID to hilti::profiler_stop
[debug/resolver] [hilti.hlt:43:1-43:141] declaration::Function "declare public function void profiler_stop(optional p, optional> size = Null) &cxxname="::hilti::rt::profiler::stop" &have_prototype;" -> set declaration's fully qualified ID to hilti::profiler_stop
[debug/resolver] [hilti.hlt:43:1-43:141] declaration::Function "declare public function void profiler_stop(optional p, optional> size = Null) &cxxname="::hilti::rt::profiler::stop" &have_prototype;" -> creating function call operator
+[debug/resolver] [hilti.hlt:43:1-43:141] declaration::Function "declare public function void profiler_stop(optional p, optional> size = Null) &cxxname="::hilti::rt::profiler::stop" &have_prototype;" -> set declaration's canonical ID to hilti::profiler_stop
[debug/resolver] [hilti.hlt:46:35-46:65] Attribute "&cxxname="hilti::rt::Exception"" -> Attribute "&cxxname="::hilti::rt::Exception""
-[debug/resolver] [hilti.hlt:46:1-46:66] declaration::Type "public type Exception = exception &cxxname="::hilti::rt::Exception";" -> set declaration's canonical ID to hilti::Exception
[debug/resolver] [hilti.hlt:46:1-46:66] declaration::Type "public type Exception = exception &cxxname="::hilti::rt::Exception";" -> set declaration's fully qualified ID to hilti::Exception
-[debug/resolver] -> [D15] declaration::Type hilti::Exception | public type Exception = exception &cxxname="::hilti::rt::Exception"; (hilti.hlt:46:1-46:66)
+[debug/resolver] -> [D15] declaration::Type | public type Exception = exception &cxxname="::hilti::rt::Exception"; (hilti.hlt:46:1-46:66)
[debug/resolver] [hilti.hlt:46:25-46:33] type::Exception "hilti::Exception" -> set type's declaration to D15
+[debug/resolver] [hilti.hlt:46:1-46:66] declaration::Type "public type Exception = exception &cxxname="::hilti::rt::Exception";" -> set declaration's canonical ID to hilti::Exception
[debug/resolver] [hilti.hlt:49:55-49:79] Attribute "&cxxname="std::exception"" -> Attribute "&cxxname="::std::exception""
-[debug/resolver] [hilti.hlt:49:1-49:80] declaration::Type "public type SystemException = [exception :Exception &cxxname="::std::exception";" -> set declaration's canonical ID to hilti::SystemException
[debug/resolver] [hilti.hlt:49:1-49:80] declaration::Type "public type SystemException = [exception :Exception &cxxname="::std::exception";" -> set declaration's fully qualified ID to hilti::SystemException
-[debug/resolver] -> [D16] declaration::Type hilti::SystemException | public type SystemException = [exception :Exception &cxxname="::std::exception"; (hilti.hlt:49:1-49:80)
+[debug/resolver] -> [D16] declaration::Type | public type SystemException = [exception :Exception &cxxname="::std::exception"; (hilti.hlt:49:1-49:80)
[debug/resolver] [hilti.hlt:49:31-49:53] type::Exception "hilti::SystemException" -> set type's declaration to D16
+[debug/resolver] [hilti.hlt:49:1-49:80] declaration::Type "public type SystemException = [exception :Exception &cxxname="::std::exception";" -> set declaration's canonical ID to hilti::SystemException
[debug/resolver] [hilti.hlt:53:52-53:85] Attribute "&cxxname="hilti::rt::RuntimeError"" -> Attribute "&cxxname="::hilti::rt::RuntimeError""
-[debug/resolver] [hilti.hlt:53:1-53:86] declaration::Type "public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError";" -> set declaration's canonical ID to hilti::RuntimeError
[debug/resolver] [hilti.hlt:53:1-53:86] declaration::Type "public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError";" -> set declaration's fully qualified ID to hilti::RuntimeError
-[debug/resolver] -> [D17] declaration::Type hilti::RuntimeError | public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError"; (hilti.hlt:53:1-53:86)
+[debug/resolver] -> [D17] declaration::Type | public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError"; (hilti.hlt:53:1-53:86)
[debug/resolver] [hilti.hlt:53:28-53:50] type::Exception "hilti::RuntimeError" -> set type's declaration to D17
+[debug/resolver] [hilti.hlt:53:1-53:86] declaration::Type "public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError";" -> set declaration's canonical ID to hilti::RuntimeError
[debug/resolver] [hilti.hlt:56:58-56:97] Attribute "&cxxname="hilti::rt::RecoverableFailure"" -> Attribute "&cxxname="::hilti::rt::RecoverableFailure""
-[debug/resolver] [hilti.hlt:56:1-56:98] declaration::Type "public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure";" -> set declaration's canonical ID to hilti::RecoverableFailure
[debug/resolver] [hilti.hlt:56:1-56:98] declaration::Type "public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure";" -> set declaration's fully qualified ID to hilti::RecoverableFailure
-[debug/resolver] -> [D18] declaration::Type hilti::RecoverableFailure | public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure"; (hilti.hlt:56:1-56:98)
+[debug/resolver] -> [D18] declaration::Type | public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure"; (hilti.hlt:56:1-56:98)
[debug/resolver] [hilti.hlt:56:34-56:56] type::Exception "hilti::RecoverableFailure" -> set type's declaration to D18
+[debug/resolver] [hilti.hlt:56:1-56:98] declaration::Type "public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure";" -> set declaration's canonical ID to hilti::RecoverableFailure
[debug/resolver] [hilti.hlt:59:51-59:83] Attribute "&cxxname="hilti::rt::MissingData"" -> Attribute "&cxxname="::hilti::rt::MissingData""
-[debug/resolver] [hilti.hlt:59:1-59:84] declaration::Type "public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData";" -> set declaration's canonical ID to hilti::MissingData
[debug/resolver] [hilti.hlt:59:1-59:84] declaration::Type "public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData";" -> set declaration's fully qualified ID to hilti::MissingData
-[debug/resolver] -> [D19] declaration::Type hilti::MissingData | public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData"; (hilti.hlt:59:1-59:84)
+[debug/resolver] -> [D19] declaration::Type | public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData"; (hilti.hlt:59:1-59:84)
[debug/resolver] [hilti.hlt:59:27-59:49] type::Exception "hilti::MissingData" -> set type's declaration to D19
-[debug/resolver] [hilti.hlt:62:38-62:59] declaration::Parameter "hilti::SystemException except" -> set declaration's canonical ID to hilti::except
+[debug/resolver] [hilti.hlt:59:1-59:84] declaration::Type "public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData";" -> set declaration's canonical ID to hilti::MissingData
[debug/resolver] [hilti.hlt:62:38-62:59] declaration::Parameter "hilti::SystemException except" -> set declaration's fully qualified ID to except
+[debug/resolver] [hilti.hlt:62:38-62:59] declaration::Parameter "hilti::SystemException except" -> set declaration's canonical ID to hilti::except
[debug/resolver] [hilti.hlt:62:62-62:98] Attribute "&cxxname="hilti::rt::exception::what"" -> Attribute "&cxxname="::hilti::rt::exception::what""
-[debug/resolver] [hilti.hlt:62:1-62:115] declaration::Function "declare public function string exception_what(hilti::SystemException except) &cxxname="::hilti::rt::exception::what" &have_prototype;" -> set declaration's canonical ID to hilti::exception_what
[debug/resolver] [hilti.hlt:62:1-62:115] declaration::Function "declare public function string exception_what(hilti::SystemException except) &cxxname="::hilti::rt::exception::what" &have_prototype;" -> set declaration's fully qualified ID to hilti::exception_what
[debug/resolver] [hilti.hlt:62:1-62:115] declaration::Function "declare public function string exception_what(hilti::SystemException except) &cxxname="::hilti::rt::exception::what" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:63:38-63:62] declaration::Parameter "hilti::RecoverableFailure except" -> set declaration's canonical ID to hilti::except_2
+[debug/resolver] [hilti.hlt:62:1-62:115] declaration::Function "declare public function string exception_what(hilti::SystemException except) &cxxname="::hilti::rt::exception::what" &have_prototype;" -> set declaration's canonical ID to hilti::exception_what
[debug/resolver] [hilti.hlt:63:38-63:62] declaration::Parameter "hilti::RecoverableFailure except" -> set declaration's fully qualified ID to except
+[debug/resolver] [hilti.hlt:63:38-63:62] declaration::Parameter "hilti::RecoverableFailure except" -> set declaration's canonical ID to hilti::except_2
[debug/resolver] [hilti.hlt:63:65-63:101] Attribute "&cxxname="hilti::rt::exception::what"" -> Attribute "&cxxname="::hilti::rt::exception::what""
-[debug/resolver] [hilti.hlt:63:1-63:118] declaration::Function "declare public function string exception_what(hilti::RecoverableFailure except) &cxxname="::hilti::rt::exception::what" &have_prototype;" -> set declaration's canonical ID to hilti::exception_what_2
[debug/resolver] [hilti.hlt:63:1-63:118] declaration::Function "declare public function string exception_what(hilti::RecoverableFailure except) &cxxname="::hilti::rt::exception::what" &have_prototype;" -> set declaration's fully qualified ID to hilti::exception_what
[debug/resolver] [hilti.hlt:63:1-63:118] declaration::Function "declare public function string exception_what(hilti::RecoverableFailure except) &cxxname="::hilti::rt::exception::what" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:66:39-66:60] declaration::Parameter "hilti::SystemException except" -> set declaration's canonical ID to hilti::except_3
+[debug/resolver] [hilti.hlt:63:1-63:118] declaration::Function "declare public function string exception_what(hilti::RecoverableFailure except) &cxxname="::hilti::rt::exception::what" &have_prototype;" -> set declaration's canonical ID to hilti::exception_what_2
[debug/resolver] [hilti.hlt:66:39-66:60] declaration::Parameter "hilti::SystemException except" -> set declaration's fully qualified ID to except
+[debug/resolver] [hilti.hlt:66:39-66:60] declaration::Parameter "hilti::SystemException except" -> set declaration's canonical ID to hilti::except_3
[debug/resolver] [hilti.hlt:66:63-66:100] Attribute "&cxxname="hilti::rt::exception::where"" -> Attribute "&cxxname="::hilti::rt::exception::where""
-[debug/resolver] [hilti.hlt:66:1-66:117] declaration::Function "declare public function string exception_where(hilti::SystemException except) &cxxname="::hilti::rt::exception::where" &have_prototype;" -> set declaration's canonical ID to hilti::exception_where
[debug/resolver] [hilti.hlt:66:1-66:117] declaration::Function "declare public function string exception_where(hilti::SystemException except) &cxxname="::hilti::rt::exception::where" &have_prototype;" -> set declaration's fully qualified ID to hilti::exception_where
[debug/resolver] [hilti.hlt:66:1-66:117] declaration::Function "declare public function string exception_where(hilti::SystemException except) &cxxname="::hilti::rt::exception::where" &have_prototype;" -> creating function call operator
-[debug/resolver] [hilti.hlt:67:39-67:63] declaration::Parameter "hilti::RecoverableFailure except" -> set declaration's canonical ID to hilti::except_4
+[debug/resolver] [hilti.hlt:66:1-66:117] declaration::Function "declare public function string exception_where(hilti::SystemException except) &cxxname="::hilti::rt::exception::where" &have_prototype;" -> set declaration's canonical ID to hilti::exception_where
[debug/resolver] [hilti.hlt:67:39-67:63] declaration::Parameter "hilti::RecoverableFailure except" -> set declaration's fully qualified ID to except
+[debug/resolver] [hilti.hlt:67:39-67:63] declaration::Parameter "hilti::RecoverableFailure except" -> set declaration's canonical ID to hilti::except_4
[debug/resolver] [hilti.hlt:67:66-67:103] Attribute "&cxxname="hilti::rt::exception::where"" -> Attribute "&cxxname="::hilti::rt::exception::where""
-[debug/resolver] [hilti.hlt:67:1-67:120] declaration::Function "declare public function string exception_where(hilti::RecoverableFailure except) &cxxname="::hilti::rt::exception::where" &have_prototype;" -> set declaration's canonical ID to hilti::exception_where_2
[debug/resolver] [hilti.hlt:67:1-67:120] declaration::Function "declare public function string exception_where(hilti::RecoverableFailure except) &cxxname="::hilti::rt::exception::where" &have_prototype;" -> set declaration's fully qualified ID to hilti::exception_where
[debug/resolver] [hilti.hlt:67:1-67:120] declaration::Function "declare public function string exception_where(hilti::RecoverableFailure except) &cxxname="::hilti::rt::exception::where" &have_prototype;" -> creating function call operator
+[debug/resolver] [hilti.hlt:67:1-67:120] declaration::Function "declare public function string exception_where(hilti::RecoverableFailure except) &cxxname="::hilti::rt::exception::where" &have_prototype;" -> set declaration's canonical ID to hilti::exception_where_2
[debug/resolver] [hilti.hlt:3:1-68:1] declaration::Module "module hilti { public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder"; public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder"; public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side"; public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily"; public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type"; public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol"; public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset"; public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy"; public type Captures = vector; public type Profiler = Profiler &cxxname="::hilti::rt::Profiler"; public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState"; public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics"; public type Exception = exception &cxxname="::hilti::rt::Exception"; public type SystemException = [exception :Exception &cxxname="::std::exception"; public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError"; public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure"; public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData"; declare public function void print(any obj, bool newline = True) &cxxname="::hilti::rt::print" &have_prototype; declare public function void printTuple(tuple<*> t, bool newline = True) &cxxname="::hilti::rt::tuple::print" &have_prototype; declare public function void debug(string dbg_stream, any obj) &cxxname="::hilti::rt::debug::print" &have_prototype; declare public function void debugIndent(string dbg_stream) &cxxname="::hilti::rt::debug::indent" &have_prototype; declare public function void debugDedent(string dbg_stream) &cxxname="::hilti::rt::debug::dedent" &have_prototype; declare public function time current_time() &cxxname="::hilti::rt::time::current_time" &have_prototype; declare public function time mktime(uint<64> y, uint<64> m, uint<64> d, uint<64> H, uint<64> M, uint<64> S) &cxxname="::hilti::rt::time::mktime" &have_prototype; declare public function void abort() &cxxname="::hilti::rt::abort_with_backtrace" &have_prototype; declare public function optional profiler_start(string name, optional> size = Null) &cxxname="::hilti::rt::profiler::start" &have_prototype; declare public function void profiler_stop(optional p, optional> size = Null) &cxxname="::hilti::rt::profiler::stop" &have_prototype; declare public function string exception_what(SystemException except) &cxxname="::hilti::rt::exception::what" &have_prototype; declare public function string exception_what(RecoverableFailure except) &cxxname="::hilti::rt::exception::what" &have_prototype; declare public function string exception_where(SystemException except) &cxxname="::hilti::rt::exception::where" &have_prototype; declare public function string exception_where(RecoverableFailure except) &cxxname="::hilti::rt::exception::where" &have_prototype; }" -> set declaration's fully qualified ID to hilti
[debug/resolver] [hilti.hlt:3:1-68:1] declaration::Module "module hilti { public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder"; public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder"; public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side"; public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily"; public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type"; public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol"; public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset"; public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy"; public type Captures = vector; public type Profiler = Profiler &cxxname="::hilti::rt::Profiler"; public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState"; public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics"; public type Exception = exception &cxxname="::hilti::rt::Exception"; public type SystemException = [exception :Exception &cxxname="::std::exception"; public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError"; public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure"; public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData"; declare public function void print(any obj, bool newline = True) &cxxname="::hilti::rt::print" &have_prototype; declare public function void printTuple(tuple<*> t, bool newline = True) &cxxname="::hilti::rt::tuple::print" &have_prototype; declare public function void debug(string dbg_stream, any obj) &cxxname="::hilti::rt::debug::print" &have_prototype; declare public function void debugIndent(string dbg_stream) &cxxname="::hilti::rt::debug::indent" &have_prototype; declare public function void debugDedent(string dbg_stream) &cxxname="::hilti::rt::debug::dedent" &have_prototype; declare public function time current_time() &cxxname="::hilti::rt::time::current_time" &have_prototype; declare public function time mktime(uint<64> y, uint<64> m, uint<64> d, uint<64> H, uint<64> M, uint<64> S) &cxxname="::hilti::rt::time::mktime" &have_prototype; declare public function void abort() &cxxname="::hilti::rt::abort_with_backtrace" &have_prototype; declare public function optional profiler_start(string name, optional> size = Null) &cxxname="::hilti::rt::profiler::start" &have_prototype; declare public function void profiler_stop(optional p, optional> size = Null) &cxxname="::hilti::rt::profiler::stop" &have_prototype; declare public function string exception_what(SystemException except) &cxxname="::hilti::rt::exception::what" &have_prototype; declare public function string exception_what(RecoverableFailure except) &cxxname="::hilti::rt::exception::what" &have_prototype; declare public function string exception_where(SystemException except) &cxxname="::hilti::rt::exception::where" &have_prototype; declare public function string exception_where(RecoverableFailure except) &cxxname="::hilti::rt::exception::where" &have_prototype; }" -> set module's canonical ID to hilti
[debug/resolver] -> [D20] declaration::Module hilti | module hilti { public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder"; public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder"; public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side"; public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily"; public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type"; public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol"; public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset"; public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy"; public type Captures = vector; public type Profiler = Profiler &cxxname="::hilti::rt::Profiler"; public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState"; public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics"; public type Exception = exception &cxxname="::hilti::rt::Exception"; public type SystemException = [exception :Exception &cxxname="::std::exception"; public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError"; public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure"; public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData"; declare public function void print(any obj, bool newline = True) &cxxname="::hilti::rt::print" &have_prototype; declare public function void printTuple(tuple<*> t, bool newline = True) &cxxname="::hilti::rt::tuple::print" &have_prototype; declare public function void debug(string dbg_stream, any obj) &cxxname="::hilti::rt::debug::print" &have_prototype; declare public function void debugIndent(string dbg_stream) &cxxname="::hilti::rt::debug::indent" &have_prototype; declare public function void debugDedent(string dbg_stream) &cxxname="::hilti::rt::debug::dedent" &have_prototype; declare public function time current_time() &cxxname="::hilti::rt::time::current_time" &have_prototype; declare public function time mktime(uint<64> y, uint<64> m, uint<64> d, uint<64> H, uint<64> M, uint<64> S) &cxxname="::hilti::rt::time::mktime" &have_prototype; declare public function void abort() &cxxname="::hilti::rt::abort_with_backtrace" &have_prototype; declare public function optional profiler_start(string name, optional> size = Null) &cxxname="::hilti::rt::profiler::start" &have_prototype; declare public function void profiler_stop(optional p, optional> size = Null) &cxxname="::hilti::rt::profiler::stop" &have_prototype; declare public function string exception_what(SystemException except) &cxxname="::hilti::rt::exception::what" &have_prototype; declare public function string exception_what(RecoverableFailure except) &cxxname="::hilti::rt::exception::what" &have_prototype; declare public function string exception_where(SystemException except) &cxxname="::hilti::rt::exception::where" &have_prototype; declare public function string exception_where(RecoverableFailure except) &cxxname="::hilti::rt::exception::where" &have_prototype; } (hilti.hlt:3:1-68:1)
[debug/resolver] [hilti.hlt:3:1-68:1] declaration::Module "module hilti { public type BitOrder = enum { LSB0 = 0, MSB0 = 1 } &cxxname="::hilti::rt::integer::BitOrder"; public type ByteOrder = enum { Little = 0, Big = 1, Network = 2, Host = 3 } &cxxname="::hilti::rt::ByteOrder"; public type Side = enum { Left = 0, Right = 1, Both = 2 } &cxxname="::hilti::rt::bytes::Side"; public type AddressFamily = enum { IPv4 = 0, IPv6 = 1 } &cxxname="::hilti::rt::AddressFamily"; public type RealType = enum { IEEE754_Single = 0, IEEE754_Double = 1 } &cxxname="::hilti::rt::real::Type"; public type Protocol = enum { TCP = 0, UDP = 1, ICMP = 2 } &cxxname="::hilti::rt::Protocol"; public type Charset = enum { ASCII = 0, UTF8 = 1, UTF16LE = 2, UTF16BE = 3 } &cxxname="::hilti::rt::unicode::Charset"; public type DecodeErrorStrategy = enum { IGNORE = 0, REPLACE = 1, STRICT = 2 } &cxxname="::hilti::rt::unicode::DecodeErrorStrategy"; public type Captures = vector; public type Profiler = Profiler &cxxname="::hilti::rt::Profiler"; public type MatchState = struct { method Captures captures(view data); } &cxxname="::hilti::rt::regexp::MatchState"; public type StreamStatistics = struct { uint<64> num_data_bytes; uint<64> num_data_chunks; uint<64> num_gap_bytes; uint<64> num_gap_chunks; } &cxxname="::hilti::rt::stream::Statistics"; public type Exception = exception &cxxname="::hilti::rt::Exception"; public type SystemException = [exception :Exception &cxxname="::std::exception"; public type RuntimeError = [exception :Exception &cxxname="::hilti::rt::RuntimeError"; public type RecoverableFailure = [exception :Exception &cxxname="::hilti::rt::RecoverableFailure"; public type MissingData = [exception :Exception &cxxname="::hilti::rt::MissingData"; declare public function void print(any obj, bool newline = True) &cxxname="::hilti::rt::print" &have_prototype; declare public function void printTuple(tuple<*> t, bool newline = True) &cxxname="::hilti::rt::tuple::print" &have_prototype; declare public function void debug(string dbg_stream, any obj) &cxxname="::hilti::rt::debug::print" &have_prototype; declare public function void debugIndent(string dbg_stream) &cxxname="::hilti::rt::debug::indent" &have_prototype; declare public function void debugDedent(string dbg_stream) &cxxname="::hilti::rt::debug::dedent" &have_prototype; declare public function time current_time() &cxxname="::hilti::rt::time::current_time" &have_prototype; declare public function time mktime(uint<64> y, uint<64> m, uint<64> d, uint<64> H, uint<64> M, uint<64> S) &cxxname="::hilti::rt::time::mktime" &have_prototype; declare public function void abort() &cxxname="::hilti::rt::abort_with_backtrace" &have_prototype; declare public function optional profiler_start(string name, optional> size = Null) &cxxname="::hilti::rt::profiler::start" &have_prototype; declare public function void profiler_stop(optional p, optional> size = Null) &cxxname="::hilti::rt::profiler::stop" &have_prototype; declare public function string exception_what(SystemException except) &cxxname="::hilti::rt::exception::what" &have_prototype; declare public function string exception_what(RecoverableFailure except) &cxxname="::hilti::rt::exception::what" &have_prototype; declare public function string exception_where(SystemException except) &cxxname="::hilti::rt::exception::where" &have_prototype; declare public function string exception_where(RecoverableFailure except) &cxxname="::hilti::rt::exception::where" &have_prototype; }" -> set module's declaration index to D20
-[debug/resolver] [bar.hlt:4:1-4:11] declaration::ImportedModule "import Foo;" -> set declaration's canonical ID to Bar::Foo
[debug/resolver] [bar.hlt:4:1-4:11] declaration::ImportedModule "import Foo;" -> set declaration's fully qualified ID to Bar::Foo
[debug/resolver] [bar.hlt:4:1-4:11] declaration::ImportedModule "import Foo;" -> imported module Foo
-[debug/resolver] [bar.hlt:6:1-6:26] declaration::Type "public type Bar1 = string;" -> set declaration's canonical ID to Bar::Bar1
+[debug/resolver] [bar.hlt:4:1-4:11] declaration::ImportedModule "import Foo;" -> set declaration's canonical ID to Bar::Foo
[debug/resolver] [bar.hlt:6:1-6:26] declaration::Type "public type Bar1 = string;" -> set declaration's fully qualified ID to Bar::Bar1
-[debug/resolver] -> [D21] declaration::Type Bar::Bar1 | public type Bar1 = string; (bar.hlt:6:1-6:26)
+[debug/resolver] -> [D21] declaration::Type | public type Bar1 = string; (bar.hlt:6:1-6:26)
[debug/resolver] [bar.hlt:6:20-6:25] type::String "string" -> set type's declaration to D21
-[debug/resolver] [bar.hlt:7:1-7:29] declaration::Type "public type Bar2 = Foo::Foo1;" -> set declaration's canonical ID to Bar::Bar2
+[debug/resolver] [bar.hlt:6:1-6:26] declaration::Type "public type Bar1 = string;" -> set declaration's canonical ID to Bar::Bar1
[debug/resolver] [bar.hlt:7:1-7:29] declaration::Type "public type Bar2 = Foo::Foo1;" -> set declaration's fully qualified ID to Bar::Bar2
-[debug/resolver] [bar.hlt:9:21-9:28] declaration::Parameter "Bar1 bar" -> set declaration's canonical ID to Bar::bar
+[debug/resolver] [bar.hlt:7:1-7:29] declaration::Type "public type Bar2 = Foo::Foo1;" -> set declaration's canonical ID to Bar::Bar2
[debug/resolver] [bar.hlt:9:21-9:28] declaration::Parameter "Bar1 bar" -> set declaration's fully qualified ID to bar
-[debug/resolver] [bar.hlt:9:31-9:43] declaration::Parameter "Foo::Foo1 foo" -> set declaration's canonical ID to Bar::foo
+[debug/resolver] [bar.hlt:9:21-9:28] declaration::Parameter "Bar1 bar" -> set declaration's canonical ID to Bar::bar
[debug/resolver] [bar.hlt:9:31-9:43] declaration::Parameter "Foo::Foo1 foo" -> set declaration's fully qualified ID to foo
-[debug/resolver] [bar.hlt:9:1-9:59] declaration::Function "function string bar(Bar1 bar, Foo::Foo1 foo) { return ""; }" -> set declaration's canonical ID to Bar::bar_2
+[debug/resolver] [bar.hlt:9:31-9:43] declaration::Parameter "Foo::Foo1 foo" -> set declaration's canonical ID to Bar::foo
[debug/resolver] [bar.hlt:9:1-9:59] declaration::Function "function string bar(Bar1 bar, Foo::Foo1 foo) { return ""; }" -> set declaration's fully qualified ID to Bar::bar
+[debug/resolver] [bar.hlt:9:1-9:59] declaration::Function "function string bar(Bar1 bar, Foo::Foo1 foo) { return ""; }" -> set declaration's canonical ID to Bar::bar_2
[debug/resolver] [bar.hlt:2:1-11:1] declaration::Module "module Bar { import Foo; public type Bar1 = string; public type Bar2 = Foo::Foo1; function string bar(Bar1 bar, Foo::Foo1 foo) { return ""; } }" -> set declaration's fully qualified ID to Bar
[debug/resolver] [bar.hlt:2:1-11:1] declaration::Module "module Bar { import Foo; public type Bar1 = string; public type Bar2 = Foo::Foo1; function string bar(Bar1 bar, Foo::Foo1 foo) { return ""; } }" -> set module's canonical ID to Bar
[debug/resolver] -> [D22] declaration::Module Bar | module Bar { import Foo; public type Bar1 = string; public type Bar2 = Foo::Foo1; function string bar(Bar1 bar, Foo::Foo1 foo) { return ""; } } (bar.hlt:2:1-11:1)