File1: #include <stdio.h>\nvoid foo(int * a, int n, int g)\n{\n  int i;\n#pragma omp parallel for firstprivate (g)\n  for (i=0;i<n;i++)\n  {\n    a[i] = a[i]+g;\n  }\n}\n\nint a[100];\nint main()\n{\n  foo(a, 100, 7);\n  return 0;\n}  \n
File2: program DRB048_firstprivate_orig_no\n    use omp_lib\n    use DRB048\n    implicit none\n\n    allocate (a(100))\n    call foo(a, 100, 7)\n    print*,a(50)\nend program