Hi Tobias,
what do you mean in detail?
If I create the class via System Browser and add the method, my change file ends with:
Object subclass: #CTTéstClass instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'CT-Experiments'! !CTTéstClass methodsFor: 'no messages' stamp: 'ct 12/21/2019 17:18'! foo! !
However, CompiledMethod >> #timeStamp returns ''.
Here is a snapshot of the #timeStamp stackframe:
[cid:9a66cd4b-bad0-4e58-8cad-5ee25223b261]
Please note that "tokens at: tokenCount" returns the correct timestamp, but however, stamp is nil. What is this???
I'm not sure if I understand you correctly, but if you told me to search the hex of my change file for a "zero word", the only occurrence I could find is:
[cid:cda09063-bcf3-415d-ac79-97bc9aa8642b]
Which lead me to this:
[cid:9f5e7798-1326-4821-a94d-0b7cbfa567d6]
Does not seem related, but still looks somehow wrong ^^
Best,
Christoph
________________________________ Von: Squeak-dev squeak-dev-bounces@lists.squeakfoundation.org im Auftrag von Tobias Pape Das.Linux@gmx.de Gesendet: Samstag, 21. Dezember 2019 15:44 Uhr An: The general-purpose Squeak developers list Betreff: Re: [squeak-dev] [BUG] Timestamps don't work for classes with special character names
On 21.12.2019, at 15:16, Thiede, Christoph Christoph.Thiede@student.hpi.uni-potsdam.de wrote:
Hi all, found just another bug. If you get tired of them, just tell me :-)
Steps to reproduce: Print it: class := Object subclass: #CTTèstClass "sic (with accent in name)!" instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'CT-Experiments'. class compile: 'foo ^ #foo'. (class >> #foo) timeStamp
Expected output: Something like 'ct 12/21/2019 15:13'.
Actual output: ''.
Please note that everything would have worked fine if we named class #CTTestClass (without accent) instead.
Do we want to support special class names in general? If yes, this is a bug in my opinion. If no, we should raise an error in the first statement.
Cause of infection not yet investigated.
Please look at your .changes file whether at some point \00 bytes appear.
Best regards -Tobias