Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug Report] Missing array size expression if multiple variables are declared together #6

Open
FanWuUCL opened this issue Feb 25, 2016 · 1 comment
Labels

Comments

@FanWuUCL
Copy link
Collaborator

Bug description:
When multiple variables are declared at the same time, one or more are array variables, unless it's the first variable in the declaration, the array size represented by an expression will be missing in the mutants.

How to recreate the bug:

  1. Write the following code to a file, say "bug.c":

include<stdlib.h>

static void func( int x )
{
int i[4+1], arr[4+1];
if(x==0);
}

void main(int argc, char** argv){
func(0);
}
2. Run Milu to generate mutants on "bug.c", with the default set of operators, but add option "--debug=src":
$ path\to\milu --debug=src bug.c
3. The output will be the original code being parsed and printed without any modification:

include<stdlib.h>

static void func ( int x )
{
int i [ 4 + 1 ] , arr [ ];
if ( x == 0 ) ;

}

;
void main ( int argc , char * * argv )
{
func ( 0 ) ;
}
4. The array size of the second declared variable is missing.

Temporary Solution for users:
Declare array variables separately.

@FanWuUCL FanWuUCL added the bug label Feb 25, 2016
@JingTianM
Copy link

Hello, I define an int array separately, but the output will drop [ ] and become an int variable. I wonder if you have encountered this problem.Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants