Branch: refs/heads/master
Home: https://github.com/mono/mono
Compare: https://github.com/mono/mono/compare/93c6b94bb004...ef722ff122d2
Commit: ef722ff122d227e862cb0b75b2c6ee31d5467b3a
Author: Marek Safar <[email protected]> (marek-safar)
Date: 2013-10-29 18:04:27 GMT
URL: https://github.com/mono/mono/commit/ef722ff122d227e862cb0b75b2c6ee31d5467b3a
When parsing documentation cref text turn on error probing for tokenizer as well. Fixes #15511
Changed paths:
M mcs/mcs/cs-tokenizer.cs
M mcs/mcs/driver.cs
M mcs/mcs/eval.cs
Added paths:
A mcs/tests/test-xml-068-ref.xml
A mcs/tests/test-xml-068.cs
Modified: mcs/mcs/cs-tokenizer.cs
===================================================================
@@ -188,6 +188,8 @@ public enum PreprocessorDirective
readonly SeekableStreamReader reader;
readonly CompilationSourceFile source_file;
readonly CompilerContext context;
+ readonly Report Report;
+
SourceFile current_source;
Location hidden_block_start;
@@ -430,7 +432,7 @@ public Position (Tokenizer t)
}
}
- public Tokenizer (SeekableStreamReader input, CompilationSourceFile file, ParserSession session)
+ public Tokenizer (SeekableStreamReader input, CompilationSourceFile file, ParserSession session, Report report)
{
this.source_file = file;
this.context = file.Compiler;
@@ -439,6 +441,7 @@ public Tokenizer (SeekableStreamReader input, CompilationSourceFile file, Parser
this.id_builder = session.IDBuilder;
this.number_builder = session.NumberBuilder;
this.ltb = new LocatedTokenBuffer (session.LocatedTokens);
+ this.Report = report;
reader = input;
@@ -3730,10 +3733,6 @@ public string consume_doc_comment ()
return null;
}
- Report Report {
- get { return context.Report; }
- }
-
void reset_doc_comment ()
{
xml_comment_buffer.Length = 0;
Modified: mcs/mcs/driver.cs
===================================================================
@@ -57,7 +57,7 @@ void tokenize_file (SourceFile sourceFile, ModuleContainer module, ParserSession
SeekableStreamReader reader = new SeekableStreamReader (input, ctx.Settings.Encoding);
var file = new CompilationSourceFile (module, sourceFile);
- Tokenizer lexer = new Tokenizer (reader, file, session);
+ Tokenizer lexer = new Tokenizer (reader, file, session, ctx.Report);
int token, tokens = 0, errors = 0;
while ((token = lexer.token ()) != Token.EOF){
Modified: mcs/mcs/eval.cs
===================================================================
@@ -459,7 +459,7 @@ enum InputKind {
//
InputKind ToplevelOrStatement (SeekableStreamReader seekable)
{
- Tokenizer tokenizer = new Tokenizer (seekable, source_file, new ParserSession ());
+ Tokenizer tokenizer = new Tokenizer (seekable, source_file, new ParserSession (), ctx.Report);
// Prefer contextual block keywords over identifiers
tokenizer.parsing_block++;
Added: mcs/tests/test-xml-068-ref.xml
===================================================================
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+<doc>
+ <assembly>
+ <name>test-xml-068</name>
+ </assembly>
+ <members>
+ <member name="M:X.Test">
+ <summary>
+ Test summary
+ </summary>
+ <see cref="!:#sometext" />
+ </member>
+ </members>
+</doc>
Added: mcs/tests/test-xml-068.cs
===================================================================
@@ -0,0 +1,16 @@
+// Compiler options: -doc:xml-068.xml
+
+class X
+{
+ /// <summary>
+ /// Test summary
+ /// </summary>
+ /// <see cref="#sometext"/>
+ static void Test ()
+ {
+ }
+
+ public static void Main ()
+ {
+ }
+}
\ No newline at end of file
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.