Revision 9d2cca71cf54ddfebda26e247d82ae7b71d9e03c authored by Pranav Gokhale on 30 June 2018, 18:56:21 UTC, committed by Pranav Gokhale on 30 June 2018, 18:56:21 UTC
1 parent 720b0db
index-many-logical-ops.c
// RUN: c-index-test -index-file %s | FileCheck %s
// rdar://10941790
// Check that we don't get stack overflow trying to index a huge number of
// logical operators.
// CHECK: [indexDeclaration]: kind: function | name: foo
int foo(int x) {
return
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x &&
x;
}
Computing file changes ...