Re: Deprecating a #define(s) w/dtc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



On Sun, Aug 25, 2019 at 10:09:18AM -0500, Kumar Gala wrote:
> 
> 
> > On Aug 24, 2019, at 7:57 PM, David Gibson <david@xxxxxxxxxxxxxxxxxxxxx> wrote:
> > 
> >> On Sat, Aug 24, 2019 at 08:50:59AM -0500, Kumar Gala wrote:
> >> 
> >> 
> >>>> On Aug 23, 2019, at 2:15 AM, David Gibson <david@xxxxxxxxxxxxxxxxxxxxx> wrote:
> >>>> 
> >>>> On Tue, Aug 20, 2019 at 01:19:42PM -0500, Kumar Gala wrote:
> >>>> Is there some operator/function we could define to be able to flag deprecated defines.
> >>>> 
> >>>> For example with gcc we can do:
> >>>> 
> >>>> #define __DEPRECATED_MACRO _Pragma("GCC warning \"Macro is deprecated\”")
> >>>> 
> >>>> So something like:
> >>>> 
> >>>>   clock-frequency = < /deprecate/ I2C_BITRATE_STANDARD 100000 >;
> >>> 
> >>> I don't quite understand your example.  I assume the idea of the
> >>> __DEPRECATED_MACRO thing is that you put that in the macro definition,
> >>> so that it will warn you any time you use it.
> >>> 
> >>> But then your dts example has the /deprecate/ tag at the _invocation_
> >>> of the macro so I don't really see how that's useful.
> >>> 
> >> 
> >> The idea is there’s some ‘operator’ that dtc can parse that would
> >> report a deprecation warning.  So I was suggesting /deprecate/ as
> >> the operator.
> > 
> > Ah!  I see now.
> > 
> > So, I think we could handle this pretty straightforwardly with a
> > /error/ and/or /warning/ tag.  Those would operate similarly to #error
> > and #warning in C, but unlike those not be preprocessor macros,
> > meaning we can generate them from macros.
> > 
> 
> Sounds perfect, is this something you could code up?

In theory, yes.  In practice I'm unlikely to find time to do this any
time soon.

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Device Tree]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux