diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md
index 69bf8669f2..211c8bf9df 100644
--- a/docs/pages/release_notes.md
+++ b/docs/pages/release_notes.md
@@ -129,6 +129,12 @@ You can identify them with the `@InternalApi` annotation. You'll also get a depr
methods on {% jdoc apex::lang.apex.ast.ApexParserVisitor %} and its implementations.
Use {% jdoc apex::lang.apex.ast.ApexNode %} instead, now considers comments too.
+* {% jdoc core::lang.ast.CharStream %}, {% jdoc core::lang.ast.JavaCharStream %},
+{% jdoc core::lang.ast.SimpleCharStream %}: these are APIs used by our JavaCC
+implementations and that will be moved/refactored for PMD 7.0.0. They should not
+be used, extended or implemented directly.
+
+
##### For removal
* pmd-core
diff --git a/pmd-core/src/main/ant/alljavacc.xml b/pmd-core/src/main/ant/alljavacc.xml
index 09d710f1e2..8c0261cb4a 100644
--- a/pmd-core/src/main/ant/alljavacc.xml
+++ b/pmd-core/src/main/ant/alljavacc.xml
@@ -42,6 +42,9 @@
+
@@ -59,7 +62,7 @@
value="net.sourceforge.pmd.lang.ast" />
+ value="@Deprecated @net.sourceforge.pmd.annotation.InternalApi class JavaCharStream implements CharStream" />
@@ -77,7 +80,7 @@
value="net.sourceforge.pmd.lang.ast" />
+ value="@Deprecated @net.sourceforge.pmd.annotation.InternalApi public class SimpleCharStream implements CharStream" />
diff --git a/pmd-cpp/src/main/java/net/sourceforge/pmd/lang/cpp/CppCharStream.java b/pmd-cpp/src/main/java/net/sourceforge/pmd/lang/cpp/CppCharStream.java
index 97e9540b85..de9332cc12 100644
--- a/pmd-cpp/src/main/java/net/sourceforge/pmd/lang/cpp/CppCharStream.java
+++ b/pmd-cpp/src/main/java/net/sourceforge/pmd/lang/cpp/CppCharStream.java
@@ -8,6 +8,7 @@ import java.io.IOException;
import java.io.Reader;
import java.util.regex.Pattern;
+import net.sourceforge.pmd.annotation.InternalApi;
import net.sourceforge.pmd.lang.ast.SimpleCharStream;
/**
@@ -16,6 +17,8 @@ import net.sourceforge.pmd.lang.ast.SimpleCharStream;
*
* @author Andreas Dangel
*/
+@Deprecated
+@InternalApi
public class CppCharStream extends SimpleCharStream {
private static final Pattern CONTINUATION = Pattern.compile("\\\\\\n|\\\\\\r\\n");