LCOV - code coverage report
Current view: top level - src/interfaces/ecpg/test/sql - dynalloc2.pgc (source / functions) Coverage Total Hit
Test: PostgreSQL 19devel Lines: 100.0 % 37 37
Test Date: 2026-03-11 10:16:42 Functions: 100.0 % 1 1
Legend: Lines:     hit not hit

            Line data    Source code
       1              : #include <stdio.h>
       2              : exec sql include sqlca;
       3              : #include <stdlib.h>
       4              : exec sql include ../regression;
       5              : 
       6            2 : int main(void)
       7              : {
       8              :    exec sql begin declare section;
       9            2 :    int *ip1=0;
      10            2 :    char **cp2=0;
      11            2 :    int *ipointer1=0;
      12            2 :    int *ipointer2=0;
      13              :    int colnum;
      14              :    exec sql end declare section;
      15              :    int i;
      16              : 
      17            2 :    ECPGdebug(1, stderr);
      18              : 
      19              :    exec sql whenever sqlerror do sqlprint();
      20            2 :    exec sql connect to REGRESSDB1;
      21            2 : 
      22            2 :    exec sql set datestyle to postgres;
      23            2 : 
      24            2 :    exec sql create table test (a int, b text);
      25            2 :    exec sql insert into test values (1, 'one');
      26            2 :    exec sql insert into test values (2, 'two');
      27            2 :    exec sql insert into test values (NULL, 'three');
      28            2 :    exec sql insert into test values (4, 'four');
      29            2 :    exec sql insert into test values (5, NULL);
      30            2 :    exec sql insert into test values (NULL, NULL);
      31            2 : 
      32            2 :    exec sql allocate descriptor mydesc;
      33            2 :    exec sql select * into sql descriptor mydesc from test;
      34            2 :    exec sql get descriptor mydesc :colnum=COUNT;
      35            2 :    exec sql get descriptor mydesc value 1 :ip1=DATA, :ipointer1=INDICATOR;
      36            2 :    exec sql get descriptor mydesc value 2 :cp2=DATA, :ipointer2=INDICATOR;
      37            2 : 
      38            2 :    printf("Result (%d columns):\n", colnum);
      39           14 :    for (i=0;i < sqlca.sqlerrd[2];++i)
      40              :    {
      41           12 :       if (ipointer1[i]) printf("NULL, ");
      42            8 :       else printf("%d, ",ip1[i]);
      43              : 
      44           12 :       if (ipointer2[i]) printf("NULL, ");
      45            8 :       else printf("'%s', ",cp2[i]);
      46           12 :       printf("\n");
      47              :    }
      48            2 :    ECPGfree_auto_mem();
      49            2 :    printf("\n");
      50              : 
      51            2 :    exec sql deallocate descriptor mydesc;
      52            2 :    exec sql rollback;
      53            2 :    exec sql disconnect;
      54            2 :    return 0;
      55              : }
        

Generated by: LCOV version 2.0-1