diff --git a/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/builder/tests/StandardBuildTests.java b/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/builder/tests/StandardBuildTests.java
index 915aeb253ca..c35167cf6f7 100644
--- a/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/builder/tests/StandardBuildTests.java
+++ b/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/builder/tests/StandardBuildTests.java
@@ -1,6 +1,5 @@
-package org.eclipse.cdt.make.builder.tests;
/*******************************************************************************
- * Copyright (c) 2002, 2007 QNX Software Systems and others.
+ * Copyright (c) 2002, 2008 QNX Software Systems and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -10,6 +9,7 @@ package org.eclipse.cdt.make.builder.tests;
* QNX Software Systems - initial API and implementation
* Markus Schorn (Wind River Systems)
*******************************************************************************/
+package org.eclipse.cdt.make.builder.tests;
import junit.framework.Test;
import junit.framework.TestCase;
diff --git a/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java b/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java
index 48a82db70c8..56f95aaf0ac 100644
--- a/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java
+++ b/build/org.eclipse.cdt.make.core.tests/src/org/eclipse/cdt/make/scannerdiscovery/BaseBOPConsoleParserTests.java
@@ -1,14 +1,14 @@
/*******************************************************************************
- * Copyright (c) 2004, 2007 IBM Corporation and others.
+ * Copyright (c) 2004, 2008 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * IBM - Initial API and implementation
- * Anton Leherbauer (Wind River Systems)
- * Markus Schorn (Wind River Systems)
+ * IBM - Initial API and implementation
+ * Anton Leherbauer (Wind River Systems)
+ * Markus Schorn (Wind River Systems)
*******************************************************************************/
package org.eclipse.cdt.make.scannerdiscovery;
@@ -51,7 +51,7 @@ public abstract class BaseBOPConsoleParserTests extends BaseTestCase {
public void testParsingSymbolDefinitions() {
fOutputParser.processLine("gcc -DMACRO1 -D MACRO2=value2 -c test.c"); // simple definitions //$NON-NLS-1$
- fOutputParser.processLine("gcc -D -DMACRO3 -c test.c"); // empty -D //$NON-NLS-1$
+ fOutputParser.processLine("gcc -D -DMACRO3= -c test.c"); // empty -D //$NON-NLS-1$
fOutputParser.processLine("gcc -D MACRO4='value4' -D 'MACRO5=value5' '-D MACRO6 = value6' -c test.c"); // single quotes //$NON-NLS-1$
fOutputParser.processLine("gcc -D'MACRO7=\"value 7\"' -D MACRO8='\"value 8\"' -c test.c"); // single quotes //$NON-NLS-1$
fOutputParser.processLine("gcc -DMACRO9=\"value9\" -D \"MACRO10=value10\" \"-D MACRO11 = value11\" -c test.c"); // double quotes //$NON-NLS-1$
@@ -62,9 +62,9 @@ public abstract class BaseBOPConsoleParserTests extends BaseTestCase {
fOutputParser.processLine("gcc -D 'SUM(x, y) = (x) + (y)' -c test.c"); // more complex macro definition //$NON-NLS-1$
List sumSymbols = fCollector.getCollectedScannerInfo(null, ScannerInfoTypes.SYMBOL_DEFINITIONS);
- assertTrue(sumSymbols.contains("MACRO1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("MACRO1=1")); //$NON-NLS-1$
assertTrue(sumSymbols.contains("MACRO2=value2")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("MACRO3")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("MACRO3=")); //$NON-NLS-1$
assertTrue(sumSymbols.contains("MACRO4=value4")); //$NON-NLS-1$
assertTrue(sumSymbols.contains("MACRO5=value5")); //$NON-NLS-1$
assertTrue(sumSymbols.contains("MACRO6 = value6")); //$NON-NLS-1$
@@ -84,7 +84,7 @@ public abstract class BaseBOPConsoleParserTests extends BaseTestCase {
fOutputParser.processLine("gcc -DMACRO1 -I ..\\inc -c ..\\perfilescdtest\\source.c"); // PR 80271 //$NON-NLS-1$
List sumSymbols = fCollector.getCollectedScannerInfo(null, ScannerInfoTypes.SYMBOL_DEFINITIONS);
- assertTrue(sumSymbols.contains("MACRO1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("MACRO1=1")); //$NON-NLS-1$
assertTrue(sumSymbols.size() == 1);
}
@@ -93,7 +93,7 @@ public abstract class BaseBOPConsoleParserTests extends BaseTestCase {
fOutputParser.processLine("gcc -DBUG186065_IS_FIXED test.c"); //$NON-NLS-1$
List sumSymbols = fCollector.getCollectedScannerInfo(null, ScannerInfoTypes.SYMBOL_DEFINITIONS);
- assertTrue(sumSymbols.contains("BUG186065_IS_FIXED")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("BUG186065_IS_FIXED=1")); //$NON-NLS-1$
assertTrue(sumSymbols.size() == 1);
}
@@ -106,12 +106,12 @@ public abstract class BaseBOPConsoleParserTests extends BaseTestCase {
fOutputParser.processLine("/usr/gcc/something_else -DF test6.c"); //$NON-NLS-1$
List sumSymbols = fCollector.getCollectedScannerInfo(null, ScannerInfoTypes.SYMBOL_DEFINITIONS);
- assertTrue(sumSymbols.contains("A")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("B")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("C")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("D")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("E")); //$NON-NLS-1$
- assertFalse(sumSymbols.contains("F")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("A=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("B=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("C=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("D=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("E=1")); //$NON-NLS-1$
+ assertFalse(sumSymbols.contains("F=1")); //$NON-NLS-1$
assertEquals(5, sumSymbols.size());
}
@@ -120,10 +120,10 @@ public abstract class BaseBOPConsoleParserTests extends BaseTestCase {
fOutputParser.processLine("nix -DC; gcc -DD test2.c"); //$NON-NLS-1$
List sumSymbols = fCollector.getCollectedScannerInfo(null, ScannerInfoTypes.SYMBOL_DEFINITIONS);
- assertTrue(sumSymbols.contains("A")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("B")); //$NON-NLS-1$
- assertFalse(sumSymbols.contains("C")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("D")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("A=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("B=1")); //$NON-NLS-1$
+ assertFalse(sumSymbols.contains("C=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("D=1")); //$NON-NLS-1$
assertEquals(3, sumSymbols.size());
}
@@ -140,16 +140,16 @@ public abstract class BaseBOPConsoleParserTests extends BaseTestCase {
fOutputParser.processLine("sh -c 'nix -DCC; gcc -DDD test2.c'"); //$NON-NLS-1$
List sumSymbols = fCollector.getCollectedScannerInfo(null, ScannerInfoTypes.SYMBOL_DEFINITIONS);
- assertTrue(sumSymbols.contains("A")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("B")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("C")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("D")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("E")); //$NON-NLS-1$
- assertFalse(sumSymbols.contains("F")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("AA")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("BB")); //$NON-NLS-1$
- assertFalse(sumSymbols.contains("CC")); //$NON-NLS-1$
- assertTrue(sumSymbols.contains("DD")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("A=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("B=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("C=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("D=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("E=1")); //$NON-NLS-1$
+ assertFalse(sumSymbols.contains("F=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("AA=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("BB=1")); //$NON-NLS-1$
+ assertFalse(sumSymbols.contains("CC=1")); //$NON-NLS-1$
+ assertTrue(sumSymbols.contains("DD=1")); //$NON-NLS-1$
assertEquals(8, sumSymbols.size());
}
diff --git a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java
index e8c9e5c7893..24be64a68a0 100644
--- a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java
+++ b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2007 IBM Corporation and others.
+ * Copyright (c) 2004, 2008 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -42,6 +42,7 @@ public class GCCPerFileBOPConsoleParserUtility extends AbstractGCCBOPConsolePars
private int workingDirsN = 0;
private int commandsN = 0;
private int filesN = 0;
+ private String fDefaultMacroDefinitionValue= "1"; //$NON-NLS-1$
/**
@@ -160,13 +161,14 @@ public class GCCPerFileBOPConsoleParserUtility extends AbstractGCCBOPConsolePars
continue;
}
for (int j = SCDOptionsEnum.MIN; j <= SCDOptionsEnum.MAX; ++j) {
- if (token.startsWith(SCDOptionsEnum.getSCDOptionsEnum(j).toString())) {
+ final SCDOptionsEnum optionKind = SCDOptionsEnum.getSCDOptionsEnum(j);
+ if (token.startsWith(optionKind.toString())) {
String option = token.substring(
- SCDOptionsEnum.getSCDOptionsEnum(j).toString().length()).trim();
+ optionKind.toString().length()).trim();
if (option.length() > 0) {
// ex. -I/dir
}
- else if (SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.IDASH)) {
+ else if (optionKind.equals(SCDOptionsEnum.IDASH)) {
for (Iterator iter=includes.iterator(); iter.hasNext(); ) {
option = (String)iter.next();
KVStringPair pair = new KVStringPair(SCDOptionsEnum.IQUOTE.toString(), option);
@@ -183,24 +185,31 @@ public class GCCPerFileBOPConsoleParserUtility extends AbstractGCCBOPConsolePars
}
else break;
}
+
if (option.length() > 0 && (
- SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.INCLUDE) ||
- SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.INCLUDE_FILE) ||
- SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.IMACROS_FILE) ||
- SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.IDIRAFTER) ||
- SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.ISYSTEM) ||
- SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.IQUOTE) )) {
+ optionKind.equals(SCDOptionsEnum.INCLUDE) ||
+ optionKind.equals(SCDOptionsEnum.INCLUDE_FILE) ||
+ optionKind.equals(SCDOptionsEnum.IMACROS_FILE) ||
+ optionKind.equals(SCDOptionsEnum.IDIRAFTER) ||
+ optionKind.equals(SCDOptionsEnum.ISYSTEM) ||
+ optionKind.equals(SCDOptionsEnum.IQUOTE) )) {
option = (getAbsolutePath(option)).toString();
}
- if (SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.IDIRAFTER)) {
+
+ if (optionKind.equals(SCDOptionsEnum.IDIRAFTER)) {
KVStringPair pair = new KVStringPair(SCDOptionsEnum.INCLUDE.toString(), option);
dirafter.add(pair);
}
- else if (SCDOptionsEnum.getSCDOptionsEnum(j).equals(SCDOptionsEnum.INCLUDE)) {
+ else if (optionKind.equals(SCDOptionsEnum.INCLUDE)) {
includes.add(option);
}
else { // add the pair
- KVStringPair pair = new KVStringPair(SCDOptionsEnum.getSCDOptionsEnum(j).toString(), option);
+ if (optionKind.equals(SCDOptionsEnum.DEFINE)) {
+ if (option.indexOf('=') == -1) {
+ option += '='+ fDefaultMacroDefinitionValue;
+ }
+ }
+ KVStringPair pair = new KVStringPair(optionKind.toString(), option);
command.addSCOption(pair);
}
break;
@@ -219,7 +228,13 @@ public class GCCPerFileBOPConsoleParserUtility extends AbstractGCCBOPConsolePars
return command;
}
- /**
+ public void setDefaultMacroDefinitionValue(String val) {
+ if (val != null) {
+ fDefaultMacroDefinitionValue= val;
+ }
+ }
+
+ /**
* @param filePath : String
* @return filePath : IPath - not null
*/
diff --git a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCScannerInfoConsoleParser.java b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCScannerInfoConsoleParser.java
index 86e79f4e1ba..65e0083ef6b 100644
--- a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCScannerInfoConsoleParser.java
+++ b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCScannerInfoConsoleParser.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2007 IBM Corporation and others.
+ * Copyright (c) 2004, 2008 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -36,6 +36,7 @@ import org.eclipse.core.runtime.Path;
public class GCCScannerInfoConsoleParser extends AbstractGCCBOPConsoleParser {
private ScannerInfoConsoleParserUtility fUtil = null;
+ private String fDefaultMacroDefinitionValue= "1"; //$NON-NLS-1$
/* (non-Javadoc)
* @see org.eclipse.cdt.make.core.scannerconfig.IScannerInfoConsoleParser#startup(org.eclipse.core.resources.IProject, org.eclipse.core.runtime.IPath, org.eclipse.cdt.make.core.scannerconfig.IScannerInfoCollector, org.eclipse.cdt.core.IMarkerGenerator)
@@ -111,6 +112,9 @@ public class GCCScannerInfoConsoleParser extends AbstractGCCBOPConsoleParser {
}
}
if (candidate != null && candidate.length() > 0) {
+ if (candidate.indexOf('=') == -1) {
+ candidate+= '='+ fDefaultMacroDefinitionValue;
+ }
if (!symbols.contains(candidate)) {
symbols.add(candidate);
}
@@ -200,4 +204,10 @@ public class GCCScannerInfoConsoleParser extends AbstractGCCBOPConsoleParser {
}
return true;
}
+
+ public void setDefaultMacroDefinitionValue(String val) {
+ if (val != null) {
+ fDefaultMacroDefinitionValue= val;
+ }
+ }
}
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/AbstractScannerExtensionConfiguration.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/AbstractScannerExtensionConfiguration.java
index 58eac5ed0a2..1adc30d3191 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/AbstractScannerExtensionConfiguration.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/AbstractScannerExtensionConfiguration.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007 Wind River Systems, Inc. and others.
+ * Copyright (c) 2007, 2008 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -44,8 +44,8 @@ public abstract class AbstractScannerExtensionConfiguration implements IScannerE
}
}
- /*
- * @see org.eclipse.cdt.core.dom.parser.IScannerExtensionConfiguration#initializeMacroValuesTo1()
+ /**
+ * @deprecated see {@link IScannerExtensionConfiguration#initializeMacroValuesTo1()}
*/
public boolean initializeMacroValuesTo1() {
return false;
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/GNUScannerExtensionConfiguration.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/GNUScannerExtensionConfiguration.java
index 29e93d9242f..2b0967e17c8 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/GNUScannerExtensionConfiguration.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/GNUScannerExtensionConfiguration.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2007 IBM Corporation and others.
+ * Copyright (c) 2004, 2008 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -47,11 +47,6 @@ public abstract class GNUScannerExtensionConfiguration extends AbstractScannerEx
return sAdditionalMacros;
}
-
- public boolean initializeMacroValuesTo1() {
- return true;
- }
-
public boolean support$InIdentifiers() {
return true;
}
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/IScannerExtensionConfiguration.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/IScannerExtensionConfiguration.java
index 68786462bb0..e35a70264c8 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/IScannerExtensionConfiguration.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/parser/IScannerExtensionConfiguration.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2004, 2007 IBM Corporation and others.
+ * Copyright (c) 2004, 2008 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -36,6 +36,8 @@ public interface IScannerExtensionConfiguration {
/**
* @return true
, if macros should be initialized to 1
+ * @deprecated empty macros are taken as they are. It is the task of configuration to provide the correct values.
+ * See https://bugs.eclipse.org/bugs/show_bug.cgi?id=215789
*/
public boolean initializeMacroValuesTo1();
diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java
index 0c3d616d0ef..5bd292291ea 100644
--- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java
+++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/parser/scanner/CPreprocessor.java
@@ -276,19 +276,12 @@ public class CPreprocessor implements ILexerLog, IScanner, IAdaptable {
addMacroDefinition(macro.getSignature(), macro.getExpansion());
}
- // macros provided on command-line (-D)
- final boolean initEmptyMacros= config.initializeMacroValuesTo1();
final Map macroDict= info.getDefinedSymbols();
if (macroDict != null) {
for (Map.Entry entry : macroDict.entrySet()) {
final String key= entry.getKey();
final String value= entry.getValue().trim();
- if (initEmptyMacros && value.length() == 0) {
- addMacroDefinition(key.toCharArray(), ONE);
- }
- else {
- addMacroDefinition(key.toCharArray(), value.toCharArray());
- }
+ addMacroDefinition(key.toCharArray(), value.toCharArray());
}
}
diff --git a/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/CallHierarchyAcrossProjectsTest.java b/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/CallHierarchyAcrossProjectsTest.java
index 78764976098..72c623ede28 100644
--- a/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/CallHierarchyAcrossProjectsTest.java
+++ b/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/callhierarchy/CallHierarchyAcrossProjectsTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2007 Wind River Systems, Inc. and others.
+ * Copyright (c) 2006, 2008 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -8,7 +8,6 @@
* Contributors:
* Markus Schorn - initial API and implementation
*******************************************************************************/
-
package org.eclipse.cdt.ui.tests.callhierarchy;
import junit.framework.Test;
@@ -214,6 +213,7 @@ public class CallHierarchyAcrossProjectsTest extends CallHierarchyBaseTest {
IFile sourceFile2= createFile(getProject(), "testMethods2.cpp", source2);
CEditor editor= openFile(sourceFile1);
+ waitForIndexer(fIndex, sourceFile1, CallHierarchyBaseTest.INDEXER_WAIT_TIME);
waitForIndexer(fIndex, sourceFile2, CallHierarchyBaseTest.INDEXER_WAIT_TIME);
editor.selectAndReveal(source1.indexOf("method3"), 2);