[clang] [clang] fix serialization of SubstNonTypeTemplateParmExpr (PR #134560)
via cfe-commits
cfe-commits at lists.llvm.org
Fri Apr 11 11:34:48 PDT 2025
eaeltsin wrote:
Dumping pcm files that occasionally differ, we always get the same diff:
```
< <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=25165824 op1=56 op2=360777253048 op3=3 op4=21560934252/>
---
> <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=8388608 op1=56 op2=360777253048 op3=3 op4=21560934252/>
66200c66200
< <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=25165824 op1=56 op2=360777253048 op3=2 op4=21560934252/>
---
> <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=8388608 op1=56 op2=360777253048 op3=2 op4=21560934252/>
66205c66205
< <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=25165824 op1=56 op2=360777253048 op3=1 op4=21560934252/>
---
> <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=8388608 op1=56 op2=360777253048 op3=1 op4=21560934252/>
66223c66223
< <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=25165824 op1=56 op2=360777253048 op3=3 op4=21560934252/>
---
> <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=8388608 op1=56 op2=360777253048 op3=3 op4=21560934252/>
66228c66228
< <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=25165824 op1=56 op2=360777253048 op3=2 op4=21560934252/>
---
> <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=8388608 op1=56 op2=360777253048 op3=2 op4=21560934252/>
66233c66233
< <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=25165824 op1=56 op2=360777253048 op3=1 op4=21560934252/>
---
> <EXPR_SUBST_NON_TYPE_TEMPLATE_PARM op0=8388608 op1=56 op2=360777253048 op3=1 op4=21560934252/>
```
so `op0` non-deterministically changes between `25165824` and `8388608`
https://github.com/llvm/llvm-project/pull/134560
More information about the cfe-commits
mailing list