summary refs log tree commit diff stats
path: root/compiler/lineinfos.nim
Commit message (Collapse)AuthorAgeFilesLines
* VM profiler (#14833)Ico Doornekamp2020-07-091-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | * Crude VM profiler * Added --profileVM flag, refactoring * fixed FileLine hash * Use TLineInfo instead of own FileLine, updated formatting * Refactoring, moved PStackFrame to vmdefs for cleaner data structure * Moved vmprofiler to separate file * Simplified TLineInfo hash, use toFileLineCol for output * Hash * Moved profile data into Config, dump only once at end of run * Changed profile output header to show '#instr' instead of 'count' * Do not accumulate instrcount for non-top frames Co-authored-by: Ico Doornekamp <git@zevv.nl>
* Make unreachable code a warning instead of an error (#14816)Clyybber2020-06-291-2/+4
| | | | | | | * Make unreachable code a warning * Adapt test * Trigger CI
* init checks and 'out' parameters (#14521)Andreas Rumpf2020-06-231-1/+1
| | | | | | | | | | | * I don't care about observable stores * enforce explicit initializations * cleaner code for the stdlib * stdlib: use explicit initializations * make tests green * algorithm.nim: set result explicitly * remove out parameters and bring the PR into a mergable state * updated the changelog
* warn about observerable stores but don't prevent them for 1.2.2 ↵Andreas Rumpf2020-05-301-2/+6
| | | | [backport:1.2]; refs https://github.com/nim-lang/RFCs/issues/230 (#14510)
* make it easier to figure out how to debug issues (#14477)Timothee Cour2020-05-281-1/+11
|
* no more code duplication bw liMessage and rawMessage + several bug fixes ↵Timothee Cour2020-05-221-0/+6
| | | | | | | (#14415) * no more code duplication bw rawMessage and liMessage; fixes some bugs in rawMessage * all compiler messages work with hint:msgorigin
* change the [Processing] messages into dots (#14418)Andreas Rumpf2020-05-211-1/+1
| | | | | | | * change the [Processing] messages into dots * better implementation * maybe I should work on something else...
* no more guessing where compiler msgs came from (#14317)Timothee Cour2020-05-131-3/+5
|
* fix #14314 do not analyze importc procs for effects (#14319)Timothee Cour2020-05-121-2/+2
|
* Make unreachable else in case statements a warning instead of an error (#14190)Clyybber2020-05-021-2/+3
| | | | | * Fix #14019 by making trailing else a warning * Rename to UnreachableElse
* fixes #14052 [backport:1.2] (#14055)Andreas Rumpf2020-04-211-1/+2
|
* Turn some of the errors back into warningsZahary Karadjov2020-04-011-0/+6
|
* Turn the warning for uninitialized (result) variables into errorsZahary Karadjov2020-04-011-0/+2
|
* cycle breaker (#13593)Andreas Rumpf2020-03-191-1/+1
| | | | * cycle breaking as an alternative to cycle detection
* fix #13412 nim now recompiles for stdin input; SuccessX now configurable; ↵Timothee Cour2020-03-191-1/+1
| | | | | | can show whether it recompiled (#13506) * fix #13412 nim now recompiles for stdin input; SuccessX now indicates whether it recompiled
* new feature: --staticBoundChecks:on to enforce static array index checking ↵Andreas Rumpf2020-03-181-2/+5
| | | | (#10965)
* catchable defects (#13626)Andreas Rumpf2020-03-121-2/+5
| | | | | | | | | | * allow defects to be caught even for --exceptions:goto (WIP) * implemented the new --panics:on|off switch; refs https://github.com/nim-lang/RFCs/issues/180 * new implementation for integer overflow checking * produce a warning if a user-defined exception type inherits from Exception directly * applied Timothee's suggestions; improved the documentation and replace the term 'checked runtime check' by 'panic' * fixes #13627 * don't inherit from Exception directly
* `koch --nim:pathto/nim boot` and `koch boot --hint:cc:off` now work (#13516)Timothee Cour2020-03-111-1/+1
| | | | | * `koch boot --hint:cc:off` now works * `koch --nim:pathto/nim boot` now works; code cleanup
* make case-object transitions explicit, make unknownLineInfo a const, replace ↵Jasper Jenkins2020-01-171-6/+2
| | | | a few magic numbers with consts (#13170)
* successX now correctly shows html output for `nim doc`, `nim jsondoc`; fix ↵Timothee Cour2020-01-151-1/+1
| | | | | | | | #13121 (#13116) * successX now correctly shows html output for nim doc * fixes #13121 * fixup hintSuccessX to be less weird
* make SuccessX show project file + output file (#13043)Timothee Cour2020-01-081-1/+2
| | | | | | | * make SuccessX show project file + output file * address comments * fix test and add `result.err = reNimcCrash` otherwise hard to see where reNimcCrash used * address comments
* [easy] --hint:link:on now shows link cmd instead of nothing (#13056)Timothee Cour2020-01-071-1/+1
| | | | | | * --hint:link:on now shows link cmd instead of nothing * update doc for --listCmd
* ARC: implemented a simple cycle detectorAraq2019-11-281-2/+3
|
* Fix to the relevant path of the docs. (#12162)Benny Elgazar2019-09-101-1/+1
|
* bugfix: it should be [UnusedImport] [nobackport]Araq2019-07-191-2/+1
|
* warn about unused imports; fixes an 'export' regression [nobackport]Andreas Rumpf2019-07-181-3/+5
|
* [feature] detect unused importsAraq2019-07-171-2/+5
|
* better run [feature] (#11709)Andreas Rumpf2019-07-111-2/+4
| | | | | | | * track the checksums of all involved Nim files for smarter 'nim c -r' recompiles * don't recompile unless necessary for 'nim c -r' [feature] * [feature] koch boot uses a two step process in order to free the RAM before the GCC/Clang invocations * fixes a serious regression
* styleCheck: make the compiler and large parts of the stdlib compatible with ↵Araq2019-07-101-3/+3
| | | | --styleCheck:error
* nim styleChecker: implemented all the missing features (bugfix)Araq2019-07-101-1/+1
|
* Warn about object case transitions at compile time (#11378)genotrance2019-06-021-2/+3
|
* new compiler feature: --expandMacroAraq2019-05-291-2/+3
|
* remove shadow warning, fixes #10732 (#11039)Miran2019-04-171-4/+3
|
* Merge branch 'devel' into araq-quirky-exceptionsAndreas Rumpf2019-02-081-2/+2
|\
| * fix #9842 #9951: `nim -r` and parseopt.cmdLineRest are now correctTimothee Cour2019-01-141-1/+1
| |
| * Deprecate gc v2 (#10151)Neelesh Chandola2019-01-011-1/+1
| | | | | | | | | | | | * Deprecate gc v2 * warnDeprecated now has custom messages
* | --define:nimQuirky exception handling for Nim; in preparation of a blog postAndreas Rumpf2019-01-031-1/+1
|/
* Of operator in vm fixes [backport] (#9717)cooldome2018-11-151-2/+3
| | | | | | * fixes #9701 * fixes #9702 * optimize of statement to bool
* compiler: show name of instantiating context in error traces (#6763) (#9207)xzfc2018-10-111-1/+1
|
* compiler refactoring; use typesafe path handing; docgen: render symbols ↵Andreas Rumpf2018-09-071-4/+4
| | | | between modules
* fixes #5745Araq2018-09-031-0/+3
|
* WIP: disallow 'nil' for strings and seqsAndreas Rumpf2018-08-131-7/+7
|
* runnableExamples: keep (gitignored) generated foo_examples.nim for ↵Timothee Cour2018-08-071-3/+3
| | | | | | inspection even on success (#8544)
* add hintCC to optionally disable printing 'CC: filename' (#8479)Timothee Cour2018-08-011-2/+3
|
* fix #7405 and #8195 (#8198)Timothee Cour2018-07-161-26/+18
| | | | | | | | * fix #7405 and #8195 * control pushInfoContext in semExprNoType,genStmts via a new hintExtendedContext; make NotesVerbosity computation more DRY * addressed comments
* document how the incremental compilation scheme could workAndreas Rumpf2018-06-011-3/+3
|
* cleanup compiler/prettybase to not use redudant global variablesAndreas Rumpf2018-05-271-1/+2
|
* implements --hint[globalvar]:on switch for quickly finding global variablesAndreas Rumpf2018-05-271-3/+5
|
* remove more global variables in the Nim compilerAndreas Rumpf2018-05-271-0/+264