https://github.com/mozilla/gecko-dev
Raw File
Tip revision: b2c372d1aa1949a560004ea3dbc4dfc0f5785a24 authored by Christian Legnitto on 15 December 2011, 23:47:29 UTC
ckout c3081b5db3d1 (bug 572652) and 4c77addce789 (bug 655628), as they cause bug 657153 and we are worried about the impact. The reward for keeping this in seems really low as well. a=LegNeato
Tip revision: b2c372d
test.cpp
extern "C" int mult(int l, int r);

extern "C" {

inline
int
farfle(int a, int b)
{
    return a * b + a / b;
}

static
int
ballywhoo(int a, int b)
{
    // So it can't get inlined
    if (a > 4)
        ballywhoo(a - 1, a + 1);

    return a + b;
}

static
int
blimpyburger(char a, int b)
{
    if (a == 'f')
        return b;

    return 0;
}

}

class foo
{
public:
    static int get_flooby() { static int flooby = 12; return flooby; }

    static int divide(int a, int b);

    foo() {}
    foo(int a);
    virtual ~foo() {}

    int bar();

    int baz(int a) { return a ? baz(a - 1) : 0; }
};

foo::foo(int a)
{
}

int
foo::divide(int a, int b)
{
    static int phlegm = 12;
    return a / b * ++phlegm;
}

int
foo::bar()
{
    return 12;
}

int main(int argc, char* argv[])
{
    int a = mult(5, 4);
    a = ballywhoo(5, 2);
    a = farfle(a, 6);
    a = blimpyburger('q', 4);

    foo f;
    f.get_flooby();
    a = f.bar();

    a = foo::divide(a, 12) + f.baz(6);

    foo f2(12);
    f2.baz(15);

    return a > 99 ? 1 : 0;
}
back to top