cpp: #include <stdio.h>\nchar a[100];\nint main()\n{\n  int i;\n#pragma omp parallel for\n  for (i=0;i<100;i++)\n    a[i]=a[i]+1;\n  return 0;\n} \n
fortran: program DRB047_doallchar_orig_no\n    use omp_lib\n    implicit none\n\n    character(len=100), dimension(:), allocatable :: a\n    character(50) :: str\n    integer :: i\n\n    allocate (a(100))\n\n    !$omp parallel do private(str)\n    do i = 1, 100\n        write( str, '(i10)' )  i\n        a(i) = str\n    end do\n    !$omp end parallel do\n\n    print*,'a(i)',a(23)\nend program