C++ Logo

std-proposals

Advanced search

Re: [std-proposals] unimplemented attribute

From: Sebastian Wittmeier <wittmeier_at_[hidden]>
Date: Tue, 18 Mar 2025 12:08:10 +0100
As I understand compared to `= delete` you want to make the reason the function is not there machine-readable and distinguish from an unrelated deleted function. But all =deleted functions are unimplemented, and all [unimplemented] function would - according to your description - compile as if they were deleted. What is the difference in meaning?   E.g. if one had = deleted("message") = unimplemented("message")   when would one choose one or the other? Aren't they synonymous? = deleted could mean, it was there before (e.g. in an earlier version). But that is not how it is meant and used in practice. = unimplemented could mean, it is planned to be implemented in the future?   -----Ursprüngliche Nachricht----- Von:Samuel Alonso Rodríguez via Std-Proposals <std-proposals_at_[hidden]> Gesendet:Di 18.03.2025 11:14 Betreff:Re: [std-proposals] unimplemented attribute An:std-proposals_at_[hidden]; CC:Samuel Alonso Rodríguez <samuelalonso26_at_[hidden]>; The fixed message stating that the function is unimplemented is the divergence from raw = delete, and sure, since C++26, users could simply do something like = delete(“unimplemented function!”), but the compiler outcome could differ and tools inspecting the compiler output may not be able to easily detect that

Received on 2025-03-18 11:13:26