From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x42f.google.com (mail-wr1-x42f.google.com [IPv6:2a00:1450:4864:20::42f]) by sourceware.org (Postfix) with ESMTPS id E22FE3858D1E for ; Sun, 19 May 2024 15:51:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E22FE3858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org E22FE3858D1E Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::42f ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716133919; cv=none; b=SXTEhsDlSLumIqsFWK4fcKZocww6/B0LHKPme8BYEADMQKJbG2/UW3PK+PAeeyPjiKgxWqk6ra79ZQB+tUA7dhEc7WE1vDM1QELuwCGeHUGSVeZ5ZaHoeQN3CrXQvYW3idBneMYMvqI895q8ThBAEonyvo7mGF4kqDZujpW/bt8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1716133919; c=relaxed/simple; bh=9kefvx0G6llbglIPYvkpbc7XKfC/i+yyLsUGHUmbZBg=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=wrbRzjj/fz/QVZ4+3ZM6lCAS/oqw1j2jVmdyBpeTOiMmcOnZibYFIb4/dVPYxlnSR9LmhH9wEtkvHc4cm739fejYrkIbeY08ect0YKqEgoPDWtFra8A8DN6oSZ8xNtyxrI//asizJI9BBFjj83Xyjz60lgeEbpIcFKGHU2/vaLA= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wr1-x42f.google.com with SMTP id ffacd0b85a97d-352129e3c8eso1685762f8f.2 for ; Sun, 19 May 2024 08:51:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1716133916; x=1716738716; darn=gcc.gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=t2q8LlbffUPmY6BaH3Hz0BKAlE3loFA2h1UKV2ItL9A=; b=SztD9Uhx5JyuiNlsMbbJr21EY8iDN7ZJUn2NHI4d2X9fh6HZyDensd8XidtlXbrel5 +7oGK8Y4pWgp+aPxE2HmPRGuhMJFsr2lH0RTTkSKR4rllNfV61XNmNNdjqIDQQ4n8uip 65MFam1T8ebFg6LjlfMvxAaupc+9IDsMTHIoxTBUcyoeUNfUeey5TkSvkKDumjb7C2bc 83lUQY2osUCjsoGs5lK6Esn7RNSnsVmdRqn6lEAMvElrhNu33d7QQ1TrJNIcVPWRmfs7 Xohc+XjCpshq7q5Obhu6VnhjX6TxDryYCo+5xvC5BMIYIR0HryqK3l6KBi6glY9V2b8Y jGvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716133916; x=1716738716; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=t2q8LlbffUPmY6BaH3Hz0BKAlE3loFA2h1UKV2ItL9A=; b=VkMva3mcHt3LIYEIlkI5cLZVB05QijwHh8sDquCsNIib8c3C/KPeAhaFXktBWaQ8zr UhG/yXd4vGgmBPsnON9gsFnwLzXSs3EILatS7qSygRaKV8EjCfvjy+JoW7CdLlYlaIGj XJCTmRcRKk2pzBwGIKNwy+M1mEa02arix4FsrTTXuF0IpUDIfgsAWN5K+88OcvnyUYe0 BCPsfWN3VIXhYsTNaYKYiHU7DKR/p5S+judcrW4lnFFh41FjhvaRs8PnNh6O6DJrVDON rDdmpARvkXNeEEUD9kBIwVySMZgpbVEhYuAlsIs0B1tpslEaF7I8lQrSmkZhm0avnZUQ cToQ== X-Gm-Message-State: AOJu0YyWLzumSruf/Vz0Fbt4dZev1cHZS3m8R2VJHyjkERhAavwnRUzz kMfwvu+gYXzcgkaGs7Oa72gzdiPd3EVgQB7yeV4P4kxEaXdxRiGjeWDbFBJZbEeGeGyuKywbZlX qAx9vTN5Pl0Vute5PCi3pxV5t5RYsLz7S X-Google-Smtp-Source: AGHT+IFO/e+leK6Nlt2vV33kMmF36LClugIZEkYAYwSoz7pTwG9FylImb7/WEuraGdkWs/kHjNroY51m2L9idxE5S6M= X-Received: by 2002:adf:e489:0:b0:34d:b605:ec68 with SMTP id ffacd0b85a97d-3504a73778emr22221200f8f.17.1716133915857; Sun, 19 May 2024 08:51:55 -0700 (PDT) MIME-Version: 1.0 From: Massimiliano Cialdi Date: Sun, 19 May 2024 17:51:44 +0200 Message-ID: Subject: how to build __builtin_va_arg_pack() example To: gcc-help Content-Type: multipart/alternative; boundary="000000000000711c3e0618d09024" X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --000000000000711c3e0618d09024 Content-Type: text/plain; charset="UTF-8" hello, I wanted to try to learn a little bit more about these builtins ( https://gcc.gnu.org/onlinedocs/gcc-13.2.0/gcc/Constructing-Calls.html#index-_005f_005fbuiltin_005fva_005farg_005fpack ) I tried to compile a small example, embedding the one from the documentation: #include extern int myprintf(FILE *f, const char *format, ...); extern inline __attribute__((__gnu_inline__)) int myprintf(FILE *f, const char *format, ...) { int r = fprintf(f, "myprintf: "); if (r < 0) return r; int s = fprintf(f, format, __builtin_va_arg_pack()); if (s < 0) return s; return r + s; } int main() { myprintf(stdout, "ciao %d\n", 10); return 0; } I try to build with: $ gcc -std=gnu2x -Wall test1.c -o test1 /usr/bin/ld: /tmp/ccrAlevM.o: in function `main': test1.c:(.text+0x27): undefined reference to `myprintf' collect2: error: ld returned 1 exit status make: *** [makefile:88: test1] Error 1 Where am I going wrong? regards Max -- Et nunc, auxilium solis, vincam! Oppugnatio solaris! VIS! Massimiliano Cialdi --000000000000711c3e0618d09024--