From 3d6aba8db89b12b2189e576197d9e5ca5914d46b Mon Sep 17 00:00:00 2001 From: John Camelon Date: Tue, 30 Sep 2003 18:18:26 +0000 Subject: [PATCH] Patch for Andrew Niefer Core: -fix bug43862 - Cannot find macro delcarations using all occurences. * modified CSearchPattern.createMacroPattern() Core.tests: Updated OtherPatternTests::testMacroPattern() to test for bug43862 --- core/org.eclipse.cdt.core.tests/ChangeLog | 3 +++ .../org/eclipse/cdt/core/search/tests/OtherPatternTests.java | 5 +++++ core/org.eclipse.cdt.core/search/ChangeLog | 4 ++++ .../cdt/internal/core/search/matching/CSearchPattern.java | 5 +++-- 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/core/org.eclipse.cdt.core.tests/ChangeLog b/core/org.eclipse.cdt.core.tests/ChangeLog index 4b390f921ed..fdcb838fed1 100644 --- a/core/org.eclipse.cdt.core.tests/ChangeLog +++ b/core/org.eclipse.cdt.core.tests/ChangeLog @@ -2,6 +2,9 @@ added testBug43503_AmbiguousUsing() and testBug43503_UnableToResolveFunction() to ParserSymbolTableTest +2003-09-30 Andrew Niefer + Updated OtherPatternTests::testMacroPattern() to test for bug43862 + 2003-09-29 Andrew Niefer added testBug43062 and testConstructorDestructor to FunctionMethodPatternTests modified resources/search/classDecl.cpp & include.h to include more operators and a constructor diff --git a/core/org.eclipse.cdt.core.tests/search/org/eclipse/cdt/core/search/tests/OtherPatternTests.java b/core/org.eclipse.cdt.core.tests/search/org/eclipse/cdt/core/search/tests/OtherPatternTests.java index 2eb2c4b1ff5..cfc5e7c535c 100644 --- a/core/org.eclipse.cdt.core.tests/search/org/eclipse/cdt/core/search/tests/OtherPatternTests.java +++ b/core/org.eclipse.cdt.core.tests/search/org/eclipse/cdt/core/search/tests/OtherPatternTests.java @@ -195,6 +195,11 @@ public class OtherPatternTests extends BaseSearchTest { IMatch match = (IMatch) matches.iterator().next(); assertTrue( match.getName().equals( "FOO" ) ); assertTrue( match.getParentName().equals( "" )); + + pattern = SearchEngine.createSearchPattern( "FOO", MACRO, ALL_OCCURRENCES, true ); + search( workspace, pattern, scope, resultCollector ); + matches = resultCollector.getSearchResults(); + assertEquals( matches.size(), 1 ); } public void testEnumerators(){ diff --git a/core/org.eclipse.cdt.core/search/ChangeLog b/core/org.eclipse.cdt.core/search/ChangeLog index 434e2d6a0fd..385cad28028 100644 --- a/core/org.eclipse.cdt.core/search/ChangeLog +++ b/core/org.eclipse.cdt.core/search/ChangeLog @@ -1,3 +1,7 @@ +2003-09-30 Andrew Niefer + -fix bug43862 - Cannot find macro delcarations using all occurences. + * modified CSearchPattern.createMacroPattern + 2003-09-29 Andrew Niefer - fix bug 43062 outline is confused on operator methods containing spaces - modify CSearchPattern.scanForNames to use same naming convention as TokenDuple.toString() diff --git a/core/org.eclipse.cdt.core/search/org/eclipse/cdt/internal/core/search/matching/CSearchPattern.java b/core/org.eclipse.cdt.core/search/org/eclipse/cdt/internal/core/search/matching/CSearchPattern.java index 059b7fffee8..ea7bf21deec 100644 --- a/core/org.eclipse.cdt.core/search/org/eclipse/cdt/internal/core/search/matching/CSearchPattern.java +++ b/core/org.eclipse.cdt.core/search/org/eclipse/cdt/internal/core/search/matching/CSearchPattern.java @@ -132,10 +132,11 @@ public abstract class CSearchPattern implements ICSearchConstants, ICSearchPatte * @return */ private static CSearchPattern createMacroPattern(String patternString, LimitTo limitTo, int matchMode, boolean caseSensitive) { - if( limitTo != DECLARATIONS ) + if( limitTo != DECLARATIONS && limitTo != ALL_OCCURRENCES ) return null; - return new MacroDeclarationPattern( patternString.toCharArray(), matchMode, limitTo, caseSensitive ); } + return new MacroDeclarationPattern( patternString.toCharArray(), matchMode, DECLARATIONS, caseSensitive ); + } /** * @param patternString