This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
The testcase successfully compiles, but then fails to link because we've optimized away the declaration of the variable. We catch this in potential_constant_expression_1, but this path wasn't calling it. Fixed on trunk by always calling that function, not just in templates. With that change, I needed to adjust pce1 to not require that a variable be initialized yet, so that we can check it within the initializer. To avoid that causing some missed errors, decl_maybe_constant_var_p now considers the initializer if it is already known. Fixed on 7 branch more simply, by calling p_c_e from cxx_eval_constant_expression. Tested x86_64-pc-linux-gnu, applying to trunk and 7.
Attachment:
81073.diff
Description: Text document
Attachment:
81073-7.diff
Description: Text document
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |