mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
Exception specifications must be visited before ctor-initializers (they appear first).
This commit is contained in:
parent
ab6b931d69
commit
000b63be83
1 changed files with 12 additions and 10 deletions
|
@ -6,7 +6,8 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*
|
*
|
||||||
* Contributors:
|
* Contributors:
|
||||||
* IBM - Initial API and implementation
|
* IBM - Initial API and implementation
|
||||||
|
* Markus Schorn (Wind River Systems)
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
package org.eclipse.cdt.internal.core.dom.parser.cpp;
|
package org.eclipse.cdt.internal.core.dom.parser.cpp;
|
||||||
|
|
||||||
|
@ -139,19 +140,20 @@ public class CPPASTFunctionDeclarator extends CPPASTDeclarator implements ICPPAS
|
||||||
for (int i = 0; i < params.length; i++) {
|
for (int i = 0; i < params.length; i++) {
|
||||||
if (!params[i].accept(action)) return false;
|
if (!params[i].accept(action)) return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
ICPPASTConstructorChainInitializer[] chain = getConstructorChain();
|
|
||||||
for (int i = 0; i < chain.length; i++) {
|
|
||||||
if (!chain[i].accept(action)) return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
IASTInitializer initializer = getInitializer();
|
|
||||||
if (initializer != null && !initializer.accept(action)) return false;
|
|
||||||
|
|
||||||
IASTTypeId[] ids = getExceptionSpecification();
|
IASTTypeId[] ids = getExceptionSpecification();
|
||||||
for (int i = 0; i < ids.length; i++) {
|
for (int i = 0; i < ids.length; i++) {
|
||||||
if (!ids[i].accept(action)) return false;
|
if (!ids[i].accept(action)) return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
IASTInitializer initializer = getInitializer();
|
||||||
|
if (initializer != null && !initializer.accept(action)) return false;
|
||||||
|
|
||||||
|
ICPPASTConstructorChainInitializer[] chain = getConstructorChain();
|
||||||
|
for (int i = 0; i < chain.length; i++) {
|
||||||
|
if (!chain[i].accept(action)) return false;
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue