diff --git a/api/GenApi.py b/api/GenApi.py index b22f0948d9ae08c2a521c0c8899cee1948b9237f..16b3d2091720a851109987ceb47445a6fd20dead 100644 --- a/api/GenApi.py +++ b/api/GenApi.py @@ -89,8 +89,8 @@ def istring(name, value=None, python_value=None, julia_value=None): a.python_arg = "c_char_p(" + name + ".encode())" a.cwrap_arg = name + ".c_str()" a.julia_ctype = "Ptr{Cchar}" - a.fortran_type = "character(len=1, kind=c_char)" - a.fortran_type_post = "(*)" + a.fortran_type = "character(len=1, kind=c_char), dimension(*)" + a.fortran_type_post = "" return a @@ -99,8 +99,8 @@ def ivoidstar(name, value=None, python_value=None, julia_value=None): "const void *", False) a.python_arg = "c_void_p(" + name + ")" a.julia_ctype = "Ptr{Cvoid}" - a.fortran_type = "integer(c_int)" - a.fortran_type_post = "(*)" + a.fortran_type = "integer(c_int), dimension(*)" + a.fortran_type_post = "" return a @@ -124,8 +124,8 @@ def ivectorint(name, value=None, python_value=None, julia_value=None): a.python_arg = api_name + ", " + api_name_n a.julia_ctype = "Ptr{Cint}, Csize_t" a.julia_arg = "convert(Vector{Cint}, " + name + "), length(" + name + ")" - a.fortran_type = "integer(c_int)" - a.fortran_type_post = "(*)\n" + " " * 8 + "integer(c_size_t), value :: " + name + "_n" + a.fortran_type = "integer(c_int), dimension(*)" + a.fortran_type_post = " " * 8 + "integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -150,8 +150,8 @@ def ivectorsize(name, value=None, python_value=None, julia_value=None): a.python_arg = api_name + ", " + api_name_n a.julia_ctype = "Ptr{Csize_t}, Csize_t" a.julia_arg = "convert(Vector{Csize_t}, " + name + "), length(" + name + ")" - a.fortran_type = "integer(c_size_t)" - a.fortran_type_post = "(*)\n" + " " * 8 + "integer(c_size_t), value :: " + name + "_n" + a.fortran_type = "integer(c_size_t), dimension(*)" + a.fortran_type_post = " " * 8 + "integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -176,8 +176,8 @@ def ivectordouble(name, value=None, python_value=None, julia_value=None): a.python_arg = api_name + ", " + api_name_n a.julia_ctype = "Ptr{Cdouble}, Csize_t" a.julia_arg = "convert(Vector{Cdouble}, " + name + "), length(" + name + ")" - a.fortran_type = "real(c_double)" - a.fortran_type_post = "(*)\n" + " " * 8 + "integer(c_size_t), value :: " + name + "_n" + a.fortran_type = "real(c_double), dimension(*)" + a.fortran_type_post = " " * 8 + "integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -202,8 +202,8 @@ def ivectorstring(name, value=None, python_value=None, julia_value=None): a.python_arg = api_name + ", " + api_name_n a.julia_ctype = "Ptr{Ptr{Cchar}}, Csize_t" a.julia_arg = name + ", length(" + name + ")" - a.fortran_type = "type(c_ptr)" - a.fortran_type_post = "(*)\n" + " " * 8 + "integer(c_size_t), value :: " + name + "_n" + a.fortran_type = "type(c_ptr), dimension(*)" + a.fortran_type_post = " " * 8 + "integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -233,8 +233,8 @@ def ivectorpair(name, value=None, python_value=None, julia_value=None): a.julia_pre = (api_name + " = collect(Cint, Iterators.flatten(" + name + "))\n " + api_name_n + " = length(" + api_name + ")") a.julia_arg = (api_name + ", " + api_name_n) - a.fortran_type = "integer(c_int)" - a.fortran_type_post = "(*)\n" + " " * 8 + "integer(c_size_t), value :: " + name + "_n" + a.fortran_type = "integer(c_int), dimension(*)" + a.fortran_type_post = " " * 8 + "integer(c_size_t), value :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -272,8 +272,8 @@ def ivectorvectorint(name, value=None, python_value=None, julia_value=None): a.julia_arg = ("convert(Vector{Vector{Cint}}," + name + "), " + api_name_n + ", length(" + name + ")") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = ("\n" + " " * 8 + "type(c_ptr), intent(out) :: " + name + - "_n\n" + " " * 8 + "integer(c_size_t) :: " + name + "_nn") + a.fortran_type_post = (" " * 8 + "type(c_ptr), intent(out) :: " + name + "_n\n" + + " " * 8 + "integer(c_size_t) :: " + name + "_nn") a.fortran_name_post = ", " + name + "_n," + name + "_nn" return a @@ -312,8 +312,8 @@ def ivectorvectorsize(name, value=None, python_value=None, julia_value=None): a.julia_arg = ("convert(Vector{Vector{Csize_t}}," + name + "), " + api_name_n + ", length(" + name + ")") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = ("\n" + " " * 8 + "type(c_ptr), intent(out) :: " + name + - "_n\n" + " " * 8 + "integer(c_size_t) :: " + name + "_nn") + a.fortran_type_post = (" " * 8 + "type(c_ptr), intent(out) :: " + name + "_n\n" + + " " * 8 + "integer(c_size_t) :: " + name + "_nn") a.fortran_name_post = ", " + name + "_n," + name + "_nn" return a @@ -352,8 +352,8 @@ def ivectorvectordouble(name, value=None, python_value=None, julia_value=None): a.julia_arg = ("convert(Vector{Vector{Cdouble}}," + name + "), " + api_name_n + ", length(" + name + ")") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = ("\n" + " " * 8 + "type(c_ptr), intent(out) :: " + - name + "_n\n" + " " * 8 + "integer(c_size_t) :: " + name + "_nn") + a.fortran_type_post = (" " * 8 + "type(c_ptr), intent(out) :: " + name + "_n\n" + + " " * 8 + "integer(c_size_t) :: " + name + "_nn") a.fortran_name_post = ", " + name + "_n," + name + "_nn" return a @@ -448,8 +448,8 @@ def ostring(name, value=None, python_value=None, julia_value=None): a.julia_pre = api_name + " = Ref{Ptr{Cchar}}()" a.julia_arg = api_name a.julia_post = name + " = unsafe_string(" + api_name + "[])" - a.fortran_type = "type(c_ptr)" - a.fortran_type_post = "(*)" + a.fortran_type = "type(c_ptr), dimension(*)" + a.fortran_type_post = "" return a @@ -476,7 +476,7 @@ def ovectorint(name, value=None, python_value=None, julia_value=None): a.julia_post = (name + " = unsafe_wrap(Array, " + api_name + "[], " + api_name_n + "[], own = true)") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = "\n" + " " * 8 + "integer(c_size_t) :: " + name +"_n" + a.fortran_type_post = " " * 8 + "integer(c_size_t) :: " + name +"_n" a.fortran_name_post = ", " + name + "_n" return a @@ -504,7 +504,7 @@ def ovectorsize(name, value=None, python_value=None, julia_value=None): a.julia_post = (name + " = unsafe_wrap(Array, " + api_name + "[], " + api_name_n + "[], own = true)") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = "\n" + " " * 8 + "integer(c_size_t) :: " + name + "_n" + a.fortran_type_post = " " * 8 + "integer(c_size_t) :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -532,7 +532,7 @@ def ovectordouble(name, value=None, python_value=None, julia_value=None): a.julia_post = (name + " = unsafe_wrap(Array, " + api_name + "[], " + api_name_n + "[], own = true)") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = "\n" + " " * 8 + "integer(c_size_t) :: " + name + "_n" + a.fortran_type_post = " " * 8 + "integer(c_size_t) :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -565,7 +565,7 @@ def ovectorstring(name, value=None, python_value=None, julia_value=None): " = [unsafe_string(tmp_" + api_name + "[i]) for i in 1:length(tmp_" + api_name + ") ]") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = "\n" + " " * 8 + "integer(c_size_t) :: " + name + "_n" + a.fortran_type_post = " " * 8 + "integer(c_size_t) :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -598,7 +598,7 @@ def ovectorpair(name, value=None, python_value=None, julia_value=None): " = [ (tmp_" + api_name + "[i], tmp_" + api_name + "[i+1]) " + "for i in 1:2:length(tmp_" + api_name + ") ]") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = "\n" + " " * 8 + "integer(c_size_t) :: " + name + "_n" + a.fortran_type_post = " " * 8 + "integer(c_size_t) :: " + name + "_n" a.fortran_name_post = ", " + name + "_n" return a @@ -642,8 +642,8 @@ def ovectorvectorint(name, value=None, python_value=None, julia_value=None): "tmp_" + api_name_n + "[i], own = true) for i in 1:" + api_name_nn + "[] ]") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = ("\n" + " " * 8 + "type(c_ptr), intent(out) :: " + name + - "_n\n" + " " * 8 + "integer(c_size_t) :: " + name +"_nn") + a.fortran_type_post = (" " * 8 + "type(c_ptr), intent(out) :: " + name + "_n\n" + + " " * 8 + "integer(c_size_t) :: " + name +"_nn") a.fortran_name_post = ", " + name + "_n," + name + "_nn" return a @@ -687,8 +687,8 @@ def ovectorvectorsize(name, value=None, python_value=None, julia_value=None): "tmp_" + api_name_n + "[i], own = true) for i in 1:" + api_name_nn + "[] ]") a.fortran_type = "type (c_ptr), intent(out)" - a.fortran_type_post = ("\n" + " " * 8 + "type(c_ptr), intent(out) :: " + name + - "_n\n" + " " * 8 + "integer(c_size_t) :: " + name +"_nn") + a.fortran_type_post = (" " * 8 + "type(c_ptr), intent(out) :: " + name + "_n\n" + + " " * 8 + "integer(c_size_t) :: " + name +"_nn") a.fortran_name_post = ", " + name + "_n," + name + "_nn" return a @@ -733,8 +733,8 @@ def ovectorvectordouble(name, value=None, python_value=None, julia_value=None): "tmp_" + api_name_n + "[i], own = true) for i in 1:" + api_name_nn + "[] ]") a.fortran_type = "type (c_ptr), intent(out)" - a.fortran_type_post = ("\n" + " " * 8 + "type(c_ptr), intent(out) :: " + name + - "_n\n" + " " * 8 + "integer (c_size_t) :: " + name + "_nn") + a.fortran_type_post = (" " * 8 + "type(c_ptr), intent(out) :: " + name + "_n\n" + + " " * 8 + "integer (c_size_t) :: " + name + "_nn") a.fortran_name_post = ", " + name + "_n," + name + "_nn" return a @@ -784,8 +784,8 @@ def ovectorvectorpair(name, value=None, python_value=None, julia_value=None): name + "[i] = [(tmp[i], tmp[i+1]) for i in 1:2:length(tmp)]\n " + "end") a.fortran_type = "type(c_ptr), intent(out)" - a.fortran_type_post = ("\n" + " " * 8 + "type(c_ptr), intent(out) :: " + name + - "_n\n" + " " * 8 + "integer (C_SIZE_T) ::" + name +"_nn") + a.fortran_type_post = (" " * 8 + "type(c_ptr), intent(out) :: " + name + "_n\n" + + " " * 8 + "integer(c_size_t) ::" + name +"_nn") a.fortran_name_post = ", " + name + "_n," + name + "_nn" return a @@ -810,8 +810,8 @@ def iargcargv(): a.julia_arg = "length(argv), argv" a.texi = "(argc = 0)}, @code{argv = []" a.fortran_name_pre = "argc," - a.fortran_type = "integer(c_int), value :: argc\n" + " " * 8 + "type(c_ptr)" - a.fortran_type_post = "(*)" + a.fortran_type = "integer(c_int), value :: argc\n" + " " * 8 + "type(c_ptr), dimension(*)" + a.fortran_type_post = "" return a @@ -850,7 +850,7 @@ def isizefun(name): a.julia_arg = "api_" + name + "_, C_NULL" a.julia_ctype = "Ptr{Cvoid}, Ptr{Cvoid}" a.fortran_type = "type(c_funptr)" - a.fortran_type_post = " ! TODO: Needs implementation" + a.fortran_type_post = " " * 8 + "! TODO: callback needs implementation" return a @@ -1878,7 +1878,7 @@ class API: if rtype : self.fwrite(f, tab*2 + rtype.fortran_type + " :: " + fname + "\n") # Variable defintions - self.fwrite(f, "".join(list(( tab*2 + a.fortran_type + " :: " + a.name + a.fortran_type_post + "\n" for a in args + (oint("ierr"), ) )))) + self.fwrite(f, "".join(list(( tab*2 + a.fortran_type + " :: " + a.name + "\n" + (a.fortran_type_post + "\n" if a.fortran_type_post else "") for a in args + (oint("ierr"), ) )))) # Procedure end self.fwrite(f, tab + "end " + ("function" if rtype else "subroutine") + " " + fname + "\n") diff --git a/api/gmsh.f90 b/api/gmsh.f90 index c6fd74f8550bd4650be0e29153bb59f40c8d2900..2a17beb6feed04ff9afb346ef6069a821de8a69d 100644 --- a/api/gmsh.f90 +++ b/api/gmsh.f90 @@ -38,7 +38,7 @@ module gmsh subroutine gmshInitialize(argc,argv, readConfigFiles, run, ierr) bind(C, name="gmshInitialize") use, intrinsic :: iso_c_binding integer(c_int), value :: argc - type(c_ptr) :: argv(*) + type(c_ptr), dimension(*) :: argv integer(c_int), value :: readConfigFiles integer(c_int), value :: run integer(c_int) :: ierr @@ -63,7 +63,7 @@ module gmsh !! with model data will create a new model. subroutine gmshOpen(fileName, ierr) bind(C, name="gmshOpen") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: fileName(*) + character(len=1, kind=c_char), dimension(*) :: fileName integer(c_int) :: ierr end subroutine gmshOpen @@ -72,14 +72,14 @@ module gmsh !! a file with model data will add the data to the current model. subroutine gmshMerge(fileName, ierr) bind(C, name="gmshMerge") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: fileName(*) + character(len=1, kind=c_char), dimension(*) :: fileName integer(c_int) :: ierr end subroutine gmshMerge !> Write a file. The export format is determined by the file extension. subroutine gmshWrite(fileName, ierr) bind(C, name="gmshWrite") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: fileName(*) + character(len=1, kind=c_char), dimension(*) :: fileName integer(c_int) :: ierr end subroutine gmshWrite @@ -95,7 +95,7 @@ module gmsh !! the Gmsh reference manual. subroutine gmshOptionSetNumber(name, value, ierr) bind(C, name="gmshOptionSetNumber") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name real(c_double), value :: value integer(c_int) :: ierr end subroutine gmshOptionSetNumber @@ -105,7 +105,7 @@ module gmsh !! options are listed in the Gmsh reference manual. subroutine gmshOptionGetNumber(name, value, ierr) bind(C, name="gmshOptionGetNumber") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name real(c_double) :: value integer(c_int) :: ierr end subroutine gmshOptionGetNumber @@ -115,8 +115,8 @@ module gmsh !! Gmsh reference manual. subroutine gmshOptionSetString(name, value, ierr) bind(C, name="gmshOptionSetString") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - character(len=1, kind=c_char) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + character(len=1, kind=c_char), dimension(*) :: value integer(c_int) :: ierr end subroutine gmshOptionSetString @@ -125,8 +125,8 @@ module gmsh !! the Gmsh reference manual. subroutine gmshOptionGetString(name, value, ierr) bind(C, name="gmshOptionGetString") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - type(c_ptr) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + type(c_ptr), dimension(*) :: value integer(c_int) :: ierr end subroutine gmshOptionGetString @@ -137,7 +137,7 @@ module gmsh !! conciseness "Color." can be ommitted in `name'. subroutine gmshOptionSetColor(name, r, g, b, a, ierr) bind(C, name="gmshOptionSetColor") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int), value :: r integer(c_int), value :: g integer(c_int), value :: b @@ -151,7 +151,7 @@ module gmsh !! conciseness "Color." can be ommitted in `name'. subroutine gmshOptionGetColor(name, r, g, b, a, ierr) bind(C, name="gmshOptionGetColor") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: r integer(c_int) :: g integer(c_int) :: b @@ -162,7 +162,7 @@ module gmsh !> Add a new model, with name `name', and set it as the current model. subroutine gmshModelAdd(name, ierr) bind(C, name="gmshModelAdd") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelAdd @@ -183,7 +183,7 @@ module gmsh !> Get the name of the current model. subroutine gmshModelGetCurrent(name, ierr) bind(C, name="gmshModelGetCurrent") use, intrinsic :: iso_c_binding - type(c_ptr) :: name(*) + type(c_ptr), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelGetCurrent @@ -191,7 +191,7 @@ module gmsh !! the same name, select the one that was added first. subroutine gmshModelSetCurrent(name, ierr) bind(C, name="gmshModelSetCurrent") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelSetCurrent @@ -199,14 +199,14 @@ module gmsh !! is associated when a model is read from a file on disk. subroutine gmshModelGetFileName(fileName, ierr) bind(C, name="gmshModelGetFileName") use, intrinsic :: iso_c_binding - type(c_ptr) :: fileName(*) + type(c_ptr), dimension(*) :: fileName integer(c_int) :: ierr end subroutine gmshModelGetFileName !> Set the file name associated with the current model. subroutine gmshModelSetFileName(fileName, ierr) bind(C, name="gmshModelSetFileName") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: fileName(*) + character(len=1, kind=c_char), dimension(*) :: fileName integer(c_int) :: ierr end subroutine gmshModelSetFileName @@ -226,7 +226,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelSetEntityName @@ -235,7 +235,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - type(c_ptr) :: name(*) + type(c_ptr), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelGetEntityName @@ -280,10 +280,10 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelAddPhysicalGroup integer(c_int), value :: dim - integer(c_int) :: tags(*) + integer(c_int), dimension(*) :: tags integer(c_size_t), value :: tags_n integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end function gmshModelAddPhysicalGroup @@ -291,7 +291,7 @@ module gmsh !! is empty, remove all groups. subroutine gmshModelRemovePhysicalGroups(dimTags, dimTags_n, ierr) bind(C, name="gmshModelRemovePhysicalGroups") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelRemovePhysicalGroups @@ -301,14 +301,14 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelSetPhysicalName !> Remove the physical name `name' from the current model. subroutine gmshModelRemovePhysicalName(name, ierr) bind(C, name="gmshModelRemovePhysicalName") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelRemovePhysicalName @@ -317,7 +317,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - type(c_ptr) :: name(*) + type(c_ptr), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelGetPhysicalName @@ -339,7 +339,7 @@ module gmsh !! to dimension 0 (i.e. to points) if `recursive' is true. subroutine gmshModelGetBoundary(dimTags, dimTags_n, outDimTags, outDimTags_n, combined, oriented, recursive, ierr) bind(C, name="gmshModelGetBoundary") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n @@ -415,7 +415,7 @@ module gmsh integer(c_int) :: gmshModelAddDiscreteEntity integer(c_int), value :: dim integer(c_int), value :: tag - integer(c_int) :: boundary(*) + integer(c_int), dimension(*) :: boundary integer(c_size_t), value :: boundary_n integer(c_int) :: ierr end function gmshModelAddDiscreteEntity @@ -426,7 +426,7 @@ module gmsh !! dimension 0. subroutine gmshModelRemoveEntities(dimTags, dimTags_n, recursive, ierr) bind(C, name="gmshModelRemoveEntities") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int), value :: recursive integer(c_int) :: ierr @@ -435,7 +435,7 @@ module gmsh !> Remove the entity name `name' from the current model. subroutine gmshModelRemoveEntityName(name, ierr) bind(C, name="gmshModelRemoveEntityName") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshModelRemoveEntityName @@ -444,7 +444,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - type(c_ptr) :: entityType(*) + type(c_ptr), dimension(*) :: entityType integer(c_int) :: ierr end subroutine gmshModelGetType @@ -489,7 +489,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n type(c_ptr), intent(out) :: coord integer(c_size_t) :: coord_n @@ -509,7 +509,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n type(c_ptr), intent(out) :: derivatives integer(c_size_t) :: derivatives_n @@ -531,7 +531,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n type(c_ptr), intent(out) :: derivatives integer(c_size_t) :: derivatives_n @@ -547,7 +547,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n type(c_ptr), intent(out) :: curvatures integer(c_size_t) :: curvatures_n @@ -561,7 +561,7 @@ module gmsh subroutine gmshModelGetPrincipalCurvatures(tag, parametricCoord, parametricCoord_n, curvatureMax, curvatureMax_n, curvatureMin, curvatureMin_n, directionMax, directionMax_n, directionMin, directionMin_n, ierr) bind(C, name="gmshModelGetPrincipalCurvatures") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n type(c_ptr), intent(out) :: curvatureMax integer(c_size_t) :: curvatureMax_n @@ -581,7 +581,7 @@ module gmsh subroutine gmshModelGetNormal(tag, parametricCoord, parametricCoord_n, normals, normals_n, ierr) bind(C, name="gmshModelGetNormal") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n type(c_ptr), intent(out) :: normals integer(c_size_t) :: normals_n @@ -598,7 +598,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: coord(*) + real(c_double), dimension(*) :: coord integer(c_size_t), value :: coord_n type(c_ptr), intent(out) :: parametricCoord integer(c_size_t) :: parametricCoord_n @@ -628,7 +628,7 @@ module gmsh integer(c_int) :: gmshModelIsInside integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: coord(*) + real(c_double), dimension(*) :: coord integer(c_size_t), value :: coord_n integer(c_int), value :: parametric integer(c_int) :: ierr @@ -645,7 +645,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: coord(*) + real(c_double), dimension(*) :: coord integer(c_size_t), value :: coord_n type(c_ptr), intent(out) :: closestCoord integer(c_size_t) :: closestCoord_n @@ -664,7 +664,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n integer(c_int), value :: surfaceTag type(c_ptr), intent(out) :: surfaceParametricCoord @@ -677,7 +677,7 @@ module gmsh !! visibility setting recursively if `recursive' is true. subroutine gmshModelSetVisibility(dimTags, dimTags_n, value, recursive, ierr) bind(C, name="gmshModelSetVisibility") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int), value :: value integer(c_int), value :: recursive @@ -707,7 +707,7 @@ module gmsh !! 255. Apply the color setting recursively if `recursive' is true. subroutine gmshModelSetColor(dimTags, dimTags_n, r, g, b, a, recursive, ierr) bind(C, name="gmshModelSetColor") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int), value :: r integer(c_int), value :: g @@ -752,9 +752,9 @@ module gmsh subroutine gmshModelMeshPartition(numPart, elementTags, elementTags_n, partitions, partitions_n, ierr) bind(C, name="gmshModelMeshPartition") use, intrinsic :: iso_c_binding integer(c_int), value :: numPart - integer(c_size_t) :: elementTags(*) + integer(c_size_t), dimension(*) :: elementTags integer(c_size_t), value :: elementTags_n - integer(c_int) :: partitions(*) + integer(c_int), dimension(*) :: partitions integer(c_size_t), value :: partitions_n integer(c_int) :: ierr end subroutine gmshModelMeshPartition @@ -776,10 +776,10 @@ module gmsh !! entities. subroutine gmshModelMeshOptimize(method, force, niter, dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshOptimize") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: method(*) + character(len=1, kind=c_char), dimension(*) :: method integer(c_int), value :: force integer(c_int), value :: niter - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshOptimize @@ -827,7 +827,7 @@ module gmsh !! another entity with a non-empty mesh. subroutine gmshModelMeshClear(dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshClear") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshClear @@ -837,7 +837,7 @@ module gmsh !! mesh. subroutine gmshModelMeshReverse(dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshReverse") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshReverse @@ -848,9 +848,9 @@ module gmsh !! is empty, transform all the nodes in the mesh. subroutine gmshModelMeshAffineTransform(affineTransform, affineTransform_n, dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshAffineTransform") use, intrinsic :: iso_c_binding - real(c_double) :: affineTransform(*) + real(c_double), dimension(*) :: affineTransform integer(c_size_t), value :: affineTransform_n - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshAffineTransform @@ -923,9 +923,9 @@ module gmsh subroutine gmshModelMeshSetNode(nodeTag, coord, coord_n, parametricCoord, parametricCoord_n, ierr) bind(C, name="gmshModelMeshSetNode") use, intrinsic :: iso_c_binding integer(c_size_t), value :: nodeTag - real(c_double) :: coord(*) + real(c_double), dimension(*) :: coord integer(c_size_t), value :: coord_n - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n integer(c_int) :: ierr end subroutine gmshModelMeshSetNode @@ -979,11 +979,11 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - integer(c_size_t) :: nodeTags(*) + integer(c_size_t), dimension(*) :: nodeTags integer(c_size_t), value :: nodeTags_n - real(c_double) :: coord(*) + real(c_double), dimension(*) :: coord integer(c_size_t), value :: coord_n - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n integer(c_int) :: ierr end subroutine gmshModelMeshAddNodes @@ -1129,7 +1129,7 @@ module gmsh function gmshModelMeshGetElementType(familyName, order, serendip, ierr) bind(C, name="gmshModelMeshGetElementType") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelMeshGetElementType - character(len=1, kind=c_char) :: familyName(*) + character(len=1, kind=c_char), dimension(*) :: familyName integer(c_int), value :: order integer(c_int), value :: serendip integer(c_int) :: ierr @@ -1143,7 +1143,7 @@ module gmsh subroutine gmshModelMeshGetElementProperties(elementType, elementName, dim, order, numNodes, localNodeCoord, localNodeCoord_n, numPrimaryNodes, ierr) bind(C, name="gmshModelMeshGetElementProperties") use, intrinsic :: iso_c_binding integer(c_int), value :: elementType - type(c_ptr) :: elementName(*) + type(c_ptr), dimension(*) :: elementName integer(c_int) :: dim integer(c_int) :: order integer(c_int) :: numNodes @@ -1206,11 +1206,11 @@ module gmsh !! indexed by `task'. subroutine gmshModelMeshGetElementQualities(elementTags, elementTags_n, elementsQuality, elementsQuality_n, qualityName, task, numTasks, ierr) bind(C, name="gmshModelMeshGetElementQualities") use, intrinsic :: iso_c_binding - integer(c_size_t) :: elementTags(*) + integer(c_size_t), dimension(*) :: elementTags integer(c_size_t), value :: elementTags_n type(c_ptr), intent(out) :: elementsQuality integer(c_size_t) :: elementsQuality_n - character(len=1, kind=c_char) :: qualityName(*) + character(len=1, kind=c_char), dimension(*) :: qualityName integer(c_size_t), value :: task integer(c_size_t), value :: numTasks integer(c_int) :: ierr @@ -1230,7 +1230,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - integer(c_int) :: elementTypes(*) + integer(c_int), dimension(*) :: elementTypes integer(c_size_t), value :: elementTypes_n type(c_ptr), intent(out) :: elementTags type(c_ptr), intent(out) :: elementTags_n @@ -1252,9 +1252,9 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: tag integer(c_int), value :: elementType - integer(c_size_t) :: elementTags(*) + integer(c_size_t), dimension(*) :: elementTags integer(c_size_t), value :: elementTags_n - integer(c_size_t) :: nodeTags(*) + integer(c_size_t), dimension(*) :: nodeTags integer(c_size_t), value :: nodeTags_n integer(c_int) :: ierr end subroutine gmshModelMeshAddElementsByType @@ -1274,7 +1274,7 @@ module gmsh subroutine gmshModelMeshGetIntegrationPoints(elementType, integrationType, localCoord, localCoord_n, weights, weights_n, ierr) bind(C, name="gmshModelMeshGetIntegrationPoints") use, intrinsic :: iso_c_binding integer(c_int), value :: elementType - character(len=1, kind=c_char) :: integrationType(*) + character(len=1, kind=c_char), dimension(*) :: integrationType type(c_ptr), intent(out) :: localCoord integer(c_size_t) :: localCoord_n type(c_ptr), intent(out) :: weights @@ -1299,7 +1299,7 @@ module gmsh subroutine gmshModelMeshGetJacobians(elementType, localCoord, localCoord_n, jacobians, jacobians_n, determinants, determinants_n, coord, coord_n, tag, task, numTasks, ierr) bind(C, name="gmshModelMeshGetJacobians") use, intrinsic :: iso_c_binding integer(c_int), value :: elementType - real(c_double) :: localCoord(*) + real(c_double), dimension(*) :: localCoord integer(c_size_t), value :: localCoord_n type(c_ptr), intent(out) :: jacobians integer(c_size_t) :: jacobians_n @@ -1346,7 +1346,7 @@ module gmsh subroutine gmshModelMeshGetJacobian(elementTag, localCoord, localCoord_n, jacobians, jacobians_n, determinants, determinants_n, coord, coord_n, ierr) bind(C, name="gmshModelMeshGetJacobian") use, intrinsic :: iso_c_binding integer(c_size_t), value :: elementTag - real(c_double) :: localCoord(*) + real(c_double), dimension(*) :: localCoord integer(c_size_t), value :: localCoord_n type(c_ptr), intent(out) :: jacobians integer(c_size_t) :: jacobians_n @@ -1380,14 +1380,14 @@ module gmsh subroutine gmshModelMeshGetBasisFunctions(elementType, localCoord, localCoord_n, functionSpaceType, numComponents, basisFunctions, basisFunctions_n, numOrientations, wantedOrientations, wantedOrientations_n, ierr) bind(C, name="gmshModelMeshGetBasisFunctions") use, intrinsic :: iso_c_binding integer(c_int), value :: elementType - real(c_double) :: localCoord(*) + real(c_double), dimension(*) :: localCoord integer(c_size_t), value :: localCoord_n - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType integer(c_int) :: numComponents type(c_ptr), intent(out) :: basisFunctions integer(c_size_t) :: basisFunctions_n integer(c_int) :: numOrientations - integer(c_int) :: wantedOrientations(*) + integer(c_int), dimension(*) :: wantedOrientations integer(c_size_t), value :: wantedOrientations_n integer(c_int) :: ierr end subroutine gmshModelMeshGetBasisFunctions @@ -1401,7 +1401,7 @@ module gmsh subroutine gmshModelMeshGetBasisFunctionsOrientation(elementType, functionSpaceType, basisFunctionsOrientation, basisFunctionsOrientation_n, tag, task, numTasks, ierr) bind(C, name="gmshModelMeshGetBasisFunctionsOrientation") use, intrinsic :: iso_c_binding integer(c_int), value :: elementType - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType type(c_ptr), intent(out) :: basisFunctionsOrientation integer(c_size_t) :: basisFunctionsOrientation_n integer(c_int), value :: tag @@ -1414,7 +1414,7 @@ module gmsh subroutine gmshModelMeshGetBasisFunctionsOrientationForElement(elementTag, functionSpaceType, basisFunctionsOrientation, ierr) bind(C, name="gmshModelMeshGetBasisFunctionsOrientationForElement") use, intrinsic :: iso_c_binding integer(c_size_t), value :: elementTag - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType integer(c_int) :: basisFunctionsOrientation integer(c_int) :: ierr end subroutine gmshModelMeshGetBasisFunctionsOrientationForElement @@ -1425,7 +1425,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelMeshGetNumberOfOrientations integer(c_int), value :: elementType - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType integer(c_int) :: ierr end function gmshModelMeshGetNumberOfOrientations @@ -1449,7 +1449,7 @@ module gmsh !! well. subroutine gmshModelMeshGetEdges(nodeTags, nodeTags_n, edgeTags, edgeTags_n, edgeOrientations, edgeOrientations_n, ierr) bind(C, name="gmshModelMeshGetEdges") use, intrinsic :: iso_c_binding - integer(c_size_t) :: nodeTags(*) + integer(c_size_t), dimension(*) :: nodeTags integer(c_size_t), value :: nodeTags_n type(c_ptr), intent(out) :: edgeTags integer(c_size_t) :: edgeTags_n @@ -1466,7 +1466,7 @@ module gmsh subroutine gmshModelMeshGetFaces(faceType, nodeTags, nodeTags_n, faceTags, faceTags_n, faceOrientations, faceOrientations_n, ierr) bind(C, name="gmshModelMeshGetFaces") use, intrinsic :: iso_c_binding integer(c_int), value :: faceType - integer(c_size_t) :: nodeTags(*) + integer(c_size_t), dimension(*) :: nodeTags integer(c_size_t), value :: nodeTags_n type(c_ptr), intent(out) :: faceTags integer(c_size_t) :: faceTags_n @@ -1478,7 +1478,7 @@ module gmsh !> Create unique mesh edges for the entities `dimTags'. subroutine gmshModelMeshCreateEdges(dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshCreateEdges") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshCreateEdges @@ -1486,7 +1486,7 @@ module gmsh !> Create unique mesh faces for the entities `dimTags'. subroutine gmshModelMeshCreateFaces(dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshCreateFaces") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshCreateFaces @@ -1520,9 +1520,9 @@ module gmsh !! their nodes `edgeNodes'. subroutine gmshModelMeshAddEdges(edgeTags, edgeTags_n, edgeNodes, edgeNodes_n, ierr) bind(C, name="gmshModelMeshAddEdges") use, intrinsic :: iso_c_binding - integer(c_size_t) :: edgeTags(*) + integer(c_size_t), dimension(*) :: edgeTags integer(c_size_t), value :: edgeTags_n - integer(c_size_t) :: edgeNodes(*) + integer(c_size_t), dimension(*) :: edgeNodes integer(c_size_t), value :: edgeNodes_n integer(c_int) :: ierr end subroutine gmshModelMeshAddEdges @@ -1532,9 +1532,9 @@ module gmsh subroutine gmshModelMeshAddFaces(faceType, faceTags, faceTags_n, faceNodes, faceNodes_n, ierr) bind(C, name="gmshModelMeshAddFaces") use, intrinsic :: iso_c_binding integer(c_int), value :: faceType - integer(c_size_t) :: faceTags(*) + integer(c_size_t), dimension(*) :: faceTags integer(c_size_t), value :: faceTags_n - integer(c_size_t) :: faceNodes(*) + integer(c_size_t), dimension(*) :: faceNodes integer(c_size_t), value :: faceNodes_n integer(c_int) :: ierr end subroutine gmshModelMeshAddFaces @@ -1549,7 +1549,7 @@ module gmsh subroutine gmshModelMeshGetKeys(elementType, functionSpaceType, typeKeys, typeKeys_n, entityKeys, entityKeys_n, coord, coord_n, tag, returnCoord, ierr) bind(C, name="gmshModelMeshGetKeys") use, intrinsic :: iso_c_binding integer(c_int), value :: elementType - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType type(c_ptr), intent(out) :: typeKeys integer(c_size_t) :: typeKeys_n type(c_ptr), intent(out) :: entityKeys @@ -1565,7 +1565,7 @@ module gmsh subroutine gmshModelMeshGetKeysForElement(elementTag, functionSpaceType, typeKeys, typeKeys_n, entityKeys, entityKeys_n, coord, coord_n, returnCoord, ierr) bind(C, name="gmshModelMeshGetKeysForElement") use, intrinsic :: iso_c_binding integer(c_size_t), value :: elementTag - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType type(c_ptr), intent(out) :: typeKeys integer(c_size_t) :: typeKeys_n type(c_ptr), intent(out) :: entityKeys @@ -1582,7 +1582,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelMeshGetNumberOfKeys integer(c_int), value :: elementType - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType integer(c_int) :: ierr end function gmshModelMeshGetNumberOfKeys @@ -1595,12 +1595,12 @@ module gmsh !! future release. subroutine gmshModelMeshGetKeysInformation(typeKeys, typeKeys_n, entityKeys, entityKeys_n, elementType, functionSpaceType, infoKeys, infoKeys_n, ierr) bind(C, name="gmshModelMeshGetKeysInformation") use, intrinsic :: iso_c_binding - integer(c_int) :: typeKeys(*) + integer(c_int), dimension(*) :: typeKeys integer(c_size_t), value :: typeKeys_n - integer(c_size_t) :: entityKeys(*) + integer(c_size_t), dimension(*) :: entityKeys integer(c_size_t), value :: entityKeys_n integer(c_int), value :: elementType - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType type(c_ptr), intent(out) :: infoKeys integer(c_size_t) :: infoKeys_n integer(c_int) :: ierr @@ -1696,7 +1696,7 @@ module gmsh !! entities of dimension 0 (points) are handled. subroutine gmshModelMeshSetSize(dimTags, dimTags_n, size, ierr) bind(C, name="gmshModelMeshSetSize") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: size integer(c_int) :: ierr @@ -1707,7 +1707,7 @@ module gmsh !! constraint is specified on the corresponding entity. subroutine gmshModelMeshGetSizes(dimTags, dimTags_n, sizes, sizes_n, ierr) bind(C, name="gmshModelMeshGetSizes") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n type(c_ptr), intent(out) :: sizes integer(c_size_t) :: sizes_n @@ -1721,9 +1721,9 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: dim integer(c_int), value :: tag - real(c_double) :: parametricCoord(*) + real(c_double), dimension(*) :: parametricCoord integer(c_size_t), value :: parametricCoord_n - real(c_double) :: sizes(*) + real(c_double), dimension(*) :: sizes integer(c_size_t), value :: sizes_n integer(c_int) :: ierr end subroutine gmshModelMeshSetSizeAtParametricPoints @@ -1739,7 +1739,8 @@ module gmsh !! equivalent to a no-op. subroutine gmshModelMeshSetSizeCallback(callback, ierr) bind(C, name="gmshModelMeshSetSizeCallback") use, intrinsic :: iso_c_binding - type(c_funptr) :: callback ! TODO: Needs implementation + type(c_funptr) :: callback + ! TODO: callback needs implementation integer(c_int) :: ierr end subroutine gmshModelMeshSetSizeCallback @@ -1757,7 +1758,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: tag integer(c_int), value :: numNodes - character(len=1, kind=c_char) :: meshType(*) + character(len=1, kind=c_char), dimension(*) :: meshType real(c_double), value :: coef integer(c_int) :: ierr end subroutine gmshModelMeshSetTransfiniteCurve @@ -1772,8 +1773,8 @@ module gmsh subroutine gmshModelMeshSetTransfiniteSurface(tag, arrangement, cornerTags, cornerTags_n, ierr) bind(C, name="gmshModelMeshSetTransfiniteSurface") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: arrangement(*) - integer(c_int) :: cornerTags(*) + character(len=1, kind=c_char), dimension(*) :: arrangement + integer(c_int), dimension(*) :: cornerTags integer(c_size_t), value :: cornerTags_n integer(c_int) :: ierr end subroutine gmshModelMeshSetTransfiniteSurface @@ -1784,7 +1785,7 @@ module gmsh subroutine gmshModelMeshSetTransfiniteVolume(tag, cornerTags, cornerTags_n, ierr) bind(C, name="gmshModelMeshSetTransfiniteVolume") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - integer(c_int) :: cornerTags(*) + integer(c_int), dimension(*) :: cornerTags integer(c_size_t), value :: cornerTags_n integer(c_int) :: ierr end subroutine gmshModelMeshSetTransfiniteVolume @@ -1799,7 +1800,7 @@ module gmsh !! the transfinite surfaces. subroutine gmshModelMeshSetTransfiniteAutomatic(dimTags, dimTags_n, cornerAngle, recombine, ierr) bind(C, name="gmshModelMeshSetTransfiniteAutomatic") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: cornerAngle integer(c_int), value :: recombine @@ -1868,7 +1869,7 @@ module gmsh subroutine gmshModelMeshSetCompound(dim, tags, tags_n, ierr) bind(C, name="gmshModelMeshSetCompound") use, intrinsic :: iso_c_binding integer(c_int), value :: dim - integer(c_int) :: tags(*) + integer(c_int), dimension(*) :: tags integer(c_size_t), value :: tags_n integer(c_int) :: ierr end subroutine gmshModelMeshSetCompound @@ -1887,7 +1888,7 @@ module gmsh !! `dimTags' is empty, remove all constraings. subroutine gmshModelMeshRemoveConstraints(dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshRemoveConstraints") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshRemoveConstraints @@ -1904,7 +1905,7 @@ module gmsh subroutine gmshModelMeshEmbed(dim, tags, tags_n, inDim, inTag, ierr) bind(C, name="gmshModelMeshEmbed") use, intrinsic :: iso_c_binding integer(c_int), value :: dim - integer(c_int) :: tags(*) + integer(c_int), dimension(*) :: tags integer(c_size_t), value :: tags_n integer(c_int), value :: inDim integer(c_int), value :: inTag @@ -1916,7 +1917,7 @@ module gmsh !! points if `dim' == 0). subroutine gmshModelMeshRemoveEmbedded(dimTags, dimTags_n, dim, ierr) bind(C, name="gmshModelMeshRemoveEmbedded") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int), value :: dim integer(c_int) :: ierr @@ -1939,7 +1940,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: elementType integer(c_int), value :: tag - integer(c_size_t) :: ordering(*) + integer(c_size_t), dimension(*) :: ordering integer(c_size_t), value :: ordering_n integer(c_int) :: ierr end subroutine gmshModelMeshReorderElements @@ -1967,11 +1968,11 @@ module gmsh subroutine gmshModelMeshSetPeriodic(dim, tags, tags_n, tagsMaster, tagsMaster_n, affineTransform, affineTransform_n, ierr) bind(C, name="gmshModelMeshSetPeriodic") use, intrinsic :: iso_c_binding integer(c_int), value :: dim - integer(c_int) :: tags(*) + integer(c_int), dimension(*) :: tags integer(c_size_t), value :: tags_n - integer(c_int) :: tagsMaster(*) + integer(c_int), dimension(*) :: tagsMaster integer(c_size_t), value :: tagsMaster_n - real(c_double) :: affineTransform(*) + real(c_double), dimension(*) :: affineTransform integer(c_size_t), value :: affineTransform_n integer(c_int) :: ierr end subroutine gmshModelMeshSetPeriodic @@ -1981,7 +1982,7 @@ module gmsh subroutine gmshModelMeshGetPeriodic(dim, tags, tags_n, tagMaster, tagMaster_n, ierr) bind(C, name="gmshModelMeshGetPeriodic") use, intrinsic :: iso_c_binding integer(c_int), value :: dim - integer(c_int) :: tags(*) + integer(c_int), dimension(*) :: tags integer(c_size_t), value :: tags_n type(c_ptr), intent(out) :: tagMaster integer(c_size_t) :: tagMaster_n @@ -2017,7 +2018,7 @@ module gmsh subroutine gmshModelMeshGetPeriodicKeys(elementType, functionSpaceType, tag, tagMaster, typeKeys, typeKeys_n, typeKeysMaster, typeKeysMaster_n, entityKeys, entityKeys_n, entityKeysMaster, entityKeysMaster_n, coord, coord_n, coordMaster, coordMaster_n, returnCoord, ierr) bind(C, name="gmshModelMeshGetPeriodicKeys") use, intrinsic :: iso_c_binding integer(c_int), value :: elementType - character(len=1, kind=c_char) :: functionSpaceType(*) + character(len=1, kind=c_char), dimension(*) :: functionSpaceType integer(c_int), value :: tag integer(c_int) :: tagMaster type(c_ptr), intent(out) :: typeKeys @@ -2048,7 +2049,7 @@ module gmsh use, intrinsic :: iso_c_binding type(c_ptr), intent(out) :: tags integer(c_size_t) :: tags_n - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshGetDuplicateNodes @@ -2057,7 +2058,7 @@ module gmsh !! is empty, consider the whole mesh. subroutine gmshModelMeshRemoveDuplicateNodes(dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshRemoveDuplicateNodes") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshRemoveDuplicateNodes @@ -2067,7 +2068,7 @@ module gmsh !! whole mesh. subroutine gmshModelMeshRemoveDuplicateElements(dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshRemoveDuplicateElements") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshRemoveDuplicateElements @@ -2084,7 +2085,7 @@ module gmsh !> Set the visibility of the elements of tags `elementTags' to `value'. subroutine gmshModelMeshSetVisibility(elementTags, elementTags_n, value, ierr) bind(C, name="gmshModelMeshSetVisibility") use, intrinsic :: iso_c_binding - integer(c_size_t) :: elementTags(*) + integer(c_size_t), dimension(*) :: elementTags integer(c_size_t), value :: elementTags_n integer(c_int), value :: value integer(c_int) :: ierr @@ -2115,7 +2116,7 @@ module gmsh !! for all the discrete entities. subroutine gmshModelMeshCreateGeometry(dimTags, dimTags_n, ierr) bind(C, name="gmshModelMeshCreateGeometry") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelMeshCreateGeometry @@ -2146,12 +2147,12 @@ module gmsh !! of the meshing pipeline. subroutine gmshModelMeshAddHomologyRequest(type, domainTags, domainTags_n, subdomainTags, subdomainTags_n, dims, dims_n, ierr) bind(C, name="gmshModelMeshAddHomologyRequest") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: type(*) - integer(c_int) :: domainTags(*) + character(len=1, kind=c_char), dimension(*) :: type + integer(c_int), dimension(*) :: domainTags integer(c_size_t), value :: domainTags_n - integer(c_int) :: subdomainTags(*) + integer(c_int), dimension(*) :: subdomainTags integer(c_size_t), value :: subdomainTags_n - integer(c_int) :: dims(*) + integer(c_int), dimension(*) :: dims integer(c_size_t), value :: dims_n integer(c_int) :: ierr end subroutine gmshModelMeshAddHomologyRequest @@ -2183,7 +2184,7 @@ module gmsh !! resulting triangles in `tri'. subroutine gmshModelMeshTriangulate(coord, coord_n, tri, tri_n, ierr) bind(C, name="gmshModelMeshTriangulate") use, intrinsic :: iso_c_binding - real(c_double) :: coord(*) + real(c_double), dimension(*) :: coord integer(c_size_t), value :: coord_n type(c_ptr), intent(out) :: tri integer(c_size_t) :: tri_n @@ -2195,7 +2196,7 @@ module gmsh !! the resulting tetrahedra in `tetra'. subroutine gmshModelMeshTetrahedralize(coord, coord_n, tetra, tetra_n, ierr) bind(C, name="gmshModelMeshTetrahedralize") use, intrinsic :: iso_c_binding - real(c_double) :: coord(*) + real(c_double), dimension(*) :: coord integer(c_size_t), value :: coord_n type(c_ptr), intent(out) :: tetra integer(c_size_t) :: tetra_n @@ -2208,7 +2209,7 @@ module gmsh function gmshModelMeshFieldAdd(fieldType, tag, ierr) bind(C, name="gmshModelMeshFieldAdd") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelMeshFieldAdd - character(len=1, kind=c_char) :: fieldType(*) + character(len=1, kind=c_char), dimension(*) :: fieldType integer(c_int), value :: tag integer(c_int) :: ierr end function gmshModelMeshFieldAdd @@ -2232,7 +2233,7 @@ module gmsh subroutine gmshModelMeshFieldGetType(tag, fileType, ierr) bind(C, name="gmshModelMeshFieldGetType") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - type(c_ptr) :: fileType(*) + type(c_ptr), dimension(*) :: fileType integer(c_int) :: ierr end subroutine gmshModelMeshFieldGetType @@ -2240,7 +2241,7 @@ module gmsh subroutine gmshModelMeshFieldSetNumber(tag, option, value, ierr) bind(C, name="gmshModelMeshFieldSetNumber") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: option(*) + character(len=1, kind=c_char), dimension(*) :: option real(c_double), value :: value integer(c_int) :: ierr end subroutine gmshModelMeshFieldSetNumber @@ -2249,7 +2250,7 @@ module gmsh subroutine gmshModelMeshFieldGetNumber(tag, option, value, ierr) bind(C, name="gmshModelMeshFieldGetNumber") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: option(*) + character(len=1, kind=c_char), dimension(*) :: option real(c_double) :: value integer(c_int) :: ierr end subroutine gmshModelMeshFieldGetNumber @@ -2258,8 +2259,8 @@ module gmsh subroutine gmshModelMeshFieldSetString(tag, option, value, ierr) bind(C, name="gmshModelMeshFieldSetString") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: option(*) - character(len=1, kind=c_char) :: value(*) + character(len=1, kind=c_char), dimension(*) :: option + character(len=1, kind=c_char), dimension(*) :: value integer(c_int) :: ierr end subroutine gmshModelMeshFieldSetString @@ -2267,8 +2268,8 @@ module gmsh subroutine gmshModelMeshFieldGetString(tag, option, value, ierr) bind(C, name="gmshModelMeshFieldGetString") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: option(*) - type(c_ptr) :: value(*) + character(len=1, kind=c_char), dimension(*) :: option + type(c_ptr), dimension(*) :: value integer(c_int) :: ierr end subroutine gmshModelMeshFieldGetString @@ -2276,8 +2277,8 @@ module gmsh subroutine gmshModelMeshFieldSetNumbers(tag, option, value, value_n, ierr) bind(C, name="gmshModelMeshFieldSetNumbers") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: option(*) - real(c_double) :: value(*) + character(len=1, kind=c_char), dimension(*) :: option + real(c_double), dimension(*) :: value integer(c_size_t), value :: value_n integer(c_int) :: ierr end subroutine gmshModelMeshFieldSetNumbers @@ -2286,7 +2287,7 @@ module gmsh subroutine gmshModelMeshFieldGetNumbers(tag, option, value, value_n, ierr) bind(C, name="gmshModelMeshFieldGetNumbers") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: option(*) + character(len=1, kind=c_char), dimension(*) :: option type(c_ptr), intent(out) :: value integer(c_size_t) :: value_n integer(c_int) :: ierr @@ -2383,7 +2384,7 @@ module gmsh function gmshModelGeoAddSpline(pointTags, pointTags_n, tag, ierr) bind(C, name="gmshModelGeoAddSpline") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddSpline - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -2397,7 +2398,7 @@ module gmsh function gmshModelGeoAddBSpline(pointTags, pointTags_n, tag, ierr) bind(C, name="gmshModelGeoAddBSpline") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddBSpline - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -2409,7 +2410,7 @@ module gmsh function gmshModelGeoAddBezier(pointTags, pointTags_n, tag, ierr) bind(C, name="gmshModelGeoAddBezier") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddBezier - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -2422,7 +2423,7 @@ module gmsh function gmshModelGeoAddPolyline(pointTags, pointTags_n, tag, ierr) bind(C, name="gmshModelGeoAddPolyline") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddPolyline - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -2436,7 +2437,7 @@ module gmsh function gmshModelGeoAddCompoundSpline(curveTags, curveTags_n, numIntervals, tag, ierr) bind(C, name="gmshModelGeoAddCompoundSpline") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddCompoundSpline - integer(c_int) :: curveTags(*) + integer(c_int), dimension(*) :: curveTags integer(c_size_t), value :: curveTags_n integer(c_int), value :: numIntervals integer(c_int), value :: tag @@ -2451,7 +2452,7 @@ module gmsh function gmshModelGeoAddCompoundBSpline(curveTags, curveTags_n, numIntervals, tag, ierr) bind(C, name="gmshModelGeoAddCompoundBSpline") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddCompoundBSpline - integer(c_int) :: curveTags(*) + integer(c_int), dimension(*) :: curveTags integer(c_size_t), value :: curveTags_n integer(c_int), value :: numIntervals integer(c_int), value :: tag @@ -2468,7 +2469,7 @@ module gmsh function gmshModelGeoAddCurveLoop(curveTags, curveTags_n, tag, reorient, ierr) bind(C, name="gmshModelGeoAddCurveLoop") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddCurveLoop - integer(c_int) :: curveTags(*) + integer(c_int), dimension(*) :: curveTags integer(c_size_t), value :: curveTags_n integer(c_int), value :: tag integer(c_int), value :: reorient @@ -2479,7 +2480,7 @@ module gmsh !! `curveTags'. Return the `tags' of found curve loops, if any. subroutine gmshModelGeoAddCurveLoops(curveTags, curveTags_n, tags, tags_n, ierr) bind(C, name="gmshModelGeoAddCurveLoops") use, intrinsic :: iso_c_binding - integer(c_int) :: curveTags(*) + integer(c_int), dimension(*) :: curveTags integer(c_size_t), value :: curveTags_n type(c_ptr), intent(out) :: tags integer(c_size_t) :: tags_n @@ -2494,7 +2495,7 @@ module gmsh function gmshModelGeoAddPlaneSurface(wireTags, wireTags_n, tag, ierr) bind(C, name="gmshModelGeoAddPlaneSurface") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddPlaneSurface - integer(c_int) :: wireTags(*) + integer(c_int), dimension(*) :: wireTags integer(c_size_t), value :: wireTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -2508,7 +2509,7 @@ module gmsh function gmshModelGeoAddSurfaceFilling(wireTags, wireTags_n, tag, sphereCenterTag, ierr) bind(C, name="gmshModelGeoAddSurfaceFilling") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddSurfaceFilling - integer(c_int) :: wireTags(*) + integer(c_int), dimension(*) :: wireTags integer(c_size_t), value :: wireTags_n integer(c_int), value :: tag integer(c_int), value :: sphereCenterTag @@ -2521,7 +2522,7 @@ module gmsh function gmshModelGeoAddSurfaceLoop(surfaceTags, surfaceTags_n, tag, ierr) bind(C, name="gmshModelGeoAddSurfaceLoop") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddSurfaceLoop - integer(c_int) :: surfaceTags(*) + integer(c_int), dimension(*) :: surfaceTags integer(c_size_t), value :: surfaceTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -2535,7 +2536,7 @@ module gmsh function gmshModelGeoAddVolume(shellTags, shellTags_n, tag, ierr) bind(C, name="gmshModelGeoAddVolume") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddVolume - integer(c_int) :: shellTags(*) + integer(c_int), dimension(*) :: shellTags integer(c_size_t), value :: shellTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -2551,10 +2552,10 @@ module gmsh function gmshModelGeoAddGeometry(geometry, numbers, numbers_n, strings, strings_n, tag, ierr) bind(C, name="gmshModelGeoAddGeometry") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddGeometry - character(len=1, kind=c_char) :: geometry(*) - real(c_double) :: numbers(*) + character(len=1, kind=c_char), dimension(*) :: geometry + real(c_double), dimension(*) :: numbers integer(c_size_t), value :: numbers_n - type(c_ptr) :: strings(*) + type(c_ptr), dimension(*) :: strings integer(c_size_t), value :: strings_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -2586,16 +2587,16 @@ module gmsh !! layers. subroutine gmshModelGeoExtrude(dimTags, dimTags_n, dx, dy, dz, outDimTags, outDimTags_n, numElements, numElements_n, heights, heights_n, recombine, ierr) bind(C, name="gmshModelGeoExtrude") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: dx real(c_double), value :: dy real(c_double), value :: dz type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n - integer(c_int) :: numElements(*) + integer(c_int), dimension(*) :: numElements integer(c_size_t), value :: numElements_n - real(c_double) :: heights(*) + real(c_double), dimension(*) :: heights integer(c_size_t), value :: heights_n integer(c_int), value :: recombine integer(c_int) :: ierr @@ -2612,7 +2613,7 @@ module gmsh !! layers. subroutine gmshModelGeoRevolve(dimTags, dimTags_n, x, y, z, ax, ay, az, angle, outDimTags, outDimTags_n, numElements, numElements_n, heights, heights_n, recombine, ierr) bind(C, name="gmshModelGeoRevolve") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: x real(c_double), value :: y @@ -2623,9 +2624,9 @@ module gmsh real(c_double), value :: angle type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n - integer(c_int) :: numElements(*) + integer(c_int), dimension(*) :: numElements integer(c_size_t), value :: numElements_n - real(c_double) :: heights(*) + real(c_double), dimension(*) :: heights integer(c_size_t), value :: heights_n integer(c_int), value :: recombine integer(c_int) :: ierr @@ -2642,7 +2643,7 @@ module gmsh !! `recombine' is set, recombine the mesh in the layers. subroutine gmshModelGeoTwist(dimTags, dimTags_n, x, y, z, dx, dy, dz, ax, ay, az, angle, outDimTags, outDimTags_n, numElements, numElements_n, heights, heights_n, recombine, ierr) bind(C, name="gmshModelGeoTwist") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: x real(c_double), value :: y @@ -2656,9 +2657,9 @@ module gmsh real(c_double), value :: angle type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n - integer(c_int) :: numElements(*) + integer(c_int), dimension(*) :: numElements integer(c_size_t), value :: numElements_n - real(c_double) :: heights(*) + real(c_double), dimension(*) :: heights integer(c_size_t), value :: heights_n integer(c_int), value :: recombine integer(c_int) :: ierr @@ -2675,13 +2676,13 @@ module gmsh !! vector field) or scale the normals (if the view is scalar). subroutine gmshModelGeoExtrudeBoundaryLayer(dimTags, dimTags_n, outDimTags, outDimTags_n, numElements, numElements_n, heights, heights_n, recombine, second, viewIndex, ierr) bind(C, name="gmshModelGeoExtrudeBoundaryLayer") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n - integer(c_int) :: numElements(*) + integer(c_int), dimension(*) :: numElements integer(c_size_t), value :: numElements_n - real(c_double) :: heights(*) + real(c_double), dimension(*) :: heights integer(c_size_t), value :: heights_n integer(c_int), value :: recombine integer(c_int), value :: second @@ -2693,7 +2694,7 @@ module gmsh !! (`dx', `dy', `dz'). subroutine gmshModelGeoTranslate(dimTags, dimTags_n, dx, dy, dz, ierr) bind(C, name="gmshModelGeoTranslate") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: dx real(c_double), value :: dy @@ -2706,7 +2707,7 @@ module gmsh !! and the direction (`ax', `ay', `az'). subroutine gmshModelGeoRotate(dimTags, dimTags_n, x, y, z, ax, ay, az, angle, ierr) bind(C, name="gmshModelGeoRotate") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: x real(c_double), value :: y @@ -2723,7 +2724,7 @@ module gmsh !! the center of the homothetic transformation. subroutine gmshModelGeoDilate(dimTags, dimTags_n, x, y, z, a, b, c, ierr) bind(C, name="gmshModelGeoDilate") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: x real(c_double), value :: y @@ -2738,7 +2739,7 @@ module gmsh !! respect to the plane of equation `a' * x + `b' * y + `c' * z + `d' = 0. subroutine gmshModelGeoMirror(dimTags, dimTags_n, a, b, c, d, ierr) bind(C, name="gmshModelGeoMirror") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: a real(c_double), value :: b @@ -2753,7 +2754,7 @@ module gmsh !! release.) subroutine gmshModelGeoSymmetrize(dimTags, dimTags_n, a, b, c, d, ierr) bind(C, name="gmshModelGeoSymmetrize") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: a real(c_double), value :: b @@ -2766,7 +2767,7 @@ module gmsh !! entities are returned in `outDimTags'. subroutine gmshModelGeoCopy(dimTags, dimTags_n, outDimTags, outDimTags_n, ierr) bind(C, name="gmshModelGeoCopy") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n @@ -2779,7 +2780,7 @@ module gmsh !! dimension 0. subroutine gmshModelGeoRemove(dimTags, dimTags_n, recursive, ierr) bind(C, name="gmshModelGeoRemove") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int), value :: recursive integer(c_int) :: ierr @@ -2799,7 +2800,7 @@ module gmsh subroutine gmshModelGeoSplitCurve(tag, pointTags, pointTags_n, curveTags, curveTags_n, ierr) bind(C, name="gmshModelGeoSplitCurve") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n type(c_ptr), intent(out) :: curveTags integer(c_size_t) :: curveTags_n @@ -2832,10 +2833,10 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelGeoAddPhysicalGroup integer(c_int), value :: dim - integer(c_int) :: tags(*) + integer(c_int), dimension(*) :: tags integer(c_size_t), value :: tags_n integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end function gmshModelGeoAddPhysicalGroup @@ -2843,7 +2844,7 @@ module gmsh !! If `dimTags' is empty, remove all groups. subroutine gmshModelGeoRemovePhysicalGroups(dimTags, dimTags_n, ierr) bind(C, name="gmshModelGeoRemovePhysicalGroups") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelGeoRemovePhysicalGroups @@ -2864,7 +2865,7 @@ module gmsh !! handled. subroutine gmshModelGeoMeshSetSize(dimTags, dimTags_n, size, ierr) bind(C, name="gmshModelGeoMeshSetSize") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: size integer(c_int) :: ierr @@ -2879,7 +2880,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: tag integer(c_int), value :: nPoints - character(len=1, kind=c_char) :: meshType(*) + character(len=1, kind=c_char), dimension(*) :: meshType real(c_double), value :: coef integer(c_int) :: ierr end subroutine gmshModelGeoMeshSetTransfiniteCurve @@ -2894,8 +2895,8 @@ module gmsh subroutine gmshModelGeoMeshSetTransfiniteSurface(tag, arrangement, cornerTags, cornerTags_n, ierr) bind(C, name="gmshModelGeoMeshSetTransfiniteSurface") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: arrangement(*) - integer(c_int) :: cornerTags(*) + character(len=1, kind=c_char), dimension(*) :: arrangement + integer(c_int), dimension(*) :: cornerTags integer(c_size_t), value :: cornerTags_n integer(c_int) :: ierr end subroutine gmshModelGeoMeshSetTransfiniteSurface @@ -2906,7 +2907,7 @@ module gmsh subroutine gmshModelGeoMeshSetTransfiniteVolume(tag, cornerTags, cornerTags_n, ierr) bind(C, name="gmshModelGeoMeshSetTransfiniteVolume") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - integer(c_int) :: cornerTags(*) + integer(c_int), dimension(*) :: cornerTags integer(c_size_t), value :: cornerTags_n integer(c_int) :: ierr end subroutine gmshModelGeoMeshSetTransfiniteVolume @@ -3031,9 +3032,9 @@ module gmsh integer(c_int), value :: tag real(c_double), value :: angle1 real(c_double), value :: angle2 - real(c_double) :: zAxis(*) + real(c_double), dimension(*) :: zAxis integer(c_size_t), value :: zAxis_n - real(c_double) :: xAxis(*) + real(c_double), dimension(*) :: xAxis integer(c_size_t), value :: xAxis_n integer(c_int) :: ierr end function gmshModelOccAddCircle @@ -3074,9 +3075,9 @@ module gmsh integer(c_int), value :: tag real(c_double), value :: angle1 real(c_double), value :: angle2 - real(c_double) :: zAxis(*) + real(c_double), dimension(*) :: zAxis integer(c_size_t), value :: zAxis_n - real(c_double) :: xAxis(*) + real(c_double), dimension(*) :: xAxis integer(c_size_t), value :: xAxis_n integer(c_int) :: ierr end function gmshModelOccAddEllipse @@ -3089,7 +3090,7 @@ module gmsh function gmshModelOccAddSpline(pointTags, pointTags_n, tag, ierr) bind(C, name="gmshModelOccAddSpline") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddSpline - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -3104,15 +3105,15 @@ module gmsh function gmshModelOccAddBSpline(pointTags, pointTags_n, tag, degree, weights, weights_n, knots, knots_n, multiplicities, multiplicities_n, ierr) bind(C, name="gmshModelOccAddBSpline") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddBSpline - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: tag integer(c_int), value :: degree - real(c_double) :: weights(*) + real(c_double), dimension(*) :: weights integer(c_size_t), value :: weights_n - real(c_double) :: knots(*) + real(c_double), dimension(*) :: knots integer(c_size_t), value :: knots_n - integer(c_int) :: multiplicities(*) + integer(c_int), dimension(*) :: multiplicities integer(c_size_t), value :: multiplicities_n integer(c_int) :: ierr end function gmshModelOccAddBSpline @@ -3123,7 +3124,7 @@ module gmsh function gmshModelOccAddBezier(pointTags, pointTags_n, tag, ierr) bind(C, name="gmshModelOccAddBezier") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddBezier - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -3137,7 +3138,7 @@ module gmsh function gmshModelOccAddWire(curveTags, curveTags_n, tag, checkClosed, ierr) bind(C, name="gmshModelOccAddWire") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddWire - integer(c_int) :: curveTags(*) + integer(c_int), dimension(*) :: curveTags integer(c_size_t), value :: curveTags_n integer(c_int), value :: tag integer(c_int), value :: checkClosed @@ -3156,7 +3157,7 @@ module gmsh function gmshModelOccAddCurveLoop(curveTags, curveTags_n, tag, ierr) bind(C, name="gmshModelOccAddCurveLoop") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddCurveLoop - integer(c_int) :: curveTags(*) + integer(c_int), dimension(*) :: curveTags integer(c_size_t), value :: curveTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -3196,9 +3197,9 @@ module gmsh real(c_double), value :: rx real(c_double), value :: ry integer(c_int), value :: tag - real(c_double) :: zAxis(*) + real(c_double), dimension(*) :: zAxis integer(c_size_t), value :: zAxis_n - real(c_double) :: xAxis(*) + real(c_double), dimension(*) :: xAxis integer(c_size_t), value :: xAxis_n integer(c_int) :: ierr end function gmshModelOccAddDisk @@ -3211,7 +3212,7 @@ module gmsh function gmshModelOccAddPlaneSurface(wireTags, wireTags_n, tag, ierr) bind(C, name="gmshModelOccAddPlaneSurface") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddPlaneSurface - integer(c_int) :: wireTags(*) + integer(c_int), dimension(*) :: wireTags integer(c_size_t), value :: wireTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -3240,7 +3241,7 @@ module gmsh integer(c_int) :: gmshModelOccAddSurfaceFilling integer(c_int), value :: wireTag integer(c_int), value :: tag - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: degree integer(c_int), value :: numPointsOnCurves @@ -3267,7 +3268,7 @@ module gmsh integer(c_int) :: gmshModelOccAddBSplineFilling integer(c_int), value :: wireTag integer(c_int), value :: tag - character(len=1, kind=c_char) :: type(*) + character(len=1, kind=c_char), dimension(*) :: type integer(c_int) :: ierr end function gmshModelOccAddBSplineFilling @@ -3283,7 +3284,7 @@ module gmsh integer(c_int) :: gmshModelOccAddBezierFilling integer(c_int), value :: wireTag integer(c_int), value :: tag - character(len=1, kind=c_char) :: type(*) + character(len=1, kind=c_char), dimension(*) :: type integer(c_int) :: ierr end function gmshModelOccAddBezierFilling @@ -3301,23 +3302,23 @@ module gmsh function gmshModelOccAddBSplineSurface(pointTags, pointTags_n, numPointsU, tag, degreeU, degreeV, weights, weights_n, knotsU, knotsU_n, knotsV, knotsV_n, multiplicitiesU, multiplicitiesU_n, multiplicitiesV, multiplicitiesV_n, wireTags, wireTags_n, wire3D, ierr) bind(C, name="gmshModelOccAddBSplineSurface") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddBSplineSurface - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: numPointsU integer(c_int), value :: tag integer(c_int), value :: degreeU integer(c_int), value :: degreeV - real(c_double) :: weights(*) + real(c_double), dimension(*) :: weights integer(c_size_t), value :: weights_n - real(c_double) :: knotsU(*) + real(c_double), dimension(*) :: knotsU integer(c_size_t), value :: knotsU_n - real(c_double) :: knotsV(*) + real(c_double), dimension(*) :: knotsV integer(c_size_t), value :: knotsV_n - integer(c_int) :: multiplicitiesU(*) + integer(c_int), dimension(*) :: multiplicitiesU integer(c_size_t), value :: multiplicitiesU_n - integer(c_int) :: multiplicitiesV(*) + integer(c_int), dimension(*) :: multiplicitiesV integer(c_size_t), value :: multiplicitiesV_n - integer(c_int) :: wireTags(*) + integer(c_int), dimension(*) :: wireTags integer(c_size_t), value :: wireTags_n integer(c_int), value :: wire3D integer(c_int) :: ierr @@ -3335,11 +3336,11 @@ module gmsh function gmshModelOccAddBezierSurface(pointTags, pointTags_n, numPointsU, tag, wireTags, wireTags_n, wire3D, ierr) bind(C, name="gmshModelOccAddBezierSurface") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddBezierSurface - integer(c_int) :: pointTags(*) + integer(c_int), dimension(*) :: pointTags integer(c_size_t), value :: pointTags_n integer(c_int), value :: numPointsU integer(c_int), value :: tag - integer(c_int) :: wireTags(*) + integer(c_int), dimension(*) :: wireTags integer(c_size_t), value :: wireTags_n integer(c_int), value :: wire3D integer(c_int) :: ierr @@ -3356,7 +3357,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddTrimmedSurface integer(c_int), value :: surfaceTag - integer(c_int) :: wireTags(*) + integer(c_int), dimension(*) :: wireTags integer(c_size_t), value :: wireTags_n integer(c_int), value :: wire3D integer(c_int), value :: tag @@ -3371,7 +3372,7 @@ module gmsh function gmshModelOccAddSurfaceLoop(surfaceTags, surfaceTags_n, tag, sewing, ierr) bind(C, name="gmshModelOccAddSurfaceLoop") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddSurfaceLoop - integer(c_int) :: surfaceTags(*) + integer(c_int), dimension(*) :: surfaceTags integer(c_size_t), value :: surfaceTags_n integer(c_int), value :: tag integer(c_int), value :: sewing @@ -3386,7 +3387,7 @@ module gmsh function gmshModelOccAddVolume(shellTags, shellTags_n, tag, ierr) bind(C, name="gmshModelOccAddVolume") use, intrinsic :: iso_c_binding integer(c_int) :: gmshModelOccAddVolume - integer(c_int) :: shellTags(*) + integer(c_int), dimension(*) :: shellTags integer(c_size_t), value :: shellTags_n integer(c_int), value :: tag integer(c_int) :: ierr @@ -3490,7 +3491,7 @@ module gmsh real(c_double), value :: dz integer(c_int), value :: tag real(c_double), value :: ltx - real(c_double) :: zAxis(*) + real(c_double), dimension(*) :: zAxis integer(c_size_t), value :: zAxis_n integer(c_int) :: ierr end function gmshModelOccAddWedge @@ -3511,7 +3512,7 @@ module gmsh real(c_double), value :: r2 integer(c_int), value :: tag real(c_double), value :: angle - real(c_double) :: zAxis(*) + real(c_double), dimension(*) :: zAxis integer(c_size_t), value :: zAxis_n integer(c_int) :: ierr end function gmshModelOccAddTorus @@ -3525,7 +3526,7 @@ module gmsh !! positive, set the maximal degree of resulting surface. subroutine gmshModelOccAddThruSections(wireTags, wireTags_n, outDimTags, outDimTags_n, tag, makeSolid, makeRuled, maxDegree, ierr) bind(C, name="gmshModelOccAddThruSections") use, intrinsic :: iso_c_binding - integer(c_int) :: wireTags(*) + integer(c_int), dimension(*) :: wireTags integer(c_size_t), value :: wireTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n @@ -3545,7 +3546,7 @@ module gmsh subroutine gmshModelOccAddThickSolid(volumeTag, excludeSurfaceTags, excludeSurfaceTags_n, offset, outDimTags, outDimTags_n, tag, ierr) bind(C, name="gmshModelOccAddThickSolid") use, intrinsic :: iso_c_binding integer(c_int), value :: volumeTag - integer(c_int) :: excludeSurfaceTags(*) + integer(c_int), dimension(*) :: excludeSurfaceTags integer(c_size_t), value :: excludeSurfaceTags_n real(c_double), value :: offset type(c_ptr), intent(out) :: outDimTags @@ -3563,16 +3564,16 @@ module gmsh !! layers. subroutine gmshModelOccExtrude(dimTags, dimTags_n, dx, dy, dz, outDimTags, outDimTags_n, numElements, numElements_n, heights, heights_n, recombine, ierr) bind(C, name="gmshModelOccExtrude") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: dx real(c_double), value :: dy real(c_double), value :: dz type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n - integer(c_int) :: numElements(*) + integer(c_int), dimension(*) :: numElements integer(c_size_t), value :: numElements_n - real(c_double) :: heights(*) + real(c_double), dimension(*) :: heights integer(c_size_t), value :: heights_n integer(c_int), value :: recombine integer(c_int) :: ierr @@ -3589,7 +3590,7 @@ module gmsh !! mesh in the layers. subroutine gmshModelOccRevolve(dimTags, dimTags_n, x, y, z, ax, ay, az, angle, outDimTags, outDimTags_n, numElements, numElements_n, heights, heights_n, recombine, ierr) bind(C, name="gmshModelOccRevolve") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: x real(c_double), value :: y @@ -3600,9 +3601,9 @@ module gmsh real(c_double), value :: angle type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n - integer(c_int) :: numElements(*) + integer(c_int), dimension(*) :: numElements integer(c_size_t), value :: numElements_n - real(c_double) :: heights(*) + real(c_double), dimension(*) :: heights integer(c_size_t), value :: heights_n integer(c_int), value :: recombine integer(c_int) :: ierr @@ -3616,12 +3617,12 @@ module gmsh !! provided, "DiscreteTrihedron" is assumed. Return the pipe in `outDimTags'. subroutine gmshModelOccAddPipe(dimTags, dimTags_n, wireTag, outDimTags, outDimTags_n, trihedron, ierr) bind(C, name="gmshModelOccAddPipe") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int), value :: wireTag type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n - character(len=1, kind=c_char) :: trihedron(*) + character(len=1, kind=c_char), dimension(*) :: trihedron integer(c_int) :: ierr end subroutine gmshModelOccAddPipe @@ -3633,11 +3634,11 @@ module gmsh !! `removeVolume' is set. subroutine gmshModelOccFillet(volumeTags, volumeTags_n, curveTags, curveTags_n, radii, radii_n, outDimTags, outDimTags_n, removeVolume, ierr) bind(C, name="gmshModelOccFillet") use, intrinsic :: iso_c_binding - integer(c_int) :: volumeTags(*) + integer(c_int), dimension(*) :: volumeTags integer(c_size_t), value :: volumeTags_n - integer(c_int) :: curveTags(*) + integer(c_int), dimension(*) :: curveTags integer(c_size_t), value :: curveTags_n - real(c_double) :: radii(*) + real(c_double), dimension(*) :: radii integer(c_size_t), value :: radii_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n @@ -3655,13 +3656,13 @@ module gmsh !! `removeVolume' is set. subroutine gmshModelOccChamfer(volumeTags, volumeTags_n, curveTags, curveTags_n, surfaceTags, surfaceTags_n, distances, distances_n, outDimTags, outDimTags_n, removeVolume, ierr) bind(C, name="gmshModelOccChamfer") use, intrinsic :: iso_c_binding - integer(c_int) :: volumeTags(*) + integer(c_int), dimension(*) :: volumeTags integer(c_size_t), value :: volumeTags_n - integer(c_int) :: curveTags(*) + integer(c_int), dimension(*) :: curveTags integer(c_size_t), value :: curveTags_n - integer(c_int) :: surfaceTags(*) + integer(c_int), dimension(*) :: surfaceTags integer(c_size_t), value :: surfaceTags_n - real(c_double) :: distances(*) + real(c_double), dimension(*) :: distances integer(c_size_t), value :: distances_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n @@ -3677,15 +3678,15 @@ module gmsh !! `removeTool' is set. subroutine gmshModelOccFuse(objectDimTags, objectDimTags_n, toolDimTags, toolDimTags_n, outDimTags, outDimTags_n, outDimTagsMap, outDimTagsMap_n,outDimTagsMap_nn, tag, removeObject, removeTool, ierr) bind(C, name="gmshModelOccFuse") use, intrinsic :: iso_c_binding - integer(c_int) :: objectDimTags(*) + integer(c_int), dimension(*) :: objectDimTags integer(c_size_t), value :: objectDimTags_n - integer(c_int) :: toolDimTags(*) + integer(c_int), dimension(*) :: toolDimTags integer(c_size_t), value :: toolDimTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n type(c_ptr), intent(out) :: outDimTagsMap type(c_ptr), intent(out) :: outDimTagsMap_n - integer (C_SIZE_T) ::outDimTagsMap_nn + integer(c_size_t) ::outDimTagsMap_nn integer(c_int), value :: tag integer(c_int), value :: removeObject integer(c_int), value :: removeTool @@ -3700,15 +3701,15 @@ module gmsh !! if `removeTool' is set. subroutine gmshModelOccIntersect(objectDimTags, objectDimTags_n, toolDimTags, toolDimTags_n, outDimTags, outDimTags_n, outDimTagsMap, outDimTagsMap_n,outDimTagsMap_nn, tag, removeObject, removeTool, ierr) bind(C, name="gmshModelOccIntersect") use, intrinsic :: iso_c_binding - integer(c_int) :: objectDimTags(*) + integer(c_int), dimension(*) :: objectDimTags integer(c_size_t), value :: objectDimTags_n - integer(c_int) :: toolDimTags(*) + integer(c_int), dimension(*) :: toolDimTags integer(c_size_t), value :: toolDimTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n type(c_ptr), intent(out) :: outDimTagsMap type(c_ptr), intent(out) :: outDimTagsMap_n - integer (C_SIZE_T) ::outDimTagsMap_nn + integer(c_size_t) ::outDimTagsMap_nn integer(c_int), value :: tag integer(c_int), value :: removeObject integer(c_int), value :: removeTool @@ -3723,15 +3724,15 @@ module gmsh !! `removeTool' is set. subroutine gmshModelOccCut(objectDimTags, objectDimTags_n, toolDimTags, toolDimTags_n, outDimTags, outDimTags_n, outDimTagsMap, outDimTagsMap_n,outDimTagsMap_nn, tag, removeObject, removeTool, ierr) bind(C, name="gmshModelOccCut") use, intrinsic :: iso_c_binding - integer(c_int) :: objectDimTags(*) + integer(c_int), dimension(*) :: objectDimTags integer(c_size_t), value :: objectDimTags_n - integer(c_int) :: toolDimTags(*) + integer(c_int), dimension(*) :: toolDimTags integer(c_size_t), value :: toolDimTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n type(c_ptr), intent(out) :: outDimTagsMap type(c_ptr), intent(out) :: outDimTagsMap_n - integer (C_SIZE_T) ::outDimTagsMap_nn + integer(c_size_t) ::outDimTagsMap_nn integer(c_int), value :: tag integer(c_int), value :: removeObject integer(c_int), value :: removeTool @@ -3749,15 +3750,15 @@ module gmsh !! `removeObject' is set. Remove the tool if `removeTool' is set. subroutine gmshModelOccFragment(objectDimTags, objectDimTags_n, toolDimTags, toolDimTags_n, outDimTags, outDimTags_n, outDimTagsMap, outDimTagsMap_n,outDimTagsMap_nn, tag, removeObject, removeTool, ierr) bind(C, name="gmshModelOccFragment") use, intrinsic :: iso_c_binding - integer(c_int) :: objectDimTags(*) + integer(c_int), dimension(*) :: objectDimTags integer(c_size_t), value :: objectDimTags_n - integer(c_int) :: toolDimTags(*) + integer(c_int), dimension(*) :: toolDimTags integer(c_size_t), value :: toolDimTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n type(c_ptr), intent(out) :: outDimTagsMap type(c_ptr), intent(out) :: outDimTagsMap_n - integer (C_SIZE_T) ::outDimTagsMap_nn + integer(c_size_t) ::outDimTagsMap_nn integer(c_int), value :: tag integer(c_int), value :: removeObject integer(c_int), value :: removeTool @@ -3768,7 +3769,7 @@ module gmsh !! along (`dx', `dy', `dz'). subroutine gmshModelOccTranslate(dimTags, dimTags_n, dx, dy, dz, ierr) bind(C, name="gmshModelOccTranslate") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: dx real(c_double), value :: dy @@ -3781,7 +3782,7 @@ module gmsh !! `y', `z') and the direction (`ax', `ay', `az'). subroutine gmshModelOccRotate(dimTags, dimTags_n, x, y, z, ax, ay, az, angle, ierr) bind(C, name="gmshModelOccRotate") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: x real(c_double), value :: y @@ -3798,7 +3799,7 @@ module gmsh !! `z') as the center of the homothetic transformation. subroutine gmshModelOccDilate(dimTags, dimTags_n, x, y, z, a, b, c, ierr) bind(C, name="gmshModelOccDilate") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: x real(c_double), value :: y @@ -3813,7 +3814,7 @@ module gmsh !! respect to the plane of equation `a' * x + `b' * y + `c' * z + `d' = 0. subroutine gmshModelOccMirror(dimTags, dimTags_n, a, b, c, d, ierr) bind(C, name="gmshModelOccMirror") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: a real(c_double), value :: b @@ -3827,7 +3828,7 @@ module gmsh !! (This is a deprecated synonym for `mirror'.) subroutine gmshModelOccSymmetrize(dimTags, dimTags_n, a, b, c, d, ierr) bind(C, name="gmshModelOccSymmetrize") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: a real(c_double), value :: b @@ -3841,9 +3842,9 @@ module gmsh !! to the entities `dimTags' in the OpenCASCADE CAD representation. subroutine gmshModelOccAffineTransform(dimTags, dimTags_n, affineTransform, affineTransform_n, ierr) bind(C, name="gmshModelOccAffineTransform") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n - real(c_double) :: affineTransform(*) + real(c_double), dimension(*) :: affineTransform integer(c_size_t), value :: affineTransform_n integer(c_int) :: ierr end subroutine gmshModelOccAffineTransform @@ -3852,7 +3853,7 @@ module gmsh !! entities are returned in `outDimTags'. subroutine gmshModelOccCopy(dimTags, dimTags_n, outDimTags, outDimTags_n, ierr) bind(C, name="gmshModelOccCopy") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n @@ -3865,7 +3866,7 @@ module gmsh !! to dimension 0. subroutine gmshModelOccRemove(dimTags, dimTags_n, recursive, ierr) bind(C, name="gmshModelOccRemove") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int), value :: recursive integer(c_int) :: ierr @@ -3886,7 +3887,7 @@ module gmsh use, intrinsic :: iso_c_binding type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: tolerance integer(c_int), value :: fixDegenerated @@ -3900,7 +3901,7 @@ module gmsh !> Convert the entities `dimTags' to NURBS. subroutine gmshModelOccConvertToNURBS(dimTags, dimTags_n, ierr) bind(C, name="gmshModelOccConvertToNURBS") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n integer(c_int) :: ierr end subroutine gmshModelOccConvertToNURBS @@ -3913,11 +3914,11 @@ module gmsh !! "step" or "iges"). subroutine gmshModelOccImportShapes(fileName, outDimTags, outDimTags_n, highestDimOnly, format, ierr) bind(C, name="gmshModelOccImportShapes") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: fileName(*) + character(len=1, kind=c_char), dimension(*) :: fileName type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n integer(c_int), value :: highestDimOnly - character(len=1, kind=c_char) :: format(*) + character(len=1, kind=c_char), dimension(*) :: format integer(c_int) :: ierr end subroutine gmshModelOccImportShapes @@ -3932,7 +3933,7 @@ module gmsh !! to undefined behavior. subroutine gmshModelOccImportShapesNativePointer(shape, outDimTags, outDimTags_n, highestDimOnly, ierr) bind(C, name="gmshModelOccImportShapesNativePointer") use, intrinsic :: iso_c_binding - integer(c_int) :: shape(*) + integer(c_int), dimension(*) :: shape type(c_ptr), intent(out) :: outDimTags integer(c_size_t) :: outDimTags_n integer(c_int), value :: highestDimOnly @@ -4077,7 +4078,7 @@ module gmsh !! handled. subroutine gmshModelOccMeshSetSize(dimTags, dimTags_n, size, ierr) bind(C, name="gmshModelOccMeshSetSize") use, intrinsic :: iso_c_binding - integer(c_int) :: dimTags(*) + integer(c_int), dimension(*) :: dimTags integer(c_size_t), value :: dimTags_n real(c_double), value :: size integer(c_int) :: ierr @@ -4089,7 +4090,7 @@ module gmsh function gmshViewAdd(name, tag, ierr) bind(C, name="gmshViewAdd") use, intrinsic :: iso_c_binding integer(c_int) :: gmshViewAdd - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int), value :: tag integer(c_int) :: ierr end function gmshViewAdd @@ -4135,9 +4136,9 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: tag integer(c_int), value :: step - character(len=1, kind=c_char) :: modelName(*) - character(len=1, kind=c_char) :: dataType(*) - integer(c_size_t) :: tags(*) + character(len=1, kind=c_char), dimension(*) :: modelName + character(len=1, kind=c_char), dimension(*) :: dataType + integer(c_size_t), dimension(*) :: tags integer(c_size_t), value :: tags_n type(c_ptr), intent(out) :: data type(c_ptr), intent(out) :: data_n @@ -4157,11 +4158,11 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: tag integer(c_int), value :: step - character(len=1, kind=c_char) :: modelName(*) - character(len=1, kind=c_char) :: dataType(*) - integer(c_size_t) :: tags(*) + character(len=1, kind=c_char), dimension(*) :: modelName + character(len=1, kind=c_char), dimension(*) :: dataType + integer(c_size_t), dimension(*) :: tags integer(c_size_t), value :: tags_n - real(c_double) :: data(*) + real(c_double), dimension(*) :: data integer(c_size_t), value :: data_n real(c_double), value :: time integer(c_int), value :: numComponents @@ -4177,7 +4178,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: tag integer(c_int), value :: step - type(c_ptr) :: dataType(*) + type(c_ptr), dimension(*) :: dataType type(c_ptr), intent(out) :: tags integer(c_size_t) :: tags_n type (c_ptr), intent(out) :: data @@ -4196,7 +4197,7 @@ module gmsh use, intrinsic :: iso_c_binding integer(c_int), value :: tag integer(c_int), value :: step - type(c_ptr) :: dataType(*) + type(c_ptr), dimension(*) :: dataType type(c_ptr), intent(out) :: tags integer(c_size_t) :: tags_n type(c_ptr), intent(out) :: data @@ -4219,9 +4220,9 @@ module gmsh subroutine gmshViewAddListData(tag, dataType, numEle, data, data_n, ierr) bind(C, name="gmshViewAddListData") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: dataType(*) + character(len=1, kind=c_char), dimension(*) :: dataType integer(c_int), value :: numEle - real(c_double) :: data(*) + real(c_double), dimension(*) :: data integer(c_size_t), value :: data_n integer(c_int) :: ierr end subroutine gmshViewAddListData @@ -4258,11 +4259,11 @@ module gmsh subroutine gmshViewAddListDataString(tag, coord, coord_n, data, data_n, style, style_n, ierr) bind(C, name="gmshViewAddListDataString") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - real(c_double) :: coord(*) + real(c_double), dimension(*) :: coord integer(c_size_t), value :: coord_n - type(c_ptr) :: data(*) + type(c_ptr), dimension(*) :: data integer(c_size_t), value :: data_n - type(c_ptr) :: style(*) + type(c_ptr), dimension(*) :: style integer(c_size_t), value :: style_n integer(c_int) :: ierr end subroutine gmshViewAddListDataString @@ -4297,16 +4298,16 @@ module gmsh subroutine gmshViewSetInterpolationMatrices(tag, type, d, coef, coef_n, exp, exp_n, dGeo, coefGeo, coefGeo_n, expGeo, expGeo_n, ierr) bind(C, name="gmshViewSetInterpolationMatrices") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: type(*) + character(len=1, kind=c_char), dimension(*) :: type integer(c_int), value :: d - real(c_double) :: coef(*) + real(c_double), dimension(*) :: coef integer(c_size_t), value :: coef_n - real(c_double) :: exp(*) + real(c_double), dimension(*) :: exp integer(c_size_t), value :: exp_n integer(c_int), value :: dGeo - real(c_double) :: coefGeo(*) + real(c_double), dimension(*) :: coefGeo integer(c_size_t), value :: coefGeo_n - real(c_double) :: expGeo(*) + real(c_double), dimension(*) :: expGeo integer(c_size_t), value :: expGeo_n integer(c_int) :: ierr end subroutine gmshViewSetInterpolationMatrices @@ -4330,8 +4331,8 @@ module gmsh !! `remove' is set. subroutine gmshViewCombine(what, how, remove, copyOptions, ierr) bind(C, name="gmshViewCombine") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: what(*) - character(len=1, kind=c_char) :: how(*) + character(len=1, kind=c_char), dimension(*) :: what + character(len=1, kind=c_char), dimension(*) :: how integer(c_int), value :: remove integer(c_int), value :: copyOptions integer(c_int) :: ierr @@ -4363,11 +4364,11 @@ module gmsh integer(c_int), value :: numComp integer(c_int), value :: gradient real(c_double), value :: distanceMax - real(c_double) :: xElemCoord(*) + real(c_double), dimension(*) :: xElemCoord integer(c_size_t), value :: xElemCoord_n - real(c_double) :: yElemCoord(*) + real(c_double), dimension(*) :: yElemCoord integer(c_size_t), value :: yElemCoord_n - real(c_double) :: zElemCoord(*) + real(c_double), dimension(*) :: zElemCoord integer(c_size_t), value :: zElemCoord_n integer(c_int), value :: dim integer(c_int) :: ierr @@ -4378,7 +4379,7 @@ module gmsh subroutine gmshViewWrite(tag, fileName, append, ierr) bind(C, name="gmshViewWrite") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: fileName(*) + character(len=1, kind=c_char), dimension(*) :: fileName integer(c_int), value :: append integer(c_int) :: ierr end subroutine gmshViewWrite @@ -4398,7 +4399,7 @@ module gmsh subroutine gmshViewOptionSetNumber(tag, name, value, ierr) bind(C, name="gmshViewOptionSetNumber") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name real(c_double), value :: value integer(c_int) :: ierr end subroutine gmshViewOptionSetNumber @@ -4407,7 +4408,7 @@ module gmsh subroutine gmshViewOptionGetNumber(tag, name, value, ierr) bind(C, name="gmshViewOptionGetNumber") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name real(c_double) :: value integer(c_int) :: ierr end subroutine gmshViewOptionGetNumber @@ -4416,8 +4417,8 @@ module gmsh subroutine gmshViewOptionSetString(tag, name, value, ierr) bind(C, name="gmshViewOptionSetString") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) - character(len=1, kind=c_char) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + character(len=1, kind=c_char), dimension(*) :: value integer(c_int) :: ierr end subroutine gmshViewOptionSetString @@ -4425,8 +4426,8 @@ module gmsh subroutine gmshViewOptionGetString(tag, name, value, ierr) bind(C, name="gmshViewOptionGetString") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) - type(c_ptr) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + type(c_ptr), dimension(*) :: value integer(c_int) :: ierr end subroutine gmshViewOptionGetString @@ -4436,7 +4437,7 @@ module gmsh subroutine gmshViewOptionSetColor(tag, name, r, g, b, a, ierr) bind(C, name="gmshViewOptionSetColor") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int), value :: r integer(c_int), value :: g integer(c_int), value :: b @@ -4449,7 +4450,7 @@ module gmsh subroutine gmshViewOptionGetColor(tag, name, r, g, b, a, ierr) bind(C, name="gmshViewOptionGetColor") use, intrinsic :: iso_c_binding integer(c_int), value :: tag - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: r integer(c_int) :: g integer(c_int) :: b @@ -4469,8 +4470,8 @@ module gmsh !> Set the numerical option `option' to the value `value' for plugin `name'. subroutine gmshPluginSetNumber(name, option, value, ierr) bind(C, name="gmshPluginSetNumber") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - character(len=1, kind=c_char) :: option(*) + character(len=1, kind=c_char), dimension(*) :: name + character(len=1, kind=c_char), dimension(*) :: option real(c_double), value :: value integer(c_int) :: ierr end subroutine gmshPluginSetNumber @@ -4478,9 +4479,9 @@ module gmsh !> Set the string option `option' to the value `value' for plugin `name'. subroutine gmshPluginSetString(name, option, value, ierr) bind(C, name="gmshPluginSetString") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - character(len=1, kind=c_char) :: option(*) - character(len=1, kind=c_char) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + character(len=1, kind=c_char), dimension(*) :: option + character(len=1, kind=c_char), dimension(*) :: value integer(c_int) :: ierr end subroutine gmshPluginSetString @@ -4488,7 +4489,7 @@ module gmsh function gmshPluginRun(name, ierr) bind(C, name="gmshPluginRun") use, intrinsic :: iso_c_binding integer(c_int) :: gmshPluginRun - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end function gmshPluginRun @@ -4535,7 +4536,7 @@ module gmsh !! "update"). subroutine gmshFltkAwake(action, ierr) bind(C, name="gmshFltkAwake") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: action(*) + character(len=1, kind=c_char), dimension(*) :: action integer(c_int) :: ierr end subroutine gmshFltkAwake @@ -4600,7 +4601,7 @@ module gmsh !! `how' = "v"), using ratio `ratio'. If `how' = "u", restore a single window. subroutine gmshFltkSplitCurrentWindow(how, ratio, ierr) bind(C, name="gmshFltkSplitCurrentWindow") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: how(*) + character(len=1, kind=c_char), dimension(*) :: how real(c_double), value :: ratio integer(c_int) :: ierr end subroutine gmshFltkSplitCurrentWindow @@ -4618,7 +4619,7 @@ module gmsh !! the message inside the graphic window instead of the status bar. subroutine gmshFltkSetStatusMessage(message, graphics, ierr) bind(C, name="gmshFltkSetStatusMessage") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: message(*) + character(len=1, kind=c_char), dimension(*) :: message integer(c_int), value :: graphics integer(c_int) :: ierr end subroutine gmshFltkSetStatusMessage @@ -4634,14 +4635,14 @@ module gmsh !> Open the `name' item in the menu tree. subroutine gmshFltkOpenTreeItem(name, ierr) bind(C, name="gmshFltkOpenTreeItem") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshFltkOpenTreeItem !> Close the `name' item in the menu tree. subroutine gmshFltkCloseTreeItem(name, ierr) bind(C, name="gmshFltkCloseTreeItem") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshFltkCloseTreeItem @@ -4651,7 +4652,7 @@ module gmsh use, intrinsic :: iso_c_binding type(c_ptr), intent(out) :: names integer(c_size_t) :: names_n - character(len=1, kind=c_char) :: search(*) + character(len=1, kind=c_char), dimension(*) :: search integer(c_int) :: ierr end subroutine gmshParserGetNames @@ -4659,8 +4660,8 @@ module gmsh !! variable if it does not exist; update the value if the variable exists. subroutine gmshParserSetNumber(name, value, value_n, ierr) bind(C, name="gmshParserSetNumber") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - real(c_double) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + real(c_double), dimension(*) :: value integer(c_size_t), value :: value_n integer(c_int) :: ierr end subroutine gmshParserSetNumber @@ -4669,8 +4670,8 @@ module gmsh !! variable if it does not exist; update the value if the variable exists. subroutine gmshParserSetString(name, value, value_n, ierr) bind(C, name="gmshParserSetString") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - type(c_ptr) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + type(c_ptr), dimension(*) :: value integer(c_size_t), value :: value_n integer(c_int) :: ierr end subroutine gmshParserSetString @@ -4679,7 +4680,7 @@ module gmsh !! empty vector if the variable does not exist. subroutine gmshParserGetNumber(name, value, value_n, ierr) bind(C, name="gmshParserGetNumber") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name type(c_ptr), intent(out) :: value integer(c_size_t) :: value_n integer(c_int) :: ierr @@ -4689,7 +4690,7 @@ module gmsh !! empty vector if the variable does not exist. subroutine gmshParserGetString(name, value, value_n, ierr) bind(C, name="gmshParserGetString") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name type(c_ptr), intent(out) :: value integer(c_size_t) :: value_n integer(c_int) :: ierr @@ -4699,22 +4700,22 @@ module gmsh !! is given. subroutine gmshParserClear(name, ierr) bind(C, name="gmshParserClear") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshParserClear !> Parse the file `fileName' with the Gmsh parser. subroutine gmshParserParse(fileName, ierr) bind(C, name="gmshParserParse") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: fileName(*) + character(len=1, kind=c_char), dimension(*) :: fileName integer(c_int) :: ierr end subroutine gmshParserParse !> Set one or more parameters in the ONELAB database, encoded in `format'. subroutine gmshOnelabSet(data, format, ierr) bind(C, name="gmshOnelabSet") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: data(*) - character(len=1, kind=c_char) :: format(*) + character(len=1, kind=c_char), dimension(*) :: data + character(len=1, kind=c_char), dimension(*) :: format integer(c_int) :: ierr end subroutine gmshOnelabSet @@ -4722,9 +4723,9 @@ module gmsh !! ONELAB database, encoded in `format'. subroutine gmshOnelabGet(data, name, format, ierr) bind(C, name="gmshOnelabGet") use, intrinsic :: iso_c_binding - type(c_ptr) :: data(*) - character(len=1, kind=c_char) :: name(*) - character(len=1, kind=c_char) :: format(*) + type(c_ptr), dimension(*) :: data + character(len=1, kind=c_char), dimension(*) :: name + character(len=1, kind=c_char), dimension(*) :: format integer(c_int) :: ierr end subroutine gmshOnelabGet @@ -4734,7 +4735,7 @@ module gmsh use, intrinsic :: iso_c_binding type(c_ptr), intent(out) :: names integer(c_size_t) :: names_n - character(len=1, kind=c_char) :: search(*) + character(len=1, kind=c_char), dimension(*) :: search integer(c_int) :: ierr end subroutine gmshOnelabGetNames @@ -4743,8 +4744,8 @@ module gmsh !! exists. subroutine gmshOnelabSetNumber(name, value, value_n, ierr) bind(C, name="gmshOnelabSetNumber") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - real(c_double) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + real(c_double), dimension(*) :: value integer(c_size_t), value :: value_n integer(c_int) :: ierr end subroutine gmshOnelabSetNumber @@ -4754,8 +4755,8 @@ module gmsh !! exists. subroutine gmshOnelabSetString(name, value, value_n, ierr) bind(C, name="gmshOnelabSetString") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - type(c_ptr) :: value(*) + character(len=1, kind=c_char), dimension(*) :: name + type(c_ptr), dimension(*) :: value integer(c_size_t), value :: value_n integer(c_int) :: ierr end subroutine gmshOnelabSetString @@ -4764,7 +4765,7 @@ module gmsh !! Return an empty vector if the parameter does not exist. subroutine gmshOnelabGetNumber(name, value, value_n, ierr) bind(C, name="gmshOnelabGetNumber") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name type(c_ptr), intent(out) :: value integer(c_size_t) :: value_n integer(c_int) :: ierr @@ -4774,7 +4775,7 @@ module gmsh !! Return an empty vector if the parameter does not exist. subroutine gmshOnelabGetString(name, value, value_n, ierr) bind(C, name="gmshOnelabGetString") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name type(c_ptr), intent(out) :: value integer(c_size_t) :: value_n integer(c_int) :: ierr @@ -4785,7 +4786,7 @@ module gmsh function gmshOnelabGetChanged(name, ierr) bind(C, name="gmshOnelabGetChanged") use, intrinsic :: iso_c_binding integer(c_int) :: gmshOnelabGetChanged - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end function gmshOnelabGetChanged @@ -4793,7 +4794,7 @@ module gmsh !! database used by the client `name'. subroutine gmshOnelabSetChanged(name, value, ierr) bind(C, name="gmshOnelabSetChanged") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int), value :: value integer(c_int) :: ierr end subroutine gmshOnelabSetChanged @@ -4801,7 +4802,7 @@ module gmsh !> Clear the ONELAB database, or remove a single parameter if `name' is given. subroutine gmshOnelabClear(name, ierr) bind(C, name="gmshOnelabClear") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) + character(len=1, kind=c_char), dimension(*) :: name integer(c_int) :: ierr end subroutine gmshOnelabClear @@ -4810,16 +4811,16 @@ module gmsh !! be linked to the processed input files. subroutine gmshOnelabRun(name, command, ierr) bind(C, name="gmshOnelabRun") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: name(*) - character(len=1, kind=c_char) :: command(*) + character(len=1, kind=c_char), dimension(*) :: name + character(len=1, kind=c_char), dimension(*) :: command integer(c_int) :: ierr end subroutine gmshOnelabRun !> Write a `message'. `level' can be "info", "warning" or "error". subroutine gmshLoggerWrite(message, level, ierr) bind(C, name="gmshLoggerWrite") use, intrinsic :: iso_c_binding - character(len=1, kind=c_char) :: message(*) - character(len=1, kind=c_char) :: level(*) + character(len=1, kind=c_char), dimension(*) :: message + character(len=1, kind=c_char), dimension(*) :: level integer(c_int) :: ierr end subroutine gmshLoggerWrite @@ -4860,7 +4861,7 @@ module gmsh !> Return last error message, if any. subroutine gmshLoggerGetLastError(error, ierr) bind(C, name="gmshLoggerGetLastError") use, intrinsic :: iso_c_binding - type(c_ptr) :: error(*) + type(c_ptr), dimension(*) :: error integer(c_int) :: ierr end subroutine gmshLoggerGetLastError