Project

General

Profile

Actions

Bug #9346

closed

Remove "-include" options after second stage

Added by Evgeny Novikov over 5 years ago. Updated almost 5 years ago.

Status:
Closed
Priority:
Urgent
Category:
Core
Start date:
10/25/2018
Due date:
% Done:

0%

Estimated time:
Detected in build:
svn
Platform:
Published in build:

Description

It seems that after switching to GCC 7.3.0 we have the following issue. Options "-include" forces a preprocessor to always include corresponding headers at the beginning of source files. So they are included at the second stage first and then at all other stages as well. Sometimes when there just defines in included headers this does not hurt anybody. But, say, in Linux 4.15 there are type definitions that cause redefinition errors and failures in 100% of cases.

Header protecting macros do not help in this case as input files at third and following stages are already preprocessed. Also, option "-x cpp-output" and new option "-fpreprocessed" do not help (most likely the first one helped when Aspectator was based on GCC 4.6). Thus we need to remove all "-include" options after second stage. I hope that other preprocessor options can not break anything.


Related issues 1 (0 open1 closed)

Has duplicate C Instrumentation Framework - Bug #9372: "cif" failed: redefinition of ‘struct ftrace_branch_data’ for net/xfrm/xfrm_user.koRejected11/08/2018

Actions
Actions

Also available in: Atom PDF