diff --git a/Source/DGrok.Framework/Framework/TokenFilter.cs b/Source/DGrok.Framework/Framework/TokenFilter.cs old mode 100644 new mode 100755 index f93665b..18ee46b --- a/Source/DGrok.Framework/Framework/TokenFilter.cs +++ b/Source/DGrok.Framework/Framework/TokenFilter.cs @@ -133,6 +133,7 @@ public TokenFilter(IEnumerable tokens, CompilerDefines compilerDefines, _directiveTypes["WARNINGS"] = DirectiveType.Ignored; _directiveTypes["WEAKPACKAGEUNIT"] = DirectiveType.Ignored; _directiveTypes["WRITEABLECONST"] = DirectiveType.Ignored; + _directiveTypes["ZEROBASEDSTRINGS"] = DirectiveType.Ignored; // Directives for generation of C++Builder .hpp files _directiveTypes["EXTERNALSYM"] = DirectiveType.Ignored; _directiveTypes["HPPEMIT"] = DirectiveType.Ignored; diff --git a/Source/DGrok.Tests/TokenFilterTests.cs b/Source/DGrok.Tests/TokenFilterTests.cs old mode 100644 new mode 100755 index e23a715..c3f8a63 --- a/Source/DGrok.Tests/TokenFilterTests.cs +++ b/Source/DGrok.Tests/TokenFilterTests.cs @@ -95,6 +95,12 @@ public void CPlusPlusBuilderCompilerDirectivesAreIgnored() Assert.That("{$NOINCLUDE Foo}", LexesAndFiltersAs()); } [Test] + public void ZeroBasedStringsCompilerDirectivesAreIgnored() + { + Assert.That("{$ZEROBASEDSTRINGS ON}", LexesAndFiltersAs()); + Assert.That("{$ZEROBASEDSTRINGS OFF}", LexesAndFiltersAs()); + } + [Test] public void IfDefTrue() { Assert.That("0{$IFDEF TRUE}1{$ENDIF}2", LexesAndFiltersAs(