ISC DHCP expression
ISC DHCP supports "expressions" of 3 types: boolean, data (string) and numeric (integer). They can be used for matching classes, set option values, etc.
Unfortunately this system is not fully consistent, for instance if you'd like to set an option to true:
option ip-forwarding = true;
This does not work because true is not a keyword and is parsed as a variable reference. As it is not set at runtime it will be evaluated as null so false...
If you try a constant true expression (aka tautology):
option ip-forwarding = 'foo' = 'foo';
In this case you specify a boolean expression when the system wants a data expression so refused this attempt at parsing time.
Note it is worse for integers, in:
option default-ip-ttl = 12;
the 12 is in hexadecimal so in fact is 18... If you want a decimal value you need a context where a number is expected.
Cf KB references:
and about inconsistencies in output/display: