xref: /petsc/src/sys/tests/ex29.c (revision 9566063d113dddea24716c546802770db7481bc0)
1c4762a1bSJed Brown 
2c4762a1bSJed Brown static char help[] = "Tests PetscInt64Mult()\n";
3c4762a1bSJed Brown 
4c4762a1bSJed Brown #include <petscsys.h>
5c4762a1bSJed Brown 
6c4762a1bSJed Brown int main(int argc,char **argv)
7c4762a1bSJed Brown {
8c4762a1bSJed Brown   PetscErrorCode ierr;
9c4762a1bSJed Brown   PetscInt       a = 2009,b = 5612,result,tresult;
10c4762a1bSJed Brown   PetscInt64     r64;
11c4762a1bSJed Brown 
12*9566063dSJacob Faibussowitsch   PetscCall(PetscInitialize(&argc,&argv,(char*)0,help));
13*9566063dSJacob Faibussowitsch   PetscCall(PetscIntMultError(a,b,&result));
14c4762a1bSJed Brown   a       = PETSC_MPI_INT_MAX-22,b = PETSC_MPI_INT_MAX/22;
15c4762a1bSJed Brown   r64     = PetscInt64Mult(a,b);
16c4762a1bSJed Brown   tresult = PetscIntMultTruncate(a,b);
17*9566063dSJacob Faibussowitsch   PetscCall(PetscIntMultError(a,b,&result));
18*9566063dSJacob Faibussowitsch   ierr    = PetscCall(PetscFinalize());
19b122ec5aSJacob Faibussowitsch   return 0;
20c4762a1bSJed Brown }
21