Skip to content

Read each local of a declaration list as the literal it starts from - #222

Merged
estebanzimanyi merged 1 commit into
MobilityDB:masterfrom
estebanzimanyi:catalog/notnull-default-declaration-list
Oct 29, 2026
Merged

estebanzimanyi merged 1 commit into
MobilityDB:masterfrom
estebanzimanyi:catalog/notnull-default-declaration-list

Conversation

@estebanzimanyi

Copy link
Copy Markdown
Member

_notnull_default reads the initializer of a local up to the comma of a declaration of several
locals, as _guarded_default reads it: int nrows = 0, ncols = 0; starts nrows from 0, where it
read 0, ncols = 0 and stated no literal. Raster_set_values reads the size of its flags into
both locals only where argument 5 is not NULL, so the call leaving its flags to their default
NULL binds nosetheight 0 beside nosetwidth 0 and noset NULL. A local starting from a call keeps
stating none.

Witness: tests/test_boundargs.py DeclarationListTests, the locals of Raster_set_values; the
first test fails on master.

Why: J15d of MobilityDB #2861, setValues(raster, integer, integer, integer, float[]), which the
typed JVM surfaces leave unregistered while the catalog binds nosetwidth and not nosetheight
for it.

Measured: over the headers MobilityDB master 96f10bdac8 installs, the catalog changes only in
the nullDefaultBinds of setValues, which gains nosetheight 0. The 601 tests pass, master's 599
and the 2 above. Over this catalog, JMEOS codegen/two-dimensional-array-input registers the
call without the flags, 9585 overloads against 9584.

_notnull_default reads the initializer of a local up to the comma of a declaration of several
locals, as _guarded_default reads it: `int nrows = 0, ncols = 0;` starts nrows from 0, where it
read `0, ncols = 0` and stated no literal. Raster_set_values reads the size of its flags into
both locals only where argument 5 is not NULL, so the call leaving its flags to their default
NULL binds nosetheight 0 beside nosetwidth 0 and noset NULL. A local starting from a call keeps
stating none.

Witness: tests/test_boundargs.py DeclarationListTests, the locals of Raster_set_values; the
first test fails on master.

Why: J15d of MobilityDB #2861, setValues(raster, integer, integer, integer, float[]), which the
typed JVM surfaces leave unregistered while the catalog binds nosetwidth and not nosetheight
for it.

Measured: over the headers MobilityDB master 96f10bdac8 installs, the catalog changes only in
the nullDefaultBinds of setValues, which gains nosetheight 0. The 601 tests pass, master's 599
and the 2 above. Over this catalog, JMEOS codegen/two-dimensional-array-input registers the
call without the flags, 9585 overloads against 9584.
@estebanzimanyi
estebanzimanyi merged commit c791520 into MobilityDB:master Oct 29, 2026
3 checks passed
@estebanzimanyi
estebanzimanyi deleted the catalog/notnull-default-declaration-list branch October 29, 2026 23:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant