1: #include <petscsys.h>
3: static char help[] = "Test PetscComplex binary operators.\n";
5: int main(int argc,char **argv)
6: {
9: PetscInitialize(&argc,&argv,NULL,help);if (ierr) return ierr;
10: {
11: int i = 2;
12: float f = 2;
13: double d = 2;
14: PetscInt j = 2;
15: PetscReal r = 2;
16: PetscScalar z;
18: #define TestOps(BOP,IOP) do { \
19: z = i; z = z BOP i; z = i BOP z; z IOP i; (void)(z==i); (void)(z!=i); \
20: z = f; z = z BOP f; z = f BOP z; z IOP f; (void)(z==f); (void)(z!=f); \
21: z = d; z = z BOP d; z = d BOP z; z IOP d; (void)(z==d); (void)(z!=d); \
22: z = j; z = z BOP j; z = r BOP z; z IOP j; (void)(z==j); (void)(z!=j); \
23: z = r; z = z BOP r; z = r BOP z; z IOP r; (void)(z==r); (void)(z!=r); } while (0)
25: TestOps(+,+=);
26: TestOps(-,-=);
27: TestOps(*,*=);
28: TestOps(/,/=);
29: }
30: PetscFinalize();
31: return ierr;
32: }
34: /*TEST
36: build:
37: requires: complex
39: test:
41: TEST*/