(rout)
| 294 | |
| 295 | |
| 296 | def assubr(rout): |
| 297 | if isfunction_wrap(rout): |
| 298 | fortranname = getfortranname(rout) |
| 299 | name = rout['name'] |
| 300 | outmess('\t\tCreating wrapper for Fortran function ' |
| 301 | f'"{name}"("{fortranname}")...\n') |
| 302 | rout = copy.copy(rout) |
| 303 | fname = name |
| 304 | rname = fname |
| 305 | if 'result' in rout: |
| 306 | rname = rout['result'] |
| 307 | rout['vars'][fname] = rout['vars'][rname] |
| 308 | fvar = rout['vars'][fname] |
| 309 | if not isintent_out(fvar): |
| 310 | if 'intent' not in fvar: |
| 311 | fvar['intent'] = [] |
| 312 | fvar['intent'].append('out') |
| 313 | flag = 1 |
| 314 | for i in fvar['intent']: |
| 315 | if i.startswith('out='): |
| 316 | flag = 0 |
| 317 | break |
| 318 | if flag: |
| 319 | fvar['intent'].append(f'out={rname}') |
| 320 | rout['args'][:] = [fname] + rout['args'] |
| 321 | return rout, createfuncwrapper(rout) |
| 322 | if issubroutine_wrap(rout): |
| 323 | fortranname = getfortranname(rout) |
| 324 | name = rout['name'] |
| 325 | outmess('\t\tCreating wrapper for Fortran subroutine ' |
| 326 | f'"{name}"("{fortranname}")...\n') |
| 327 | rout = copy.copy(rout) |
| 328 | return rout, createsubrwrapper(rout) |
| 329 | return rout, '' |
nothing calls this directly
no test coverage detected
searching dependent graphs…