checkedc / checkedc-llvm-project

This repo contains a version of clang that is modified to support Checked C. Checked C is an extension to C that lets programmers write C code with bounds checking and improved type-safety.
13 stars 19 forks source link

Fix for Issue #1195 #1196

Closed Arunkumar1998BOM closed 1 year ago

Arunkumar1998BOM commented 1 year ago

Reason for the error --> typename llvm::cast_retty<X, Y>::ret_type llvm::cast(Y) [with X = clang::Expr; Y = const clang::Stmt; typename llvm::cast_retty<X, Y>::ret_type = const clang::Expr]: Assertion `isa(Val) && "cast() argument of incompatible type!"' failed.

Description of Fix --> I have a fix I believe involves the least changes, so as to disturb the main line as little as possible.

Regression CheckedC Testing --> Testing Time: 14.53s Unsupported: 3 Passed : 96

Regression Clang Testing --> Failed Tests (3): Clang :: 3C/json_formatting.c Clang :: 3C/json_formatting_backslash.c Clang :: 3C/multiple_tu.c

Testing Time: 2095.93s Unsupported : 75 Passed : 27663 Expectedly Failed: 34 Failed : 3

Please note that the above 3 tests are also failing for me on "untouched" main-branch.

Machiry commented 1 year ago

@dtarditi, Can you take a look into this?