1 // the first call (1st mpt() avatar) display a non allocated mtx whereas
   2 // the second (2d mpt() avatar with a 2d argument for a comment)
   3 // display an allocated matrix ( the main mtx fields along with the
   4 // ancillary fields required to interface with the GSl vector and matrix objects
   5 program mpt_;
   6 uses mtx09;
   7 var
   8   a:mtx;
   9 begin
  10   mpt(a);
  11   equ(a,'1 2 3; 4 5 6');
  12   mpt(a,'my comment')
  13 end.
  14 {
  15 # ====================================
  16 # smx, trp, dyn: FALSE FALSE FALSE
  17 # max, lgn, col, dl, dc: 0   0 0   0 0
  18 # ====================================
  19 
  20 # ========== mpt ====my comment====
  21 # ====================================
  22 # smx, trp, dyn: FALSE FALSE TRUE
  23 # max, lgn, col, dl, dc: 6   2 3   1 3
  24 # ====================================
  25 
  26 a.mat^.block^.size: 6
  27 a.mat^.block^.data: 1074167856
  28 a.mat^.size1:       2
  29 a.mat^.size2:       3
  30 a.mat^.tda:         3
  31 a.mat^.data:        1074167856
  32 a.vec^.block^.size: 6
  33 a.vec^.block^.data: 1074167856
  34 a.vec^.size:        6
  35 a.vec^.stride:      1
  36 a.vec^.data:        1074167856
  37 }