fuzion icon indicating copy to clipboard operation
fuzion copied to clipboard

`Duplicate feature declaration` falsely reports conflict with module-visible feature

Open fridis opened this issue 1 year ago • 1 comments

See this definition of num.sign.is_plus that should exist in parallel to the same named feature of the base lib:

 > ./build/bin/fz -e "num.sign.is_plus => true"

command line:1:10: error 1: Duplicate feature declaration
num.sign.is_plus => true

Feature that was declared repeatedly: 'num.sign.is_plus'
originally declared at $MODULE/num/sign.fz:30:10:
  module is_plus =>

To solve this, consider renaming one of these two features, e.g., as 'is_plusʼ' (using a unicode modifier letter apostrophe 'ʼ' U+02BC) or adding an additional argument (e.g. '_ unit' for an ignored unit argument used only to disambiguate these two).


command line:1:10: error 2: Redefinition must be declared using modifier 'redef'
num.sign.is_plus => true

Feature that redefines existing feature: 'num.sign.is_plus'
original feature: 'num.sign.is_plus'
original feature defined in $MODULE/num/sign.fz:30:10:
To solve this, if you did not intend to redefine an inherited feature, choose a different name for 'is_plus'.  Otherwise, if you do want to redefine an inherited feature, add a 'redef' modifier before the declaration of 'num.sign.is_plus'.

2 errors.

fridis avatar Sep 11 '24 17:09 fridis

I think this once worked. Now sameModule() in Module is unused.

michaellilltokiwa avatar Sep 24 '24 14:09 michaellilltokiwa