False positive in "methods with full blocks"

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

False positive in "methods with full blocks"

Boris Popov, DeepCove Labs (SNN)
Why would this method be reported as having full blocks?

mprintf: argArray
        <C: char * mprintf(const char * , ...)>
        ^self externalAccessFailedWith: _errorCode

Cheers!

-Boris

--
+1.604.689.0322
DeepCove Labs Ltd.
4th floor 595 Howe Street
Vancouver, Canada V6C 2T5

[hidden email]

CONFIDENTIALITY NOTICE

This email is intended only for the persons named in the message
header. Unless otherwise indicated, it contains information that is
private and confidential. If you have received it in error, please
notify the sender and delete the entire message including any
attachments.

Thank you.

smime.p7s (4K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

RE: False positive in "methods with full blocks"

Boris Popov, DeepCove Labs (SNN)
Thanks Terry, I guess I never bothered to look at what ExtendedCompiler
produces under the covers,

normal ExternalMethod numArgs=1 numTemps=1 frameSize=12

literals: (CompiledBlock [] in Interface>>mprintf: CompiledBlock [] in
Interface>>mprintf: )

1 <D4 00> create array size 1
3 <4D> store local 1; pop
4 <44> push self
5 <CE EA> non-immediate send externalAccessFailedSignal
7 <11> push local 1
8 <FA 00 01> make copying block (1)
11 <44> push self
12 <10> push local 0
13 <F7 01 02> make full copying block (2)
16 <F0 54> send handle:do:
18 <45> pop; push self
19 <D9 10> push local 1 at 0
21 <CE 6B> non-immediate send externalAccessFailedWith:
23 <65> return

Fair enough, but since there's not much we can do about it, I say these
should be excluded from Code Critic results.

Cheers!

-Boris

--
+1.604.689.0322
DeepCove Labs Ltd.
4th floor 595 Howe Street
Vancouver, Canada V6C 2T5

[hidden email]

CONFIDENTIALITY NOTICE

This email is intended only for the persons named in the message
header. Unless otherwise indicated, it contains information that is
private and confidential. If you have received it in error, please
notify the sender and delete the entire message including any
attachments.

Thank you.

-----Original Message-----
From: Terry Raymond [mailto:[hidden email]]
Sent: Friday, March 24, 2006 12:33 PM
To: Boris Popov
Subject: RE: False positive in "methods with full blocks"

Boris

It depends on how the compiler compiled to bytecodes.
Inspect the compile method.

Terry
 
===========================================================
Terry Raymond       Smalltalk Professional Debug Package
Crafted Smalltalk
80 Lazywood Ln.
Tiverton, RI  02878
(401) 624-4517      [hidden email]
<http://www.craftedsmalltalk.com>
===========================================================

> -----Original Message-----
> From: Boris Popov [mailto:[hidden email]]
> Sent: Friday, March 24, 2006 3:27 PM
> To: VWNC
> Subject: False positive in "methods with full blocks"
>
> Why would this method be reported as having full blocks?
>
> mprintf: argArray
> <C: char * mprintf(const char * , ...)>
> ^self externalAccessFailedWith: _errorCode
>
> Cheers!
>
> -Boris
>
> --
> +1.604.689.0322
> DeepCove Labs Ltd.
> 4th floor 595 Howe Street
> Vancouver, Canada V6C 2T5
>
> [hidden email]
>
> CONFIDENTIALITY NOTICE
>
> This email is intended only for the persons named in the message
> header. Unless otherwise indicated, it contains information that is
> private and confidential. If you have received it in error, please
> notify the sender and delete the entire message including any
> attachments.
>
> Thank you.


smime.p7s (4K) Download Attachment