mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-28 06:05:29 -04:00
fixing dependencies of parameters on variables
svn-origin-rev: 6921
This commit is contained in:
parent
651f57ea24
commit
cb389e9606
1 changed files with 15 additions and 13 deletions
|
|
@ -533,24 +533,26 @@ def cleanDeclarations(routine,logFile=sys.stdout):
|
|||
aDecl=argDecl[:-1]
|
||||
else:
|
||||
aDecl=argDecl
|
||||
isOptional=0
|
||||
#for arg in aDecl:
|
||||
# attIsOptional= ("optional" in map(lambda x:x.lower(),
|
||||
# arg['attributes']))
|
||||
# if isOptional and not attIsOptional:
|
||||
# logFile.write("*** warning non optional args %s after optional in routine %s\n" %(
|
||||
# repr(arg['vars']),routine['name']))
|
||||
# if attIsOptional:
|
||||
# isOptional=1
|
||||
|
||||
# try to have arg/param/local, but checks for dependencies arg/param and param/local
|
||||
argDecl.extend(paramDecl)
|
||||
paramDecl=[]
|
||||
enforceDeclDependecies(argDecl)
|
||||
splitPos=0
|
||||
for i in xrange(len(argDecl)-1,-1,-1):
|
||||
if not 'parameter' in map(str.lower,argDecl[i]['attributes']):
|
||||
splitPos=i+1
|
||||
break
|
||||
paramDecl=argDecl[splitPos:]
|
||||
argDecl=argDecl[:splitPos]
|
||||
paramDecl.extend(localDecl)
|
||||
enforceDeclDependecies(paramDecl)
|
||||
splitPos=0
|
||||
for i in xrange(len(argDecl)-1,-1,-1):
|
||||
if 'parameter' in map(str.lower,argDecl[i]['attributes']):
|
||||
paramDecl.insert(0,argDecl[i])
|
||||
del argDecl[i]
|
||||
else:
|
||||
splitPos=i+1
|
||||
break
|
||||
localDecl=paramDecl[splitPos:]
|
||||
paramDecl=paramDecl[:splitPos]
|
||||
|
||||
newDecl=StringIO()
|
||||
for comment in routine['preDeclComments']:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue