shoemoney commented on code in PR #51000:
URL: https://github.com/apache/arrow/pull/51000#discussion_r4053030982


##########
cpp/src/arrow/compute/kernels/scalar_validity.cc:
##########
@@ -101,6 +104,34 @@ static void SetNanBits(const ArraySpan& arr, uint8_t* 
out_bitmap, int64_t out_of
   }
 }
 
+// Maps `is_null` over the dictionary values and then through the indices, so 
that
+// both NaN and null dictionary entries are reported, whatever the index type.
+static Status SetNullBitsFromDictionary(KernelContext* ctx, const ArraySpan& 
arr,
+                                        const NullOptions& options, uint8_t* 
out_bitmap,
+                                        int64_t out_offset) {
+  if (arr.length == 0) {
+    return Status::OK();
+  }
+  const auto& dict_type = checked_cast<const DictionaryType&>(*arr.type);
+  ARROW_ASSIGN_OR_RAISE(Datum dict_is_null,

Review Comment:
   `scalar_validity.cc` includes `common_internal.h`, which imports 
`arrow::internal::checked_cast` into `namespace arrow` with `using 
internal::checked_cast` (line 51). Both calls are inside namespaces nested in 
`arrow`, so unqualified lookup finds that declaration. On September 18, I 
verified the unchanged commit 8811b9ea7 with a fresh compiler syntax check 
using the generated build flags and warnings as errors; it passes. The scalar 
utility suite also passes all 99 tests. No code change is needed for this 
finding.
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to