<?xml version="1.0"?>
<ErrorDocumentation xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ErrorName>CS1587</ErrorName>
  <Examples>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 8
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

/// invalid comment placed on namespace.
namespace TopNS
{
	class Foo
	{
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 7
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;
[Flags]
/// invalid comment between attributes and type declaration.
enum Foo {
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 11
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		Foo /** incorrect */ ()
		{
		}
	}

}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 9
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	internal /** comment */ /** comment2 */ class Hoge
	{
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 11
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		static /// incorrect
		Foo ()
		{
		}
	}

}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 11
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		void  /// incorrect
		FooBar (string foo)
		{
		}
	}

}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 10
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
/// invalid comment on using alias directive inside namespace.
using Hoge = System.Xml.XmlDocument;

	enum Foo {
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 9
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	[Flags/** here is also incorrect comment */]
	enum Enum2 {
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 8
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

/// invalid comment on using alias directive.
using Hoge = System.Xml.XmlDocument;

namespace TopNS
{

	enum Foo {
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 5
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

/// Text goes here
//
/// and continues here
public class Test
{    
}

</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 11
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	namespace ChildNS {
		[Flags]
		/// comment after attribute
		enum Enum2 {
		}
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 12
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	internal class Hoge
	{
		/// invalid comment
	}

}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 16
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	abstract class AFoo
	{
		internal abstract int Prop { get; }
	}

	class Foo : AFoo
	{
		sealed /** is "sealed" checked? */ internal override int Prop {
			get { return 0; }
		}
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 12
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		string this [string bar] {
			get { /** incorrect */ return ""; }
			set { }
		}
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 15
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	namespace ChildNS {
		enum Enum3 {
		}
		/// invalid here
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 13
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		Foo (string foo)
		{
			/** incorrect doccomment*/
		}
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 10
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	/// more invalid comment on namespace; inside namespace
	namespace ChildNS {
		class Test {
		}
	}

}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 13
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		Foo (/** incorrect doccomment*/ string foo)
		{
		}
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 11
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		public /** invalid comment in field decl */ int field;
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 13
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		string this [string bar] {
			get { return ""; }
			/// incorrect
			set { }
		}
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 11
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		public /// incorrect
		void FooBar (string foo)
		{
		}
	}

}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 6
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

/// invalid comment on global attributes.
[assembly:System.CLSCompliant (true)]

enum Foo {
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 12
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
}

/// EOF
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 13
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		string this [string bar] {
			get { return ""; }
			set { /** incorrect */ }
		}
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 6
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

/// invalid comment placed on namespace.
using System;
enum Foo {
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 10
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
/// invalid comment on using directive inside namespace.
using System.Xml;

	enum Foo {
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 10
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	enum Enum3 {
		Foo /** invalid comment between enum identifier and comma */,
		Bar
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 11
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		public /** invalid comment in property decl */ int prop {
			get { return 0; }
		}
	}
}
</string>
    <string>// CS1587: XML comment is not placed on a valid language element
// Line: 15
// Compiler options: -doc:dummy.xml -warnaserror -warn:2

using System;

namespace TopNS
{
	class Foo
	{
		string this [string bar] {
			/// incorrect
			get { return ""; }
			set { }
		}
	}
}
</string>
  </Examples>
</ErrorDocumentation>