Tested online in the Test Drive using "React JSX":
<div prop={{
test: <p a={{}} />
}}>
</div>

Same result using
<div prop={{
test: <p a={() => {}} />
}}>
</div>
<div prop={{
test: <p a={[{}]} />
}}>
</div>
This works:
<div prop={{
test: <p a={123} />
}}>
</div>

So I'd assume that the issue lies in the curly braces.