Consider example:
@:constant var timeOffset:Float = @byDefault Date.now().getTimezoneOffset()/(-60);
If overriden during model init this will give a warning
... has extra field timeOffset
Real problem is the precedence of metadata over binary operators, which is fixed by wrapping data:
@:constant var timeOffset:Float = @byDefault (Date.now().getTimezoneOffset()/(-60));
Coconut should give a warning when metadata is detected with binary operators.