diff --git a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseASTTest.java b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseASTTest.java index b83ad9cf772..5c17e16856f 100644 --- a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseASTTest.java +++ b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/CompleteParseASTTest.java @@ -1910,4 +1910,8 @@ public class CompleteParseASTTest extends CompleteParseBaseTest parse( writer.toString() ); assertEquals( callback.getReferences().size(), 2 ); } + public void testBug61972() throws Exception + { + parse( "#define DEF1(A1) A1\n#define DEF2 DEF1(DEF2)\nDEF2;", false ); //$NON-NLS-1$ + } } diff --git a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/QuickParseASTTests.java b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/QuickParseASTTests.java index 10fd3992aa9..9b01a679074 100644 --- a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/QuickParseASTTests.java +++ b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/QuickParseASTTests.java @@ -2244,4 +2244,9 @@ public class QuickParseASTTests extends BaseASTTest assertFalse( iter.hasNext() ); } } + + public void testBug61972() throws Exception + { + parse( "#define DEF1(A1) A1\n#define DEF2 DEF1(DEF2)\nDEF2;", true, false ); //$NON-NLS-1$ + } } \ No newline at end of file diff --git a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ScannerTestCase.java b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ScannerTestCase.java index f499230b394..a0d4fa34f8f 100644 --- a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ScannerTestCase.java +++ b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ScannerTestCase.java @@ -1623,4 +1623,12 @@ public class ScannerTestCase extends BaseScannerTest fullyTokenize(); assertFalse( callback.problems.isEmpty() ); } + + public void testBug61972() throws Exception + { + initializeScanner( "#define DEF1(A1) A1\n#define DEF2 DEF1(DEF2)\nDEF2;" ); //$NON-NLS-1$ + validateIdentifier( "DEF2"); //$NON-NLS-1$ + validateToken( IToken.tSEMI ); + validateEOF(); + } }