diff options
author | Ludovic Courtès <ludo@gnu.org> | 2018-07-24 11:53:02 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2018-07-24 11:53:02 +0200 |
commit | bdcd0ba8a71af24f0b64d7acac3130d8f541d26c (patch) | |
tree | 0572036c6c54310b1ea301e8a88229c5e7bd7cbb /module/system | |
parent | 741c45458da0831a12a4f8d729814bf9f2cb6571 (diff) | |
download | guile-bdcd0ba8a71af24f0b64d7acac3130d8f541d26c.tar.gz |
Add -Wshadowed-toplevel.
* module/language/tree-il/analyze.scm (shadowed-toplevel-analysis): New
variable.
* module/language/tree-il/compile-cps.scm (%warning-passes): Add it.
* module/system/base/message.scm (%warning-types): Add it.
* test-suite/tests/tree-il.test ("warnings")["shadowed-toplevel"]: New
test prefix.
* module/ice-9/boot-9.scm (%auto-compilation-options): Add it.
* doc/ref/api-evaluation.texi (Compilation): Add 'shadowed-toplevel' and
'macro-use-before-definition'.
Diffstat (limited to 'module/system')
-rw-r--r-- | module/system/base/message.scm | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/module/system/base/message.scm b/module/system/base/message.scm index 979291c1e..8559a8568 100644 --- a/module/system/base/message.scm +++ b/module/system/base/message.scm @@ -1,6 +1,6 @@ ;;; User interface messages -;; Copyright (C) 2009, 2010, 2011, 2012 Free Software Foundation, Inc. +;; Copyright (C) 2009, 2010, 2011, 2012, 2018 Free Software Foundation, Inc. ;;; This library is free software; you can redistribute it and/or ;;; modify it under the terms of the GNU Lesser General Public @@ -109,6 +109,13 @@ (emit port "~A: warning: possibly unused local top-level variable `~A'~%" loc name))) + (shadowed-toplevel + "report shadowed top-level variables" + ,(lambda (port loc name previous-loc) + (emit port "~A: warning: shadows previous definition of `~A' at ~A~%" + loc name + (location-string previous-loc)))) + (unbound-variable "report possibly unbound variables" ,(lambda (port loc name) |