Give every array of a run the one length that follows it - #134
Merged
estebanzimanyi merged 1 commit intoSep 3, 2026
Merged
Conversation
Arrays read in parallel are declared together and counted once, so the length belongs to all of them. `inputArrays` names only the array the count sits beside, which leaves nine arrays across seven functions with no stated length: `jsonb_make_two_arg(text **keys, text **values, int count)` pairs the two element by element and the entry names `values` alone, `tpointseq_make_coords` reads four coordinate arrays and the entry names `times`, and the h3 and quadbin sequence constructors each read a value array beside their timestamps. A binding meets the unnamed ones as bare pointers it cannot size. The inference walks a RUN of array parameters to the first parameter that is not one, and where that parameter is a by-value integer every array of the run takes its length from it. Where a family counts each array separately the run is one long and this says what it always said: `edwithin_tgeoarr_tgeoarr(arr1, count1, arr2, count2, …)` keeps `arr1` on `count1`, which is the case the suite states beside the run itself. The catalog carries 167 input arrays over 158, the nine gained belonging to those seven functions, and no entry loses the length it had.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Arrays read in parallel are declared together and counted once, so the length
belongs to all of them.
inputArraysnames only the array the count sitsbeside, which leaves nine arrays across seven functions with no stated length:
jsonb_make_two_arg(text **keys, text **values, int count)pairs the twoelement by element and the entry names
valuesalone,tpointseq_make_coordsreads four coordinate arrays and the entry names
times, and the h3 andquadbin sequence constructors each read a value array beside their timestamps.
A binding meets the unnamed ones as bare pointers it cannot size.
The inference walks a RUN of array parameters to the first parameter that is
not one, and where that parameter is a by-value integer every array of the run
takes its length from it. Where a family counts each array separately the run
is one long and this says what it always said:
edwithin_tgeoarr_tgeoarr(arr1, count1, arr2, count2, …)keepsarr1oncount1, which is the case the suite states beside the run itself.The catalog carries 167 input arrays over 158, the nine gained belonging to
those seven functions, and no entry loses the length it had.