I haven't been able to reproduce this problem.
Do you have any customization of the library or add-ons in your code that I need to know of?
Did you make sure you have all the latest files from the SDK? (you did have the problem of not updating all the files before too ?)
Here's the test case I wrote to attempt to reproduce the problem. Does this reproduce it for you?
{
engine = asCreateScriptEngine();
engine->SetMessageCallback(asMETHOD(CBufferedOutStream, Callback), &bout, asCALL_THISCALL);
bout.buffer = "";
RegisterStdString(engine); // Register string type as ref type
RegisterScriptArray(engine, false);
RegisterScriptDictionary(engine);
mod = engine->GetModule("test", asGM_ALWAYS_CREATE);
mod->AddScriptSection("test",
"dictionary g_thing = { \n"
" { 'key', 'value' } \n"
"}; \n");
r = mod->Build();
if (r < 0)
TEST_FAILED;
if (bout.buffer != "")
{
PRINTF("%s", bout.buffer.c_str());
TEST_FAILED;
}
engine->ShutDownAndRelease();
}
Note, I have other test cases already with global dictionaries being initialized like this, so it really shouldn't be something that slipped through the regression testing done with each check-in.