micro improvements (#15849)
This commit is contained in:
parent
9455a0c3e3
commit
3aab6a409d
2 changed files with 3 additions and 2 deletions
|
|
@ -522,7 +522,7 @@ a form of copy elision.
|
|||
|
||||
To see how and when we can do that, think about this question: In `dest = src` when
|
||||
do we really have to *materialize* the full copy? - Only if `dest` or `src` are mutated
|
||||
afterward. If `dest` is a local variable that is simple to analyze. And if `src` is a
|
||||
afterwards. If `dest` is a local variable that is simple to analyze. And if `src` is a
|
||||
location derived from a formal parameter, we also know it is not mutated! In other
|
||||
words, we do a compile-time copy-on-write analysis.
|
||||
|
||||
|
|
|
|||
|
|
@ -554,7 +554,8 @@ proc nimFrame(s: PFrame) {.compilerRtl, inl, raises: [].} =
|
|||
|
||||
when defined(cpp) and appType != "lib" and not gotoBasedExceptions and
|
||||
not defined(js) and not defined(nimscript) and
|
||||
hostOS != "standalone" and hostOS != "any" and not defined(noCppExceptions):
|
||||
hostOS != "standalone" and hostOS != "any" and not defined(noCppExceptions) and
|
||||
not defined(nimQuirky):
|
||||
|
||||
type
|
||||
StdException {.importcpp: "std::exception", header: "<exception>".} = object
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue