Skip to content

Commit feafdff

Browse files
committed
Fix library-summary relocation with C++20 modules
1 parent 1f6735b commit feafdff

3 files changed

Lines changed: 16 additions & 11 deletions

File tree

lib/PhasarLLVM/DataFlow/IfdsIde/IfdsIde.cppm

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
module;
22

33
#include "phasar/PhasarLLVM/DataFlow/IfdsIde/DefaultAliasAwareIDEProblem.h"
4-
#include "phasar/PhasarLLVM/DataFlow/IfdsIde/LibCSummary.h"
54
#include "phasar/PhasarLLVM/DataFlow/IfdsIde/Problems/ExtendedTaintAnalysis/AbstractMemoryLocation.h"
65
#include "phasar/PhasarLLVM/DataFlow/IfdsIde/Problems/ExtendedTaintAnalysis/AbstractMemoryLocationFactory.h"
76
#include "phasar/PhasarLLVM/DataFlow/IfdsIde/Problems/ExtendedTaintAnalysis/AllSanitized.h"
@@ -106,7 +105,6 @@ using psr::JoinLatticeTraits;
106105
using psr::to_string;
107106
using psr::operator<<;
108107
using psr::CSTDFILEIOTypeStateDescription;
109-
using psr::getLibCSummary;
110108
using psr::IDETypeStateAnalysis;
111109
using psr::OpenSSLEVPKDFCTXDescription;
112110
using psr::OpenSSLEVPKDFCTXState;
@@ -125,15 +123,6 @@ export namespace std {
125123
using std::hash;
126124
} // namespace std
127125

128-
export namespace psr::library_summary {
129-
using psr::library_summary::DataFlowFact;
130-
using psr::library_summary::FunctionDataFlowFacts;
131-
using psr::library_summary::LLVMFunctionDataFlowFacts;
132-
using psr::library_summary::Parameter;
133-
using psr::library_summary::readFromFDFF;
134-
using psr::library_summary::ReturnValue;
135-
} // namespace psr::library_summary
136-
137126
export namespace llvm {
138127
using llvm::DenseMapInfo;
139128
} // namespace llvm

lib/PhasarLLVM/Utils/Utils.cppm

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ module;
55
#include "phasar/PhasarLLVM/Utils/DataFlowAnalysisType.h"
66
#include "phasar/PhasarLLVM/Utils/LLVMBasedContainerConfig.h"
77
#include "phasar/PhasarLLVM/Utils/LLVMCXXShorthands.h"
8+
#include "phasar/PhasarLLVM/Utils/LLVMFunctionDataFlowFacts.h"
89
#include "phasar/PhasarLLVM/Utils/LLVMIRToSrc.h"
910
#include "phasar/PhasarLLVM/Utils/LLVMShorthands.h"
1011
#include "phasar/PhasarLLVM/Utils/LLVMSourceManager.h"
@@ -74,3 +75,8 @@ using psr::SourceCodeInfo;
7475
using psr::SourceMgrPrinter;
7576
using psr::to_json;
7677
} // namespace psr
78+
79+
export namespace psr::library_summary {
80+
using psr::library_summary::LLVMFunctionDataFlowFacts;
81+
using psr::library_summary::readFromFDFF;
82+
} // namespace psr::library_summary

lib/Utils/Utils.cppm

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,13 @@ module;
2020
#include "phasar/Utils/EnumFlags.h"
2121
#include "phasar/Utils/EquivalenceClassMap.h"
2222
#include "phasar/Utils/ErrorHandling.h"
23+
#include "phasar/Utils/FunctionDataFlowFacts.h"
2324
#include "phasar/Utils/GraphTraits.h"
2425
#include "phasar/Utils/IO.h"
2526
#include "phasar/Utils/InitPhasar.h"
2627
#include "phasar/Utils/IotaIterator.h"
2728
#include "phasar/Utils/JoinLattice.h"
29+
#include "phasar/Utils/LibCSummary.h"
2830
#include "phasar/Utils/Macros.h"
2931
#include "phasar/Utils/MaybeUniquePtr.h"
3032
#include "phasar/Utils/NullAnalysisPrinter.h"
@@ -168,6 +170,7 @@ using psr::DummyUnorderedTable1d;
168170
using psr::ElementType;
169171
using psr::FalseFn;
170172
using psr::forward_like;
173+
using psr::getLibCSummary;
171174
using psr::has_adl_to_string_v;
172175
using psr::has_erase_iterator_v;
173176
using psr::has_getAsJson;
@@ -221,3 +224,10 @@ using psr::UnorderedTable1d;
221224
using psr::variant_idx;
222225

223226
} // namespace psr
227+
228+
export namespace psr::library_summary {
229+
using psr::library_summary::DataFlowFact;
230+
using psr::library_summary::FunctionDataFlowFacts;
231+
using psr::library_summary::Parameter;
232+
using psr::library_summary::ReturnValue;
233+
} // namespace psr::library_summary

0 commit comments

Comments
 (0)