From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15663 invoked by alias); 4 Jan 2017 02:41:34 -0000 Mailing-List: contact kawa-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: kawa-owner@sourceware.org Received: (qmail 15639 invoked by uid 89); 4 Jan 2017 02:41:32 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=ham version=3.3.2 spammy=again!, H*Ad:U*kawa X-HELO: mail-qt0-f170.google.com Received: from mail-qt0-f170.google.com (HELO mail-qt0-f170.google.com) (209.85.216.170) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 04 Jan 2017 02:41:31 +0000 Received: by mail-qt0-f170.google.com with SMTP id c47so479908952qtc.2 for ; Tue, 03 Jan 2017 18:41:30 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=EVXhGnB8D2o9SsC/hsl5/uzkJ88yS4e3Pucrh+9lYzY=; b=UNna61GyJI+luGLev1pqiOfhXOXxFR58v/4DEN3Ud/fFW5LTDqZdPiDVk/ryki98GF ueDLEpol/hF9Hs5poKWFn+tyOXNzQ9FO2vWj+B9m72RkuctXPwryP0HAUlwYKMaqyopk IJccmuJU3lELTdPCRWxTg77IfAqGbzqx71Wu2admoKrTEY631EuXbq00Q+SpErCSLbqQ gb28L9qz/DhoX7egQ9JtzOjjNg9RMcfO879LOkmyiutB6fADpqUMltuVUY1ppTBFeG9y VXodjhM/Btk8p8SiBZAcpXr0YonP3GZOJoxqmPoufTQiu/jxrWSsBapFPgCtgiB7QZP6 QdVw== X-Gm-Message-State: AIkVDXLlQkpxcIaCrepmi9WTsgMaWNSediTElrKKQ6TcPdA6WtD/4oYcHhiss7xQ6xcJTfQn7E6zvk/cVyQ8MA== X-Received: by 10.200.1.78 with SMTP id f14mr729133qtg.241.1483497689379; Tue, 03 Jan 2017 18:41:29 -0800 (PST) MIME-Version: 1.0 Received: by 10.140.88.243 with HTTP; Tue, 3 Jan 2017 18:40:48 -0800 (PST) In-Reply-To: References: From: Duncan Mak Date: Wed, 04 Jan 2017 02:41:00 -0000 Message-ID: Subject: Re: Using environment-bound? in macro definitions To: Per Bothner Cc: kawa mailing list Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2017-q1/txt/msg00009.txt.bz2 Hello Per, I just noticed that if I put my macros inside a R7RS define-library, then it get these warnings: (define-library (foo) (export define-foo define-bar) (import (kawa base) (kawa lib syntax)) (begin (define-for-syntax known (list)) (define-syntax define-foo (lambda (stx) (syntax-case stx () ((define-foo a) (begin (set! known (cons (list #'a 0) known)) #'(define a (list))))))) (define-syntax define-bar (lambda (stx) (syntax-case stx () ((define-bar a n) (identifier? #'a) (if (assoc #'a known) #'(set! a (cons n a)) #'(begin (define-foo a) (set! a (cons (list n 0) a)))))))))) (import (foo) (srfi 64)) (test-begin "t") (define-foo x) (test-equal '() x) (define-bar x 1) (test-equal '(1) x) (test-end) $ kawa test.scm test.scm:13:14: warning - no declaration seen for known test.scm:13:45: warning - no declaration seen for known test.scm:21:27: warning - no declaration seen for known %%%% Starting test t (Writing full log to "t.log") # of expected passes 2 It'd be nice if there's a way to not have warnings show up. Thanks again! Duncan.