InstrumentingCompiler.st
changeset 4624 479f44a9715f
parent 4623 88a5ca3677ee
child 4625 9842c7352cba
equal deleted inserted replaced
4623:88a5ca3677ee 4624:479f44a9715f
   163 !
   163 !
   164 
   164 
   165 compileMethod:aMethod
   165 compileMethod:aMethod
   166     "compile a single method with instrumentation"
   166     "compile a single method with instrumentation"
   167 
   167 
       
   168     aMethod isInstrumented ifTrue:[^ self].      
   168     aMethod hasPrimitiveCode ifTrue:[^ self].
   169     aMethod hasPrimitiveCode ifTrue:[^ self].
   169     aMethod isSubclassResponsibility ifTrue:[^ self].      
   170     aMethod isSubclassResponsibility ifTrue:[^ self].      
   170     (aMethod hasAnnotation:#noCoverage) ifTrue:[^ self].      
   171     (aMethod hasAnnotation:#noCoverage) ifTrue:[^ self].      
   171     aMethod isInstrumented ifTrue:[^ self].      
       
   172 
   172 
   173     Error handle:[:ex |
   173     Error handle:[:ex |
   174         Transcript showCR:'error instrumenting: %1' with:aMethod.
   174         Transcript showCR:'error instrumenting: %1' with:aMethod.
   175         Transcript showCR:'    %1' with:ex description.
   175         Transcript showCR:'    %1' with:ex description.
   176         ex reject.
   176         ex reject.