fasterthanlime/rock — pull request #843 by zhaihj (2014-10-15 02:41:11+00:00)
Title: Check redefinition in extend(addon)

Current the following code can be compiled by rock but generates errors:

import structs/ArrayList

extend ArrayList{
exists?: func -> Bool{
return false
}
}

extend ArrayList{
exists?: func(i: String) -> Bool{
return true
}
}

Another suitation:

foo: class{
exists?: func -> Bool { false }
}

extend foo{
exists?: func -> Bool { true }
}

This commit check the redefiniton when adding current addons to base.

Current sdk:
sdk/math
lang/Numbers

has same extension "abs" . I added a suffix "~math" for the ones in math.