Ondřej Čertík

Results 1679 comments of Ondřej Čertík

I think the Windows error is real: ``` 2024-07-01T07:20:14.9402464Z D:\a\lfortran\lfortran\lfortran-0.37.0-14-g19e16880f\src\libasr\..\libasr/pass/intrinsic_array_function_registry.h(1460): error C2146: syntax error: missing ')' before identifier 'or' 2024-07-01T07:20:15.3451530Z D:\a\lfortran\lfortran\lfortran-0.37.0-14-g19e16880f\src\libasr\..\libasr/pass/intrinsic_array_function_registry.h(1460): error C2143: syntax error: missing ';' before '{' ```

Awesome, thank you for this! I think spread creates a 2D array out of 1D. So we should test it in the test that it works this way.

Yes, the tests are fine, thanks!

```fortran program main implicit none integer, parameter :: N = 10 real :: x(N), y(N) x = 3 y = 4 !call f((x(:4)-y(:4))**2) call f(g(g(x(:4)-y(:4))**2)) !call f(g(x-y)+x) contains subroutine f(A)...

This fails in simplifier, but fails in master: ```fortran program main implicit none integer, parameter :: N = 10 real :: x(N), y(3) x = 3 y = (1+g(x(:3))) print...

Fails in simplifier, works in main: ``` program main implicit none integer, parameter :: N = 10 real :: x(N), y(3) x = 3 y = g(x(:3))+1 print *, y...

@czgdp1807 please submit a PR against the simplifier branch that can be merged.

Attaching assumptions to a symbol would also slow things down, so we can't do that. Rather, we have to improve `refine` and handle assumptions in a decoupled way.

The slow down comes from two places: * Dealing with assumptions in the core --- this is the biggest slow down, and having the assumptions available there "invites" it. *...

> When using symengine as a library, it's important to make the same symbol have assumptions attached to the symbol. Otherwise it'd be impossible to return a symbol with an...