Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undocumented C# Keyword #18714

Closed
Youssef1313 opened this issue May 30, 2020 · 3 comments
Closed

Undocumented C# Keyword #18714

Youssef1313 opened this issue May 30, 2020 · 3 comments
Labels
resolved-by-customer Indicates issues where the customer no longer needs any help. [org][resolution]

Comments

@Youssef1313
Copy link
Member

Reading through CA2230, it mentions __arglist as a C# Keyword. I never knew the existence of such keyword in C#.
Searching through the documentation doesn't give any results (To be accurate, only results in error messages, not actual documentation for the keyword).

So, I suspect the documentation is missing this keyword.

The documentation for that keyword should also include a note that it's preferred to use params.

@dotnet-bot dotnet-bot added the ⌚ Not Triaged Not triaged label May 30, 2020
@svick
Copy link
Contributor

svick commented May 30, 2020

I believe __arglist (and keywords related to it) is intentionally undocumented, because it shouldn't be used. That's also why it starts with double underscore. I don't think there's any reason to start documenting it now.

@Youssef1313
Copy link
Member Author

@svick, Thanks for answering. But are there any rare scenarios where one would use __arglist? for interop with C/C++ for example? or it's always bad to use it?

@BillWagner
Copy link
Member

The last section of identifies in the C# spec has the following text:

Identifiers containing two consecutive underscore characters (U+005F) are reserved for use by the implementation. For example, an implementation might provide extended keywords that begin with two underscores.

I think that is sufficient. I recommend closing this.

@BillWagner BillWagner added resolved-by-customer Indicates issues where the customer no longer needs any help. [org][resolution] and removed ⌚ Not Triaged Not triaged labels Jun 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
resolved-by-customer Indicates issues where the customer no longer needs any help. [org][resolution]
Projects
None yet
Development

No branches or pull requests

4 participants