Crash when incoming edge transition depends on a configurable attribute #23278
Labels
P2
We'll consider working on this in future. (Assignee optional)
team-Configurability
platforms, toolchains, cquery, select(), config transitions
type: bug
Description of the bug:
Bazel crashes if an incoming edge transition reads
attr
that is set to aselect()
expression.Which category does this issue belong to?
No response
What's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.
Then run
This crashes with the following trace:
I expect it to not crash and print
None
.If I change BUILD.bazel,
LINE A
to the following:Then it will print a select expression, instead of the evaluated result:
I expect it to print a simple
Label("@@platforms//host:host")
instead of the un-evaluated expression.If it were an outgoing-edge transition, then it properly prints
None
andLabel("@@platforms//host:host")
respectively. This bug only happens on the incoming edge transition.Which operating system are you running Bazel on?
Linux
What is the output of
bazel info release
?release 7.3.0
If
bazel info release
returnsdevelopment version
or(@non-git)
, tell us how you built Bazel.No response
What's the output of
git remote get-url origin; git rev-parse HEAD
?No response
If this is a regression, please try to identify the Bazel commit where the bug was introduced with bazelisk --bisect.
No response
Have you found anything relevant by searching the web?
No response
Any other information, logs, or outputs that you want to share?
This is probably a WAI, but I don't see any documentation describing the behavior in https://bazel.build/extending/config. Perhaps a documentation update would be sufficient?
Also, I wouldn't expect a crash, but a proper error message that this is not a supported use case.
The text was updated successfully, but these errors were encountered: