// RUN: %clang_cc1 -emit-llvm %s  -o /dev/null

/* This triggered a problem in reload, fixed by disabling most of the 
 * steps of compilation in GCC.  Before this change, the code went through
 * the entire backend of GCC, even though it was unnecessary for LLVM output
 * now it is skipped entirely, and since reload doesn't run, it can't cause
 * a problem.
 */

extern int tolower(int);

const char *rangematch(const char *pattern, int test, int c) {

  if ((c <= test) | (tolower(c) <= tolower((unsigned char)test)))
    return 0;

  return pattern;
}
