[aspectc-user] Defining an Aspect Instantiation Model with ac++1.0

Olaf Spinczyk Olaf.Spinczyk at informatik.uni-erlangen.de
Wed Nov 2 16:40:50 CET 2005


Hi,

the bug has number 267 in bugzilla and I've just fixed it.

Thanks again for reporting this problem!

Olaf


Olaf Spinczyk wrote:
> Hi Sergio,
> 
> I tried to compile your example and got the following error message:
> 
> <ac>: In member function `void 
> TJP__ZN6DCache16page_replacementEv_0::proceed()
>    ':
> <ac>:26: error: `_that' undeclared (first use this function)
> 
> Did you mean this problem? It seems to be a code generation bug :-(. The 
> member _that is referenced but not generated.
> 
> As a workaround (until 1.0pre2) you can add the following line to your 
> execution/around advice:
> 
> if (0) tjp->proceed()
> 
> After adding this line I was able to compile your example.
> 
> -Olaf
> 
> 
> Sergio Queiroz wrote:
>>
>> Hi!
>>
>> I downloaded the new AspectC++ version and I was trying to compile 
>> some code
>> that worked pretty nice with version 0.92.
>>
>> The problem is that ac++ 1.0 could not compile my examples :(
>>
>> I tried to reduce the source code and I am sending my files, some problem
>> occurred during parsing. I am using linux.
>>
>> This is the output of the command "g++ -v":
>>
>> Reading specs from /usr/lib/gcc-lib/i486-linux/3.3.5/specs
>> Configured with: ../src/configure -v
>> --enable-languages=c,c++,java,f77,pascal,objc,ada,treelang --prefix=/usr
>> --mandir=/usr/share/man --infodir=/usr/share/info
>> --with-gxx-include-dir=/usr/include/c++/3.3 --enable-shared 
>> --with-system-zlib
>> --enable-nls --without-included-gettext --enable-__cxa_atexit
>> --enable-clocale=gnu --enable-debug --enable-java-gc=boehm
>> --enable-java-awt=xlib --enable-objc-gc i486-linux
>> Thread model: posix
>> gcc version 3.3.5 (Debian 1:3.3.5-8)
>>
>>
>>
>> Sérgio
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> #include "DCache.h"
>>
>> void DCache::doit()
>> {
>>     total_cycles++;
>>     
>> }
>>
>> void DCache::reset()
>> {        total_cycles = 0;
>> }
>>
>>
>> int DCache::page_replacement()
>> {
>>     return 0;
>> }
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> #ifndef DCACHE_H
>> #define DCACHE_H
>>
>> #include "systemc.h"
>> #include <iostream.h>
>>
>> SC_MODULE (DCache)
>> {
>>    sc_in<bool> clock;
>>       void doit();
>>    void reset();
>>    int page_replacement();
>>       float total_cycles;
>>           SC_CTOR(DCache)
>>      {
>>          reset();
>>                   SC_METHOD(doit);
>>          sensitive_pos << clock;
>>      }
>> };
>>
>> #endif
>>
>>
>> ------------------------------------------------------------------------
>>
>> #include "DCache.h"
>>
>> int
>> sc_main (int argc, char **argv) {
>>     sc_signal <bool> clock;
>>     
>>     DCache dcache ("dcache");
>>     dcache.clock (clock);
>>     
>>     int i = 0;
>>
>>     sc_initialize ();
>>     
>>     while (i++ < 10) {
>>         clock.write (0);
>>
>>         cout << dcache.page_replacement () << endl;
>>        
>>         clock.write (1);
>>     }
>>     
>>     return 0;
>> }
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> aspectc-user mailing list
>> aspectc-user at aspectc.org
>> http://www.aspectc.org/mailman/listinfo/aspectc-user
> 
> _______________________________________________
> aspectc-user mailing list
> aspectc-user at aspectc.org
> http://www.aspectc.org/mailman/listinfo/aspectc-user




More information about the aspectc-user mailing list