Skip to content

Handle FIXED32/FIXED64 as unsigned in ProtoCelValueConverter#1073

Merged
copybara-service[bot] merged 1 commit into
google:mainfrom
andrewparmet:fix-fixed32-fixed64-celvalue
Jun 3, 2026
Merged

Handle FIXED32/FIXED64 as unsigned in ProtoCelValueConverter#1073
copybara-service[bot] merged 1 commit into
google:mainfrom
andrewparmet:fix-fixed32-fixed64-celvalue

Conversation

@andrewparmet
Copy link
Copy Markdown
Contributor

The CEL spec maps proto fixed32/fixed64 to CEL's uint. The CelValue path via ProtoCelValueConverter.fromProtoMessageFieldToCelValue lacks FIXED32/FIXED64 and falls through to normalizePrimitive, producing Integer/Long. Overload resolution at runtime then failed with "No matching overload" when the checker said uint but the runtime served a signed integer.

Add the missing case labels alongside UINT32/UINT64 and extend the ProtoMessageValue test suite to cover fixed32/fixed64 selection.

The CEL spec maps proto fixed32/fixed64 to CEL's uint. cel-java's
checker (DescriptorMappings) and its legacy DescriptorMessageProvider
path (ProtoAdapter) both correctly map them. The CelValue path via
ProtoCelValueConverter.fromProtoMessageFieldToCelValue missed
FIXED32/FIXED64 and fell through to normalizePrimitive, producing
Integer/Long. Overload resolution at runtime then failed with "No
matching overload" when the checker said uint but the runtime served
a signed integer.

Add the missing case labels alongside UINT32/UINT64 and extend the
ProtoMessageValue test suite to cover fixed32/fixed64 selection.
@l46kok l46kok added the ready to pull Pulls the pending PR into Critique label Jun 2, 2026
@copybara-service copybara-service Bot merged commit 7452e0d into google:main Jun 3, 2026
10 checks passed
@andrewparmet andrewparmet deleted the fix-fixed32-fixed64-celvalue branch June 3, 2026 17:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready to pull Pulls the pending PR into Critique

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants