mirror of
https://github.com/github/codeql.git
synced 2025-12-16 16:53:25 +01:00
C++: Remove uniqueness constraint from uuid
Different class definitions can have the same uuid. This happens for example when using `#import <msxml6.dll>` there will be several C++ classes generated in `msxml6.tlh` which will share uuids with `extern "C"` struct declarations in the system header `msxml.h`. Notice that as far as the standard cpp QL library and queries go, we expose `getUuid()` on `UserType` and we never try to invert it, so we only rely on uniqueness of the `id` column in the `usertype_uuid` table, not the `uuid` column. Closes github/codeql-c-team#893
This commit is contained in:
2096
cpp/downgrades/e9a518baf14f4322ac243578a8e1391386ff030f/old.dbscheme
Normal file
2096
cpp/downgrades/e9a518baf14f4322ac243578a8e1391386ff030f/old.dbscheme
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,2 @@
|
||||
description: Remove uniqueness constraint from the uuid property
|
||||
compatibility: full
|
||||
@@ -703,7 +703,7 @@ usertype_final(unique int id: @usertype ref);
|
||||
|
||||
usertype_uuid(
|
||||
unique int id: @usertype ref,
|
||||
unique string uuid: string ref
|
||||
string uuid: string ref
|
||||
);
|
||||
|
||||
mangled_name(
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,2 @@
|
||||
description: Remove uniqueness constraint from the uuid property
|
||||
compatibility: full
|
||||
Reference in New Issue
Block a user