-
Notifications
You must be signed in to change notification settings - Fork 462
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Roundhouse Cleanup 02 #2768
Roundhouse Cleanup 02 #2768
Conversation
Also adds missing expression type
Note: we may should keep an eye out for performance regressions due to missing inline opportunities for the compiler. But I think we should not pre-optimize and have everything implemented in the header files. Only once we can prove that certain implementations really profit from being in the headers. This split should also slightly improve compile time since the compiler does not have to parse the heavy headers for every compile unit and we could still provide a "unified compile unit" (where all sources/headers are included in one big compile unit, IMO there was some discussion a few years ago about this...). |
OK, seems this does produce quite a few clang warnings ... time to fire up my linux VM 😔 |
639596e
to
c91fffd
Compare
Hopefully clang and MSVC are happy now ... waiting for CI ... |
src/ast_sel_cmp.cpp
Outdated
return ns() < rhs.ns(); | ||
} | ||
|
||
bool Compound_Selector::operator== (const Compound_Selector& rhs) const |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like this reverted 2a4935c
I wonder if there are others
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It might be possible that due to the rebase it will come in a later PR (I remember that I manually re-added this change to some commit). But thx for checking, I will check myself again
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Those previous changes should be part of this PR now too!
Does |
Wasn't this spec test already merged/activated!? |
Well, |
|
Ah, I haven't pulled from there for a while! |
There is one test: $ cd sassc; msbuild .\win\sassc.sln /p:Platform=Win32 /p:Configuration=Debug /m:4; cd ..
$ ruby sass-spec/sass-spec.rb -V 3.5 --probe-todo --impl libsass -c sassc\bin\sassc.exe sass-spec/spec
...
The following tests pass but were marked as TODO for libsass:
sass-spec/spec/core_functions/color/hsla/error/one_arg |
Did this also show up on CI? Btw. once you pointed out the missing change from you, I saw how I can reuse OrderNodes for |
Split compare and unify also into own units.
c91fffd
to
bfb02ef
Compare
@xzyfer any objections to move this forward? |
It's too big of a change for me to comment on without context. Feel free to proceed when you and @glebm are confident. 👍 |
Rebased some cleanup refactorings I had laying around for over half a year now.
Should not change any functionality. Splitting AST into different compile units should
reduce RAM pressure when compiling (e.g. some people reported issues when compiling
libsass on memory restricted environments). @glebm it might be possible that I regressed
some clang warning you've fixed, I'll keep an eye on it once CI results come back.
Further PRs will follow shortly ...