[aspectc-user] Re: [aspectc-user] Re: [aspectc-user] intercepting flow of executio=?iso-8859-2?Q?Re: [aspec =?iso-8859-2?Q?Re: [aspectc-user] Re: [aspectc-user] intercepting flow of executio Re: [aspectc-user] intercepting flow of execution=A0of?= the method declaredinside aspect
Olaf Spinczyk
Olaf.Spinczyk at informatik.uni-erlangen.de
Thu May 27 15:19:16 CEST 2004
Hello Bartosz,
Bartosz Blimke wrote:
>>Our test cases show that cflow does not always fail under Windows.
>>Therefore, I'm optimitic that the following workaround will help you:
>>
>>Move the implementation of your run() function from the aspect header
>>into a *.cpp file which includes the aspect header explititly.
>>
>>aspect header:
>>
>>aspect Aspect {
>> void run(AC::Action &action);
>> ...
>>};
>>
>>Aspect.cpp:
>>
>>void Aspect::run (AC::Action &action) {
>> action.trigger();
>>}
>>
>>The local class will now be generated only in Aspect.cpp and the linker
>>can't complain that it is defined twice.
>>
>>I hope that helps,
>>
>>Olaf
>>
>
>
>
> Ok, it works, but I had to declare run() as a global function
> not the member of Aspect class.
> If run() is a method of Aspect class ac++ weaver complains
> that there is unknown token "Aspect" in run() definition in *.cpp file
> void Aspect::run (AC::Action &action) {
> action.trigger();
> }
>
>
> Thanks for help, now I'm able to continue my solution,
> and I'm waiting for fixing this bug with cflow :)
>
> Bartosz
I tried the code (with "run()" as a member function of "Aspect") in the
Visual Studio Add-In by pure-systems and it works. I don't have to make
"run()" a global function. Are you sure that you included the aspect header?
Olaf
More information about the aspectc-user
mailing list