lidavidm opened a new issue, #816:
URL: https://github.com/apache/arrow-adbc/issues/816
<details>
```
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:233:5:
warning: Potential memory leak [clang-analyzer-cplusplus.NewDeleteLeaks]
ASSERT_THAT(ArrowSchemaViewInit(&field_view, schema->children[i],
&na_error),
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:40: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:224:3:
note: Control jumps to 'case 0:' at line 224
ASSERT_THAT(ArrowSchemaViewInit(&view, schema, &na_error),
IsOkErrno(&na_error));
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:78:3: note:
expanded from macro 'GTEST_ASSERT_'
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
^
/usr/share/miniconda3/envs/test/include/gtest/internal/gtest-port.h:665:3:
note: expanded from macro 'GTEST_AMBIGUOUS_ELSE_BLOCKER_'
switch (0) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:224:3:
note: Assuming the condition is true
ASSERT_THAT(ArrowSchemaViewInit(&view, schema, &na_error),
IsOkErrno(&na_error));
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:40: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:224:3:
note: Taking true branch
ASSERT_THAT(ArrowSchemaViewInit(&view, schema, &na_error),
IsOkErrno(&na_error));
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:3: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:225:3:
note: Control jumps to 'case 0:' at line 225
ASSERT_THAT(view.type,
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:78:3: note:
expanded from macro 'GTEST_ASSERT_'
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
^
/usr/share/miniconda3/envs/test/include/gtest/internal/gtest-port.h:665:3:
note: expanded from macro 'GTEST_AMBIGUOUS_ELSE_BLOCKER_'
switch (0) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:225:3:
note: Assuming the condition is true
ASSERT_THAT(view.type,
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:40: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:225:3:
note: Taking true branch
ASSERT_THAT(view.type,
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:3: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:228:3:
note: Control jumps to 'case 0:' at line 228
ASSERT_EQ(fields.size(), schema->n_children);
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:78:3: note:
expanded from macro 'GTEST_ASSERT_'
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
^
/usr/share/miniconda3/envs/test/include/gtest/internal/gtest-port.h:665:3:
note: expanded from macro 'GTEST_AMBIGUOUS_ELSE_BLOCKER_'
switch (0) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:228:3:
note: Assuming the condition is true
ASSERT_EQ(fields.size(), schema->n_children);
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:40: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:228:3:
note: Taking true branch
ASSERT_EQ(fields.size(), schema->n_children);
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:3: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:230:23:
note: Assuming 'i' is < field 'n_children'
for (int64_t i = 0; i < schema->n_children; i++) {
^~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:230:3:
note: Loop condition is true. Entering loop body
for (int64_t i = 0; i < schema->n_children; i++) {
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:233:5:
note: Control jumps to 'case 0:' at line 233
ASSERT_THAT(ArrowSchemaViewInit(&field_view, schema->children[i],
&na_error),
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:78:3: note:
expanded from macro 'GTEST_ASSERT_'
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
^
/usr/share/miniconda3/envs/test/include/gtest/internal/gtest-port.h:665:3:
note: expanded from macro 'GTEST_AMBIGUOUS_ELSE_BLOCKER_'
switch (0) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:233:5:
note: Assuming the condition is true
ASSERT_THAT(ArrowSchemaViewInit(&field_view, schema->children[i],
&na_error),
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:40: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:233:5:
note: Taking true branch
ASSERT_THAT(ArrowSchemaViewInit(&field_view, schema->children[i],
&na_error),
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:3: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:235:5:
note: Control jumps to 'case 0:' at line 235
ASSERT_EQ(std::get<1>(fields[i]), field_view.type);
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:78:3: note:
expanded from macro 'GTEST_ASSERT_'
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
^
/usr/share/miniconda3/envs/test/include/gtest/internal/gtest-port.h:665:3:
note: expanded from macro 'GTEST_AMBIGUOUS_ELSE_BLOCKER_'
switch (0) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:235:5:
note: Assuming the condition is true
ASSERT_EQ(std::get<1>(fields[i]), field_view.type);
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:40: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:235:5:
note: Taking true branch
ASSERT_EQ(std::get<1>(fields[i]), field_view.type);
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:3: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:236:5:
note: Control jumps to 'case 0:' at line 236
ASSERT_EQ(std::get<2>(fields[i]),
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:78:3: note:
expanded from macro 'GTEST_ASSERT_'
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
^
/usr/share/miniconda3/envs/test/include/gtest/internal/gtest-port.h:665:3:
note: expanded from macro 'GTEST_AMBIGUOUS_ELSE_BLOCKER_'
switch (0) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:237:15:
note: Assuming the condition is false
(schema->children[i]->flags & ARROW_FLAG_NULLABLE) != 0)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:53: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
~~~~~~~~~~~~~~~~~~~~~~^~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:69: note:
expanded from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:40:
note: expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:43:
note: expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:52: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:236:5:
note: Assuming the condition is true
ASSERT_EQ(std::get<2>(fields[i]),
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:40: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:236:5:
note: Taking true branch
ASSERT_EQ(std::get<2>(fields[i]),
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1893:31: note:
expanded from macro 'ASSERT_EQ'
#define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest.h:1877:3: note: expanded
from macro 'GTEST_ASSERT_EQ'
ASSERT_PRED_FORMAT2(::testing::internal::EqHelper::Compare, val1, val2)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:148:3: note:
expanded from macro 'ASSERT_PRED_FORMAT2'
GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:134:3: note:
expanded from macro 'GTEST_PRED_FORMAT2_'
GTEST_ASSERT_(pred_format(#v1, #v2, v1, v2), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:3: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:239:9:
note: Assuming the condition is false
if (std::get<0>(fields[i]).has_value()) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:239:5:
note: Taking false branch
if (std::get<0>(fields[i]).has_value()) {
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:230:23:
note: Assuming 'i' is < field 'n_children'
for (int64_t i = 0; i < schema->n_children; i++) {
^~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:230:3:
note: Loop condition is true. Entering loop body
for (int64_t i = 0; i < schema->n_children; i++) {
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:233:5:
note: Control jumps to 'case 0:' at line 233
ASSERT_THAT(ArrowSchemaViewInit(&field_view, schema->children[i],
&na_error),
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5437:3: note:
expanded from macro 'ASSERT_THAT'
ASSERT_PRED_FORMAT1( \
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:3: note:
expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:3: note:
expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:78:3: note:
expanded from macro 'GTEST_ASSERT_'
GTEST_AMBIGUOUS_ELSE_BLOCKER_ \
^
/usr/share/miniconda3/envs/test/include/gtest/internal/gtest-port.h:665:3:
note: expanded from macro 'GTEST_AMBIGUOUS_ELSE_BLOCKER_'
switch (0) \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:234:17:
note: Calling 'IsOkErrno'
IsOkErrno(&na_error));
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5438:62:
note: expanded from macro 'ASSERT_THAT'
::testing::internal::MakePredicateFormatterFromMatcher(matcher), value)
^~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:112:23:
note: expanded from macro 'ASSERT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_FATAL_FAILURE_)
^~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:17:
note: expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
^~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:52: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/validation/adbc_validation_util.cc:93:10:
note: Calling constructor for 'Matcher<int>'
return IsErrno(0, nullptr, error);
^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:163:42:
warning: Call to 'malloc' has an allocation size of 0 bytes
[clang-analyzer-optin.portability.UnixAPI]
void* ArrowMalloc(int64_t size) { return malloc(size); }
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:2835:7:
note: Calling 'AdbcNsArrowArrayViewInitFromSchema'
ArrowArrayViewInitFromSchema(&array_view, &private_data->schema,
error));
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:797:3:
note: expanded from macro 'ArrowArrayViewInitFromSchema'
NANOARROW_SYMBOL(NANOARROW_NAMESPACE, ArrowArrayViewInitFromSchema)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:723:32:
note: expanded from macro 'NANOARROW_SYMBOL'
#define NANOARROW_SYMBOL(A, B) NANOARROW_CAT(A, B)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:722:29:
note: expanded from macro 'NANOARROW_CAT'
#define NANOARROW_CAT(A, B) A##B
^
note: expanded from here
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:208:83:
note: expanded from macro 'NANOARROW_RETURN_NOT_OK'
_NANOARROW_RETURN_NOT_OK_IMPL(_NANOARROW_MAKE_NAME(errno_status_,
__COUNTER__), EXPR)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:187:23:
note: expanded from macro '_NANOARROW_RETURN_NOT_OK_IMPL'
const int NAME = (EXPR); \
^~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:2271:7:
note: 'result' is equal to NANOARROW_OK
if (result != NANOARROW_OK) {
^~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:2271:3:
note: Taking false branch
if (result != NANOARROW_OK) {
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:2278:12:
note: Calling 'AdbcNsArrowArrayViewAllocateChildren'
result = ArrowArrayViewAllocateChildren(array_view, schema->n_children);
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:799:3:
note: expanded from macro 'ArrowArrayViewAllocateChildren'
NANOARROW_SYMBOL(NANOARROW_NAMESPACE, ArrowArrayViewAllocateChildren)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:723:32:
note: expanded from macro 'NANOARROW_SYMBOL'
#define NANOARROW_SYMBOL(A, B) NANOARROW_CAT(A, B)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:722:29:
note: expanded from macro 'NANOARROW_CAT'
#define NANOARROW_CAT(A, B) A##B
^
note: expanded from here
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:2238:7:
note: Assuming field 'children' is equal to NULL
if (array_view->children != NULL) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:2238:3:
note: Taking false branch
if (array_view->children != NULL) {
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:2243:44:
note: Passing the value 0 via 1st parameter 'size'
(struct ArrowArrayView**)ArrowMalloc(n_children * sizeof(struct
ArrowArrayView*));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:2243:32:
note: Calling 'AdbcNsArrowMalloc'
(struct ArrowArrayView**)ArrowMalloc(n_children * sizeof(struct
ArrowArrayView*));
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:729:21:
note: expanded from macro 'ArrowMalloc'
#define ArrowMalloc NANOARROW_SYMBOL(NANOARROW_NAMESPACE, ArrowMalloc)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:723:32:
note: expanded from macro 'NANOARROW_SYMBOL'
#define NANOARROW_SYMBOL(A, B) NANOARROW_CAT(A, B)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:722:29:
note: expanded from macro 'NANOARROW_CAT'
#define NANOARROW_CAT(A, B) A##B
^
note: expanded from here
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:163:42:
note: Call to 'malloc' has an allocation size of 0 bytes
void* ArrowMalloc(int64_t size) { return malloc(size); }
^ ~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1908:24:
warning: Use of memory after it is freed [clang-analyzer-unix.Malloc]
private_data->layout = array_view->layout;
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1926:3:
note: Assuming 'errno_status_88' is 0
NANOARROW_RETURN_NOT_OK(ArrowArrayViewInitFromSchema(&array_view, schema,
error));
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:208:33:
note: expanded from macro 'NANOARROW_RETURN_NOT_OK'
_NANOARROW_RETURN_NOT_OK_IMPL(_NANOARROW_MAKE_NAME(errno_status_,
__COUNTER__), EXPR)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:183:36:
note: expanded from macro '_NANOARROW_MAKE_NAME'
#define _NANOARROW_MAKE_NAME(x, y) _NANOARROW_CONCAT(x, y)
^~~~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:182:33:
note: expanded from macro '_NANOARROW_CONCAT'
#define _NANOARROW_CONCAT(x, y) x##y
^~~~
note: expanded from here
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:188:9:
note: expanded from macro '_NANOARROW_RETURN_NOT_OK_IMPL'
if (NAME) return NAME; \
^~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1926:3:
note: Taking false branch
NANOARROW_RETURN_NOT_OK(ArrowArrayViewInitFromSchema(&array_view, schema,
error));
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:208:3:
note: expanded from macro 'NANOARROW_RETURN_NOT_OK'
_NANOARROW_RETURN_NOT_OK_IMPL(_NANOARROW_MAKE_NAME(errno_status_,
__COUNTER__), EXPR)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:188:5:
note: expanded from macro '_NANOARROW_RETURN_NOT_OK_IMPL'
if (NAME) return NAME; \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1926:3:
note: Loop condition is false. Exiting loop
NANOARROW_RETURN_NOT_OK(ArrowArrayViewInitFromSchema(&array_view, schema,
error));
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:208:3:
note: expanded from macro 'NANOARROW_RETURN_NOT_OK'
_NANOARROW_RETURN_NOT_OK_IMPL(_NANOARROW_MAKE_NAME(errno_status_,
__COUNTER__), EXPR)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:186:3:
note: expanded from macro '_NANOARROW_RETURN_NOT_OK_IMPL'
do { \
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1927:27:
note: Calling 'ArrowArrayInitFromArrayView'
NANOARROW_RETURN_NOT_OK(ArrowArrayInitFromArrayView(array, &array_view,
error));
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:208:83:
note: expanded from macro 'NANOARROW_RETURN_NOT_OK'
_NANOARROW_RETURN_NOT_OK_IMPL(_NANOARROW_MAKE_NAME(errno_status_,
__COUNTER__), EXPR)
^~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:187:23:
note: expanded from macro '_NANOARROW_RETURN_NOT_OK_IMPL'
const int NAME = (EXPR); \
^~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1898:3:
note: Calling 'AdbcNsArrowArrayInitFromType'
ArrowArrayInitFromType(array, array_view->storage_type);
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:779:3:
note: expanded from macro 'ArrowArrayInitFromType'
NANOARROW_SYMBOL(NANOARROW_NAMESPACE, ArrowArrayInitFromType)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:723:32:
note: expanded from macro 'NANOARROW_SYMBOL'
#define NANOARROW_SYMBOL(A, B) NANOARROW_CAT(A, B)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:722:29:
note: expanded from macro 'NANOARROW_CAT'
#define NANOARROW_CAT(A, B) A##B
^
note: expanded from here
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1866:38:
note: Calling 'AdbcNsArrowMalloc'
(struct ArrowArrayPrivateData*)ArrowMalloc(sizeof(struct
ArrowArrayPrivateData));
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:729:21:
note: expanded from macro 'ArrowMalloc'
#define ArrowMalloc NANOARROW_SYMBOL(NANOARROW_NAMESPACE, ArrowMalloc)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:723:32:
note: expanded from macro 'NANOARROW_SYMBOL'
#define NANOARROW_SYMBOL(A, B) NANOARROW_CAT(A, B)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:722:29:
note: expanded from macro 'NANOARROW_CAT'
#define NANOARROW_CAT(A, B) A##B
^
note: expanded from here
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:163:42:
note: Memory is allocated
void* ArrowMalloc(int64_t size) { return malloc(size); }
^~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1866:38:
note: Returned allocated memory
(struct ArrowArrayPrivateData*)ArrowMalloc(sizeof(struct
ArrowArrayPrivateData));
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:729:21:
note: expanded from macro 'ArrowMalloc'
#define ArrowMalloc NANOARROW_SYMBOL(NANOARROW_NAMESPACE, ArrowMalloc)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:723:32:
note: expanded from macro 'NANOARROW_SYMBOL'
#define NANOARROW_SYMBOL(A, B) NANOARROW_CAT(A, B)
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.h:722:29:
note: expanded from macro 'NANOARROW_CAT'
#define NANOARROW_CAT(A, B) A##B
^
note: expanded from here
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1867:7:
note: Assuming 'private_data' is not equal to NULL
if (private_data == NULL) {
^~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1867:3:
note: Taking false branch
if (private_data == NULL) {
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1883:7:
note: 'result' is not equal to NANOARROW_OK
if (result != NANOARROW_OK) {
^~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1883:3:
note: Taking true branch
if (result != NANOARROW_OK) {
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1884:5:
note: Calling 'ArrowArrayRelease'
array->release(array);
^~~~~~~~~~~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1755:7:
note: 'private_data' is not equal to NULL
if (private_data != NULL) {
^~~~~~~~~~~~
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1755:3:
note: Taking true branch
if (private_data != NULL) {
^
/home/runner/work/arrow-adbc/arrow-adbc/c/vendor/nanoarrow/nanoarrow.c:1759:5:
note: Calling 'AdbcNsArrowFree'
ArrowFree(private_data);
^
EXPECT_THAT(AdbcDatabaseSetOption(database, "uri", uri, error),
IsOkStatus(error));
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:5441:7: note:
expanded from macro 'EXPECT_THAT'
::testing::internal::MakePredicateFormatterFromMatcher(matcher), value)
~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:109:23:
note: expanded from macro 'EXPECT_PRED_FORMAT1'
GTEST_PRED_FORMAT1_(pred_format, v1, GTEST_NONFATAL_FAILURE_)
~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:100:17:
note: expanded from macro 'GTEST_PRED_FORMAT1_'
GTEST_ASSERT_(pred_format(#v1, v1), on_failure)
~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest_pred_impl.h:79:52: note:
expanded from macro 'GTEST_ASSERT_'
if (const ::testing::AssertionResult gtest_ar = (expression)) \
^~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:1588:39:
note: Calling 'SafeMatcherCast<const unsigned char &, unsigned char>'
const Matcher<const T&> matcher = SafeMatcherCast<const T&>(matcher_);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:551:10: note:
Calling 'MatcherCast<const unsigned char &, testing::Matcher<unsigned char>>'
return MatcherCast<T>(matcher);
^~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:513:10: note:
Calling 'MatcherCastImpl::Cast'
return internal::MatcherCastImpl<T, M>::Cast(matcher);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:405:12: note:
Calling constructor for 'Matcher<const unsigned char &>'
return Matcher<T>(new Impl(source_matcher));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest-matchers.h:508:9: note:
Calling constructor for 'MatcherBase<const unsigned char &>'
: internal::MatcherBase<T>(impl) {}
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest-matchers.h:312:5: note:
Calling 'MatcherBase::Init'
Init(impl);
^~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest-matchers.h:485:5: note:
Calling 'ValuePolicy::Init'
Policy::Init(*this, std::forward<M>(m));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest-matchers.h:474:26: note:
Memory is allocated
m.buffer_.shared = new Shared(std::unique_ptr<M>(impl));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest-matchers.h:485:5: note:
Returned allocated memory
Policy::Init(*this, std::forward<M>(m));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest-matchers.h:312:5: note:
Returned allocated memory
Init(impl);
^~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gtest/gtest-matchers.h:508:9: note:
Returning from constructor for 'MatcherBase<const unsigned char &>'
: internal::MatcherBase<T>(impl) {}
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:405:12: note:
Returning from constructor for 'Matcher<const unsigned char &>'
return Matcher<T>(new Impl(source_matcher));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:513:10: note:
Returned allocated memory
return internal::MatcherCastImpl<T, M>::Cast(matcher);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:551:10: note:
Returned allocated memory
return MatcherCast<T>(matcher);
^~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:1588:39:
note: Returned allocated memory
const Matcher<const T&> matcher = SafeMatcherCast<const T&>(matcher_);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:1592:9: note:
Assuming the condition is true
if (matcher.Matches(x)) {
^~~~~~~~~~~~~~~~~~
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:1592:5: note:
Taking true branch
if (matcher.Matches(x)) {
^
/usr/share/miniconda3/envs/test/include/gmock/gmock-matchers.h:1609:3: note:
Potential leak of memory pointed to by 'matcher.buffer_.shared'
}
```
</details>
--
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]