function/stdlib: Fix panic with unknown set values #59
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The fix for set unification recently introduced a bug with unknown set values which would cause a panic (hashicorp/terraform#25318). This was triggered by calling
LengthInt
on an unknown collection.This commit fixes this by first verifying that the argument is known, so that calling its length is safe. If the argument is not known, it could be of any length, so we do not want to omit its element type from the set to be unified.
Includes regression tests.
Fixes hashicorp/terraform#25318