#1595: Is {{{*)}}} allowed as upper boundary for a parameter range? -----------------------+---------------------------------------------------- Reporter: eschnett | Owner: Type: defect | Status: review Priority: minor | Milestone: Component: Cactus | Version: development version Resolution: | Keywords: -----------------------+---------------------------------------------------- Changes (by rhaas):
* status: new => review
Comment:
Likely due to a space in the corresponding param.ccl range. Perl most likely just strips the spaces when doing a regex match, but the Cactus code in Util_DoubleInRange does not allow for spaces between the ":" and the ranges. For actual numbers that does not matters since strtod strips off the leading spaces.
Hmm, turns out that the perl code only checks ranges for integer parameters. The attached patch makes perl reject incorrectly formed CCTK_REAL ranges.
This break all Kranc generated thorns that (incorrectly) use {{{"*:*"}}} (incl. the double quotes) as range.
This breaks all thorns that use "(*" or "*)" as upper/lower range.
There is also a variety of empty ranges, ranges that include a comma and square brackets (the later is actually accepted by the C code but not documented). :-)
All of these are not allowed for integer parameters right now.