I need to use delete as the method name. But now it's still a keyword, right?

bauss jj_1337 at live.dk
Wed May 18 06:13:45 UTC 2022


On Wednesday, 18 May 2022 at 02:12:42 UTC, zoujiaqing wrote:
> https://dlang.org/changelog/2.100.0.html#deprecation_delete
>
> My code:
>
> ```D
> import std.stdio;
>
> class HttpClient
> {
> 	string get(string url)
> 	{
> 		return "";
> 	}
>
> 	string delete(string url)
> 	{
> 		return "";
> 	}
> }
>
> void main()
> {
> 	auto http = new HttpClient;
> 	
> 	string content = 
> http.get("https://forum.dlang.org/group/general");
> 	string content = 
> http.delete("https://forum.dlang.org/newpost/general?");
> }
> ```
>
> error message
> ```bash
> % dub build --compiler=dmd
> Performing "debug" build using dmd for x86_64.
> test ~master: building configuration "application"...
> source/app.d(10,9): Error: no identifier for declarator `string`
> source/app.d(10,9): Error: declaration expected, not `delete`
> source/app.d(14,1): Error: unmatched closing brace
> dmd failed with exit code 1.
> ```
>
> I wonder when I can use it. Because this will cause a software 
> naming problem.

Considering the deprecation period has ended then IMO it should 
be able to be used as an identifier.

I would consider this a bug.


More information about the Digitalmars-d-learn mailing list