Does syntactic (structural) ambiguity always come with semantic ambiguity, or is semantic ambiguity always due to syntactic ambiguity? Or are both statements correct?
Syntactic ambiguity can imply semantic ambiguity:
— He caught the bird in his pyjamas.
— What was the bird doing in his pyjamas?
(Where does the preposition phrase attach?)
But whether you can have syntactic ambiguity without entailing semantic ambiguity may depend on how you'd represent the sentence semantically. Here's one intuitive example:
— I was rafting down a fast flowing river...
— Wait. A fast-flowing river, i.e. a river that flows fast?
— No, a fast, flowing river, i.e. a flowing river that is fast.
The logical representation of those two options would show the difference, but could they ever pick out ("mean") different set of entities?
To give a more extreme example, here the scope of the adjective is ambiguous:
Richard brought edible candles and food.
Supposing that we define food as what is edible, here even the logical representation might show no difference: if food is all X such that X is edible, then the ambiguity about whether to add the predicate "X is edible" to food may be defined as redundant in the language...
Meanwhile, however, it's very easy to have semantic ambiguity without syntactic ambiguity thanks to polysemy. Similar to TKR's suggestion in a comment:
This sentence clearly has only one tree (per theoretical framework 🙂), but the meaning is also a function of the identity of the constituents, so whether this is finished "done your work" or finished "done for" is ambiguous.
If you want, there could be scenarios where a syntactic ambiguity makes no difference in meaning, if you think of the syntactically ambiguous expression
which could mean both
and thus is syntactically ambiguous - but both readings evaluate to the same result (4), and thus are semantically not ambiguous, in a sense (in the sense where one identifies "meaning" with "extension"). This is because addition, although a binary operation, is associtative:
(a+b)+c = a+(b+c).
(One could make up a more linguistic examples with e.g. "and", but then it's less clear that 1) associativity really holds and that 2) the conjunction is strictly binary and could not be viewed as ternary which would not yield this ambiguity.)
However, the statement that semantic ambiguity must always be due to syntactic ambiguity is certainly untrue: The two different readings of "He's mad" that TKR provides in their comment are due to the semantic ambiguity of the lexical item "mad" - this is called lexical ambiguity - while the syntactic structure is completely identical.
Sometimes yet another kind of ambiguity called scope ambiguity is distinguished: The sentence
Every child sang a song
could be read as
For every child it holds that it sang some song (but possibly different ones among the children)
There is a particular song that was sung by every child (all children sing the same song)
which differ w.r.t. the scopal relations of the quantifiers "every" and "a" (scope = the part of the sentence that is under the influence of the operator) and thus differ in meaning, while the underlying sentence is (in terms of linguistic surface syntax with IP, VP etc.) structurally unambiguous and doesn't contain any lexcially ambiguous items either.