The empty answer is correct.
When you solve(), you are asking for the set of values for variables that makes all of the equations true simultaneously. But your equations are all in the single variable x, and there is no one value of x that can satisfy all of the equations simultaneously, so the empty answer is correct.
You should be solving the equations individually:
sol = arrayfun(@solve, g, 'uniform', 0)
The 3rd and 10th entries for the result will be empty. The reason for that is not that there is no value of x that satisfies the equation, but rather that there is no value for x that satisfies the constraints and the equations generated by those theta -- those particular theta require complex-valued x, such as pi - log(55113/1000)*1i