Skip to content
This repository was archived by the owner on Sep 18, 2024. It is now read-only.
This repository was archived by the owner on Sep 18, 2024. It is now read-only.

"one-line" change to clang still causes acceptance of incorrect code #33

@dhollman

Description

@dhollman

The "one-line" change to clang (as far as I can tell) that we referenced in the [][] paper is this one (in commit b7b9efb) on the clang github). There are still substantial things that don't work even with that change, though; for instance:

#include <cstdlib>
#include <iostream>

// This *SHOULDN'T* work
void test(int[][][5][][]) {
  cout << "called foo(int[][][5][][])" << endl;
}

int main(int argc, char** argv)
{
  test(*(int(*)[][][5][][])&i);
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions