File: makelist.cc

package info (click to toggle)
icmake 13.05.01-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 7,132 kB
  • sloc: cpp: 11,595; fortran: 883; makefile: 853; sh: 546; pascal: 342
file content (21 lines) | stat: -rw-r--r-- 674 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#define XERR
#include "args.ih"

bool Args::makelist(Builtin::ArgsIter funBegin, Builtin::ArgsIter funEnd,
                    unsigned argBegin, unsigned argEnd)
{
    if (argEnd - argBegin == 0)                     // zero trailing args: OK
        return true;
                                                    // # specs/args differ
    if (int argDiff = argEnd - argBegin; funEnd - funBegin != argDiff)     
        return false;

                                                    // check trailing args
    for (; funBegin != funEnd; ++funBegin, ++argBegin)
    {
        if (not equalTypes(funBegin, argBegin))
            return false;
    }

    return true;
}