19560d06aSjeremylt /// @file 29560d06aSjeremylt /// Test creation, copying, and destroying of a vector 39560d06aSjeremylt /// \test Test creation, copying, and destroying of a vector 49560d06aSjeremylt #include <ceed.h> 59560d06aSjeremylt 69560d06aSjeremylt int main(int argc, char **argv) { 79560d06aSjeremylt Ceed ceed; 89560d06aSjeremylt CeedVector x, x_2; 9*4fee36f0SJeremy L Thompson CeedInt len = 10; 109560d06aSjeremylt 119560d06aSjeremylt CeedInit(argv[1], &ceed); 129560d06aSjeremylt 13*4fee36f0SJeremy L Thompson CeedVectorCreate(ceed, len, &x); 14*4fee36f0SJeremy L Thompson CeedVectorCreate(ceed, len + 1, &x_2); 159560d06aSjeremylt 169560d06aSjeremylt CeedVectorReferenceCopy(x, &x_2); // This destroys the previous x_2 179560d06aSjeremylt CeedVectorDestroy(&x); 189560d06aSjeremylt 19*4fee36f0SJeremy L Thompson { 20*4fee36f0SJeremy L Thompson CeedSize len_2; 21*4fee36f0SJeremy L Thompson 22*4fee36f0SJeremy L Thompson CeedVectorGetLength(x_2, &len_2); // Second reference still valid 23*4fee36f0SJeremy L Thompson if (len_2 != len) printf("Error copying CeedVector reference\n"); 24*4fee36f0SJeremy L Thompson } 259560d06aSjeremylt 269560d06aSjeremylt CeedVectorDestroy(&x_2); 279560d06aSjeremylt CeedDestroy(&ceed); 289560d06aSjeremylt return 0; 299560d06aSjeremylt } 30