Luiz-Monad / aspectc

Automatically exported from code.google.com/p/aspectc
0 stars 0 forks source link

SET /GET pointcuts doesn’t accept array. #12

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. In .acc file, write lines like "Before: set(int a[10]){ 
printf("print");}"
2. In .mc file, try to access the int array "a"
3. Compile the code with gcc and acc

What is the expected output? What do you see instead?
The expect output for an array declared as "int[10]" should have no error 
during compilation process. However, it will pass acc compiler, but not 
GCC, GCC will give an 
parsing error.

What version of the product are you using? On what operating system?
ACC  0.8x  Ubuntu 9.10

Please provide any additional information below.
Possible solution:
Check Program counter each time program access “a”

Reported by Ivan Muzzolini

Original issue reported on code.google.com by lzmliz...@gmail.com on 14 May 2010 at 3:34

GoogleCodeExporter commented 8 years ago
Test Case:
see the attached files main.mc and acc-code.acc.

compile the code by the following command.
>acc main.mc acc-code.acc

The expected output:

in main.
this is a point-cut for set.
this is a point-cut for get.
a is '2'.

However, the actual output:
It results a compile time error as follows,
>"acc-code.acc", line 1: error--1: syntax error near token '[' .

Important: The set/get pointcuts for current ACC compiler only accept global
variables. The new features will be added in the development process. 

Original comment by kedeng1...@gmail.com on 14 May 2010 at 3:39

Attachments: