# HG changeset patch # User David A. Holland # Date 1434088958 14400 # Node ID 2ee7db420643d3ccb2f477cb2307fb1df7957b11 # Parent 80e243f2047db4215973897901cfbf63039bc940 Fix joerg's expansionitem_eq(). Was wrong previously. diff -r 80e243f2047d -r 2ee7db420643 macro.c --- a/macro.c Fri Jun 12 02:01:00 2015 -0400 +++ b/macro.c Fri Jun 12 02:02:38 2015 -0400 @@ -143,17 +143,23 @@ expansionitem_eq(const struct expansionitem *ei1, const struct expansionitem *ei2) { - if ((ei1->itemtype == EI_STRING) != (ei2->itemtype == EI_STRING)) { + if (ei1->itemtype != ei2->itemtype) { return false; } - if (ei1->itemtype == EI_STRING) { + switch (ei1->itemtype) { + case EI_STRING: if (strcmp(ei1->string, ei2->string) != 0) { return false; } - } else { + break; + case EI_PARAM: if (ei1->param != ei2->param) { return false; } + break; + case EI_FILE: + case EI_LINE: + break; } return true; }