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