Cool, well found!

_,,,^..^,,,_ (phone)

> On Oct 30, 2021, at 7:33 AM, Max Leske ***@***.***> wrote:
>
> 
> Found it! I was accidentally writing a class as the method class literal into a compiled method. This is usually an association (or ClassBinding). This explains the segfault upon super send.
>
> The reason this only showed up in trunk is that i had a correct Environment>>associationAt:ifAbsent: but not for #bindingOf:ifAbsent:, which, in trunk, is the new message send in Class>>binding.
>
> I'm closing this issue. Here's an MWE in case you want to do something with the segfault:
>
> | class method |
> Object subclass: #Foo
> instanceVariableNames: 'env'
> classVariableNames: ''
> poolDictionaries: ''
> category: 'Bar'.
>
> class := Smalltalk at: #Foo.
> class compile: 'printString super prinstString'.
>
> method := (Smalltalk at: #Foo) compiledMethodAt: #printString.
> method
> literalAt: method numLiterals
> put: class.
>
> class new printString
> —
> You are receiving this because you are subscribed to this thread.
> Reply to this email directly, view it on GitHub, or unsubscribe.
> Triage notifications on the go with GitHub Mobile for iOS or Android.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.