2018-12-08 00:32:43 +08:00
// RUN: rm -rf %t && mkdir %t
// RUN: mkdir -p %t/ctudir
2019-10-19 08:08:17 +08:00
/ / RUN : % clang_cc1 - std = c + + 14 - triple x86_64 - pc - linux - gnu \
2018-12-08 00:32:43 +08:00
// RUN: -emit-pch -o %t/ctudir/ctu-other.cpp.ast %S/Inputs/ctu-other.cpp
[analyzer] On-demand parsing capability for CTU
Summary:
Introduce on-demand parsing of needed ASTs during CTU analysis.
The index-file format is extended, and analyzer-option CTUInvocationList
is added to specify the exact invocations needed to parse the needed
source-files.
Reviewers: martong, balazske, Szelethus, xazax.hun, whisperity
Reviewed By: martong, xazax.hun
Subscribers: gribozavr2, thakis, ASDenysPetrov, ormris, mgorny, whisperity, xazax.hun, baloghadamsoftware, szepet, rnkovacs, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, Charusso, steakhal, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D75665
2020-06-10 14:59:04 +08:00
// RUN: cp %S/Inputs/ctu-other.cpp.externalDefMap.ast-dump.txt %t/ctudir/externalDefMap.txt
2019-10-19 08:08:17 +08:00
/ / RUN : % clang_analyze_cc1 - std = c + + 14 - triple powerpc64 - montavista - linux - gnu \
2018-12-08 00:32:43 +08:00
/ / RUN : - analyzer - checker = core , debug . ExprInspection \
/ / RUN : - analyzer - config experimental - enable - naive - ctu - analysis = true \
/ / RUN : - analyzer - config ctu - dir = % t / ctudir \
/ / RUN : - Werror = ctu \
// RUN: -verify %s
// We expect an error in this file, but without a location.
// expected-error-re@./ctu-different-triples.cpp:*{{imported AST from {{.*}} had been generated for a different target, current: powerpc64-montavista-linux-gnu, imported: x86_64-pc-linux-gnu}}
int f ( int ) ;
int main ( ) {
return f ( 5 ) ;
}