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