<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/108588>108588</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            FileCheck: allow matching float in epsilon range
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            enhancement,
            testing-tools
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          jprotze
      </td>
    </tr>
</table>

<pre>
    I'd like to extend the numeric substitution feature to support matching floating point values with an epsilon range. 
My initial idea is something like 
- `[[#.666+-1%,VALUE:]]` to match and capture any value within .666 +/- 1%. It would match .66 or .67, for example.
- `[[#.666+-.001,VALUE:]]` to match and capture any value within .666 +/- .001. It would match .6667, for example.
- `[[#%.5f,VALUE:]]` to capture, for example, 2.00000 and then use `[[#VALUE+-1%]]` to match anything between 1.98 and 2.02

Any suggestions for a different syntax of the capture expression? 
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJysk0uPozgQxz-NuZSCTPEIHDjksUgt7R537w4U4G5jI1x0kv30I5O0RtPqGc1hEOIl8-P3p6qU93qwRLXIjyI_R2rl0S3167w4_p-ii-vu9YvAfQdGvxGwA7ox2Q54JLDrRItuwa8Xz5pX1s5CT4rXZVvq13l2C8OkuB21HaA3TnG4mJ22DO_KrOThqnkEZYFmr42zsCg7UAxCnoU8_HMHbTVrZUB3pEB78G4i3nib02PdDkQhtxBHgWlcFIXA4y4RmAs8_Xf4-9-_RHoQ-TnshQx2mxUo20Gr5k1Z2fvDaVPSFgIGBB4FNjsIrBheGK5uNd3z9bgowC0QF3uBJ-jdAnRT02wo_pVWLGXyp7QC6yut3zMKmfL-Zy5Pg0-gcIuxDNvmySNZWD39AH7wPkrwVcD7o4YX4iuRhSSuyg2HscSH6uN4sHfw6zCQD_3lNxMFne57Wsgy-LtldQPXbz358dPoNi_kvXZWpA1EXZ12VVqpiOpkjwVmKLMsGuu-q9q8zLGTVHSYJERUlGWbl1mSteqSRbpGiZmskjTJM5mlcdkn-7asqkpmqmu7XGSSJqVNbMz7FLtliLT3K9WJLPOyjIy6kPHbeCGSHZVtaSLLAlHgSSByyGWHHTtnfHian6OlDrDdZR28yKTRnv13PGs2VDfa0Gmk9k2kB1DGuOunMQP9aaKidTH1yDz7UGZsBDaD5nG9xK2bBDbhA8_Tbl7cK7UssNnCeIHNM897jd8CAAD__xqRTFw">