Skip to content

Selectors on different classes with the same names collide, because of having the same namespacing. #4

@Oblivious-Oblivious

Description

@Oblivious-Oblivious

When two objects in the same compilation range have same named messages, their selectors get translated into two functions with the same name.

object First implements Object {
    (void) self |> "message" |> {}
}
object Second implements Object {
    (void) self |> "meesage" |> {}
}

./zircon First.zc Second.zc

(selectors produced):

void *zircon_message(void *self) {}
void *zircon_message(void *self) {}

hence the name collision.

Metadata

Metadata

Labels

invalidThis doesn't seem right

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions