On 6/13/23 10:02 PM, Steven Schveighoffer wrote:
I need to diagnose further, but most *likely* the problem is that the
typeinfo being passed is incorrect (I believe it's a TypeInfo_Shared,
but the function is expecting a TypeInfo_AssociativeArray)
Further diagnosis is that the `TypeInfo` being passed in is still
wrapped in a `TypeInfo_Shared`.
If you do `const aa = ["abc": "123"]` or `immutable aa = ["abc": "123"]`
then the typeinfo is not wrapped in `TypeInfo_Const` or `TypeInfo_Shared`
This explains exactly why there is a bug.
I put the following line at the top of that function, and it fails in
the `shared` case:
```d
assert(typeid(ti) == typeid(TypeInfo_AssociativeArray));
```
If there isn't a bug I'll file one.
-Steve