Skip to content

Incorrect constant bounds on function parameter #397

Open
@john-h-kastner

Description

@john-h-kastner

The bounds for the parameter of b should no wider than the parameter of c, but both parameters are given constant bounds based only of the respective arguments in d.

void a(_Array_ptr<char> y);
void b(char *p) { a(p); }
void c(char *x) { b(x); }

void d(void) {
  b("test");
  c("");
}
void a(_Array_ptr<char> y);
void b(_Array_ptr<char> p : count(4)) { a(p); }
void c(_Array_ptr<char> x : count(0)) { b(x); }

void d(void) {
  b("test");
  c("");
}

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions