From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id oGNJMBZjRmTjfgAASxT56A (envelope-from ) for ; Mon, 24 Apr 2023 13:08:06 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id QGFMMBZjRmTjCwEA9RJhRA (envelope-from ) for ; Mon, 24 Apr 2023 13:08:06 +0200 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 308FA822E for ; Mon, 24 Apr 2023 13:08:06 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pqu2O-0000mG-BC; Mon, 24 Apr 2023 07:07:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pqdDO-0007CR-78 for emacs-orgmode@gnu.org; Sun, 23 Apr 2023 13:09:30 -0400 Received: from sonic307-54.consmr.mail.ir2.yahoo.com ([87.248.110.31]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pqdDJ-0003GC-9x for emacs-orgmode@gnu.org; Sun, 23 Apr 2023 13:09:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.fr; s=s2048; t=1682269759; bh=l6ykePc2CV4do5tZJAq3rfE4V/f80XRkIeDDgYNdiDA=; h=Date:From:To:Subject:References:From:Subject:Reply-To; b=gESS/ANA3+R6MxnFfPhDH673ovBBGhXvUiEEyWWodNDxGDLmmAIz5YCFlKFKlw6Umk04x4DnJiajxXvWoGm+AjkYfMyuyKH10fCoytaL+qbPNnpHkZYwbywRlfNHcMhe9HfqSTRFGTASIwSwEEXCFgTbikxVymel5Ld0rCiNo0I3KcjjEDj2voRqUh00c3to/2NvJkCEKmp/2HjhgZXZ7tWqFBXo+Q8F8Z6QLuc1hsMbEnr6mRKk8As8nAUbH0HN3hSbl5tJfA7fDvRoQcweiKjzPsX0st8R2Wu/6BT2KzaAAfLD73rUk6+yStyZvP2yy2WNfQuoSRgI5iJ8Ymo9Aw== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1682269759; bh=En3Ccana4NNxHXN4dxCjCTLCV2HPFIeand1E1yIBa13=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=ROf+Wt5j3Aqc/Zk/6rM524BxG5DwOgxR8Oney4Re9LNNxvruTxf6v+gRKRNZdLWk1KfVbVofLfxCrri+m70H4mVV1uG527Knc/K5vAm7tw/mknyIpTtlZiBEFFeFw8Pbq6ciEruxBE9hErmPKWAL+26efgjAgrx67zxiLFU/9Ees2l85SfdyPa6SeAJK4e/wnJgor7n69wU1foX9VCmeTPl868WdSfgd7edJb8yNeul1tjft7x5KUjLxkQ3PtueKJKFQsxeifiY3BYqBDWm8JYgvfQsyfTcWouLx7Ym/0R1zZFBKwLig8Hk07KR5De+ikiBiKpLNYIiP3V8ANujSIA== X-YMail-OSG: olWpgysVM1k9bUhh8Ozbwhqx8Ty46tnN7HEcHRaVOoc4HsGvQWGtSIPZYyM71hr nydttVHbjwqDK5lWcVM2gzTaFE59UKTSdL2ajWWuLtfYp_JlMh.npa8G70OjL72KivvURK68vTu8 VUd2q1Oh8ojCaLpkPvzqqIJI3FM.nKbYKdNVBWRygJQaZ6zRZnmjjoSEKQDImTShd6XCLCcel0BA .0AT1t.UnoZYiy8RhkIw7HOrGRikZ3I2IF0DseAfgV._TS_Ck_bJNO3OO7omxNpx3c_QzPVyNz.d JUCAVnYb0YVk2QHY73KeiZ0Vg5JvXf.sJTu_B9pqAR8J5SHOT2FKXmpBO6Ct6HcrBRVBBMPI7Pe6 HvBXQ.QVn3fgGWOG0NKlATqAgoSgm0SjBTm0x7Z.z_ogazXN_y7RgmYjvUR81iW6GqOJPAMhVIBC LnKZGc_38ypzbxXDpFQ5sq.is4h9yfzhnsmZf10BfVWPWGB0b2iNR5pBX5F9D_8XNt70i5say.1i pr4Q9830vHboe5HSJd1ciRquJE4roH2FvnH8AHmmfnyJkZ4wRTYyOymmoFHIdkvhaOVUIFr6JnHF WyV2wzOe1jhUDJOd9mdEMG3iZcxyir2V5Ur4iOEdpEWi2eQWyQUltZZ2EADC7TDIN.3y5IwFnxkG 37nbKreYR2GARFI4jwh1NHbA5GMMjAbXVb4l97OZvbcrr_nLXPII4_QL55Ka2KOr2ccPC59k2hMG UYELwJaDnIgI3_dbE94rp09_6rvjizo.LYSzakvfgmwIeSdqeu0aPFLDvsiR8PPHluvE5INdgJvx wtp3ApxXMGS6nOmmNbi7yDX_CwM7s92JwWK2tTkvwkxDYBnfnZ.fF7YHt.v0Mjk8ASSBCNXIFxNo bNVOBEjV3PIuFtfe3tzI6BeE.7seSrFt.yIs01t7A7lOT88AbUc8TIdc9Bxcm1vpa5yHFTmPA62n w_xGQVsKI7pR2UfNxPMYa3HxaqXUygqzjVUdpaZq7VztpsdnzyPT1B1xBxw.P_iUvLRQtXBcBlmq OapX27QNRheD9lpIS4ED.zIxXTxCeULZvwrnKaGsycEwPFjVUDdwBeT07x6NSLN8UfO.EyEdxyBN yAnRCNiPN0g.mpHfcj3zJ2Y6uIRE.ATs9WBnsyBhpiK_TUYnxeTLVmJTTur904sTPpee5iEXSxQg 62tsgdVVVvfeyW3e.IQFZXDqh.RCl3XpaIka11OGa_T3LG9psIgMI.ZtfDeSYeW4d1gC_XpCB6_h fG5BF8Y132Wtkd5AZNTomWgLrsDxAZlPgjuk6GP7KcNVanjvtI2aF7QP.LltZryivFq8W1STuhkn R8guR7xBkWLHE5Nhu8HSJNGhok5FZ24PqAeuHSDkr15OCmXfNb8y4bVxvvyQf4wvbqMsZQ2eUoL7 Kgz0iPLxb4.3cDbDVCr3_uAKFmtKD0SE5QqQcQbVFjEb02qMsgTt3AS7u.8Ghzpps.QTOqwQe4JE V6PdO3vkS8FeLV2lBMuWKKqDlMLU3B67kGSV6rwIaxk716.EjT3iORJUJna4cggfC7X1M9H9qEWJ OAz2u_RxXMUwGMOnMCm0zXJHX6NRNT2Z9BAo.UuWg29_EFojZZQIFRgYNFaXJRF4M6WC0nsPAMYj lrR0w4qvRwMABZMBsnavr5DjiLjaJvqAsUp8XR_tW2KE5VwHTcUrd9FVrYEY9Cs4dbEpAGzSq0UC YZXmIzqWXDsjQwPuevB4JM4z6HFGeFZXa0GzRNRuL6qj7.uVsmdyaZ9KHNjdR.3jmNvALXLPZnZb WEMIrxSzamxYb1mDgGUbEp76lpehY9sdtGlRmGKa.FGi6xJ8ZdSChGyv.LPKLUbube2rHVvuPUaJ hSFeT6EvIVJmmqfy_ySkCg5b3XWroRZZv1T0J5AETaL4dyi.FDiN2rdTVzOy3B7uw.VC22x8I_gC cSltjGfesFRbaIC9avN8URIH3lkKXSwOxYjzh4Avks3R_1AslNb9wLKmBylLQMfw_7bx0aGff01U 1VTYl3av6Vh3Dxkktz_la8xHResvWlYhh..tmtGhAOitwme_a1IAsD4e7CuLpbLF5GDIpM6tZURf IiQqwAcVTtLWA9E1YwskeOPgSDXyKRIHyJxl4BEuDcTJeuTVRFEXjqEe2O4G1KN7xPUsI0nmNefB iDx_Hzu0y4hVmEX4OkCuECt5gKXXPfzZOAzf994B1Gg3w1H5sPkFRd2yGZ.7UoTUhgJenAeSEXdI 7F1M- X-Sonic-MF: X-Sonic-ID: a7d6e04c-26cb-4066-b96d-31f98c64fe64 Received: from sonic.gate.mail.ne1.yahoo.com by sonic307.consmr.mail.ir2.yahoo.com with HTTP; Sun, 23 Apr 2023 17:09:19 +0000 Date: Sun, 23 Apr 2023 17:09:18 +0000 (UTC) From: Pierre-Henri Trivier To: "emacs-orgmode@gnu.org" Message-ID: <1513516023.10763084.1682269758814@mail.yahoo.com> Subject: [BUG] Unable to detangle code with noweb comments [9.6.1 (9.6.1-??-fe92a3c @ /home/phtrivier/.emacs.d/.local/straight/build-28.1/org/)] MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_Part_10763083_1251396035.1682269758813" References: <1513516023.10763084.1682269758814.ref@mail.yahoo.com> X-Mailer: WebService/1.1.21365 YMailNorrin Received-SPF: pass client-ip=87.248.110.31; envelope-from=phtrivier@yahoo.fr; helo=sonic307-54.consmr.mail.ir2.yahoo.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Mon, 24 Apr 2023 07:06:53 -0400 X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Seal: i=1; s=key1; d=yhetil.org; t=1682334486; a=rsa-sha256; cv=none; b=StPu0FqRv/G8RS/r/2vXlkCntnL3Oq6qYr3Q5MURgZ4BTmwMsy0jpSMx/+C8TINyWrVeLq LZ3eUiyEu3+6CctMR8CXtoBfEz9dSEembOTOfZaQCbEEsxkciuaFgQDb8goM2iCdyb/Cr9 Iqs67cNCFJ8nHfBQo2cq5m60S7Qnn5qhJObAy7UAlt35jiq1LsBrcflgZddaga+npgPKvH 0JxANU8UL9/4IlWg/3xr+JBA9123BPExZ3FmjvqNATk5g11WHQKL8S9T6rYJOVzU8PiLGN BcXciQgQl7V3Ci+KjdsGpn5a6WwWXIKUs4NiVql3WTo4+K1UnQbIzSMkg+1TeA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=yahoo.fr header.s=s2048 header.b="gESS/ANA"; dmarc=pass (policy=reject) header.from=yahoo.fr; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1682334486; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=l6ykePc2CV4do5tZJAq3rfE4V/f80XRkIeDDgYNdiDA=; b=YflwOaAk8gGIVlq4co5awAF+isXeIiTrTirRaZX2qkJKmDjYIgEwXM09hFAAVQJv+YhdHF 3+0KfePumPvf7n0AtCE+OWKZpA278Abl0aq4d3FpAERpEfcxk04m3MXxvy9s9WTYup6I7k M5hI5YWzAfruURF3WDzr3FKkG1J6z7iWQv1Iq7EVlzSU7UoXIHBqtsIj5HQCqITd5gCP7d BvkYVeOff0zUsEiMo29aLGMVWB+bRujDW3FMoG6ot0jETXDO4Kh5zEJnCKuPHTJro+cogZ rSJvDzLTobr1N1Q2cYia6ewdVBDzJpvpPLFV+1cLLflPPmW2S3HgLRKRthRurA== X-Migadu-Scanner: scn1.migadu.com Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=yahoo.fr header.s=s2048 header.b="gESS/ANA"; dmarc=pass (policy=reject) header.from=yahoo.fr; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -6.49 X-Spam-Score: -6.49 X-Migadu-Queue-Id: 308FA822E X-TUID: HLyCUN2HSjfO ------=_Part_10763083_1251396035.1682269758813 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable I'm using an org file like this one: =C2=A0=C2=A0=C2=A0 * Simu =C2=A0=C2=A0=C2=A0 `simu` is a program to simulate counting up to a certain= number. =C2=A0=C2=A0=C2=A0 The program has two main parts: =C2=A0=C2=A0=C2=A0 ** Gathering input =C2=A0=C2=A0=C2=A0 We simply get the first parameter, panicking if there is= nothing specified. =C2=A0=C2=A0=C2=A0 #+name: gather-input =C2=A0=C2=A0=C2=A0 #+begin_src rust :noweb yes :comments noweb =C2=A0=C2=A0=C2=A0 let args: Vec =3D env::args().collect(); =C2=A0=C2=A0=C2=A0 if args.len() < 2 { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 panic!("No argument provided"); =C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0 <> =C2=A0=C2=A0=C2=A0 #+end_src =C2=A0=C2=A0=C2=A0 This uses the `env` package, so we should add it: =C2=A0=C2=A0=C2=A0 #+name: imports =C2=A0=C2=A0=C2=A0 #+begin_src rust :noweb yes :comments link =C2=A0=C2=A0=C2=A0 use std::env; =C2=A0=C2=A0=C2=A0 #+end_src =C2=A0=C2=A0=C2=A0 The input is provided as a string, so we need to parse, = and report error if it fails. =C2=A0=C2=A0=C2=A0 #+name: parse-input =C2=A0=C2=A0=C2=A0 #+begin_src rust :noweb yes :comments link =C2=A0=C2=A0=C2=A0 let count =3D args[1].parse::().unwrap(); =C2=A0=C2=A0=C2=A0 #+end_src =C2=A0=C2=A0=C2=A0 ** Counting up to the number =C2=A0=C2=A0=C2=A0 The loop is pretty straigforward: =C2=A0=C2=A0=C2=A0 #+name: count =C2=A0=C2=A0=C2=A0 #+begin_src rust :noweb yes :comments noweb =C2=A0=C2=A0=C2=A0 let mut i =3D 0; =C2=A0=C2=A0=C2=A0 while i < count { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 <> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 i =3D i+1; =C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0 #+end_src =C2=A0=C2=A0=C2=A0 Displaying the counter is a matter of presentation: =C2=A0=C2=A0=C2=A0 #+name: print-current-number =C2=A0=C2=A0=C2=A0 #+begin_src rust :noweb yes :comments link =C2=A0=C2=A0=C2=A0 println!("Current number is {}", i); =C2=A0=C2=A0=C2=A0 #+end_src =C2=A0=C2=A0=C2=A0 ** Tying things up =C2=A0=C2=A0=C2=A0 #+name: main =C2=A0=C2=A0=C2=A0 #+begin_src rust :tangle main.rs :noweb yes :comments no= web =C2=A0=C2=A0=C2=A0 <> =C2=A0=C2=A0=C2=A0 fn main() { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 <> =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 <> =C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0 #+end_src When using org-babel-tangle, a file is generated with this content: =C2=A0=C2=A0=C2=A0 // [[file:simu.org::main][main]] =C2=A0=C2=A0=C2=A0 // [[file:simu.org::imports][imports]] =C2=A0=C2=A0=C2=A0 use std::env; =C2=A0=C2=A0=C2=A0 // imports ends here =C2=A0=C2=A0=C2=A0 fn main() { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // [[file:simu.org::gather-input= ][gather-input]] =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 let args: Vec =3D env::a= rgs().collect(); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if args.len() < 2 { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 panic!("= No argument provided"); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // [[file:simu.org::parse-input]= [parse-input]] =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 let count =3D args[1].parse::().unwrap(); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // parse-input ends here =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // gather-input ends here =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // [[file:simu.org::count][count= ]] =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 let mut i =3D 0; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 while i < count { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // [[fil= e:simu.org::print-current-number][print-current-number]] =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 println!= ("Current number is {}", i); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // print= -current-number ends here =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 i =3D i+= 1; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // count ends here =C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0 // main ends here When I visit the generated file, modify it, and I run org-babel-detangle, I'm execting the org file to be changed. Instead, I always get the error "Not in tangled code" If instead I annotate my blocks with :comments links , then I don't even get any comments in the generated file. I supposed it's related to using noweb expansion. What am I doing wrong ? Emacs=C2=A0 : GNU Emacs 28.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.= 24.33, cairo version 1.16.0) =C2=A0of 2022-05-31 Package: Org mode version 9.6.1 (9.6.1-??-fe92a3c @ /home/phtrivier/.emacs.= d/.local/straight/build-28.1/org/) ------=_Part_10763083_1251396035.1682269758813 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
I'm using an org file like this one:
    * Simu

    `simu` is a progra= m to simulate counting up to a certain number.

    Th= e program has two main parts:

    ** Gathering input<= br>
    We simply get the first parameter, panicking if t= here is nothing specified.

    #+name: gather-input    #+begin_src rust :noweb yes :comments noweb
 &= nbsp;  let args: Vec<String> =3D env::args().collect();
 = ;   if args.len() < 2 {
      = ;  panic!("No argument provided");
    }
 &n= bsp;  <<parse-input>>
    #+end_src
<= br>    This uses the `env` package, so we should add it:
=
    #+name: imports
    #+begin_src ru= st :noweb yes :comments link
    use std::env;
 &= nbsp;  #+end_src

    The input is provided as a = string, so we need to parse, and report error if it fails.

 &nb= sp;  #+name: parse-input
    #+begin_src rust :noweb= yes :comments link
    let count =3D args[1].parse::<= i32>().unwrap();
    #+end_src

  &nbs= p; ** Counting up to the number

    The loop is prett= y straigforward:

    #+name: count
  &nb= sp; #+begin_src rust :noweb yes :comments noweb
    let m= ut i =3D 0;
    while i < count {
   = ;     <<print-current-number>>
 &nb= sp;      i =3D i+1;
    }
&nb= sp;   #+end_src

    Displaying the counter = is a matter of presentation:

    #+name: print-curren= t-number
    #+begin_src rust :noweb yes :comments link    println!("Current number is {}", i);
  &n= bsp; #+end_src

    ** Tying things up

 &n= bsp;  #+name: main
    #+begin_src rust :tangle main= .rs :noweb yes :comments noweb
    <<imports>>= ;
    fn main() {
      =   <<gather-input>>
      =   <<count>>
    }
    = #+end_src

When using org-babel-tangle, a file is generated with this= content:

    // [[file:simu.org::main][main]]
&nb= sp;   // [[file:simu.org::imports][imports]]
   = ; use std::env;
    // imports ends here
  &= nbsp; fn main() {
        // [[file:s= imu.org::gather-input][gather-input]]
     &nbs= p;  let args: Vec<String> =3D env::args().collect();
 &n= bsp;      if args.len() < 2 {
  &n= bsp;         panic!("No argument pr= ovided");
        }
  &n= bsp;     // [[file:simu.org::parse-input][parse-input]]=
        let count =3D args[1].parse:= :<i32>().unwrap();
        // p= arse-input ends here
        // gathe= r-input ends here
        // [[file:s= imu.org::count][count]]
        let m= ut i =3D 0;
        while i < coun= t {
            /= / [[file:simu.org::print-current-number][print-current-number]]
 &n= bsp;          println!("Curren= t number is {}", i);
        &nb= sp;   // print-current-number ends here
   &nbs= p;        i =3D i+1;
  &nbs= p;     }
        = // count ends here
    }
    // main en= ds here

When I visit the generated file, modify it, and I run
org= -babel-detangle, I'm execting the org file to be changed.

Instead, I= always get the error "Not in tangled code"

If instead I annotate my= blocks with :comments links , then I don't even
get any comments in the= generated file.

I supposed it's related to using noweb expansion.
What am I doing wrong ?

Emacs  : GNU Emacs 28.1 (build 1,= x86_64-pc-linux-gnu, GTK+ Version 3.24.33, cairo version 1.16.0)
 = of 2022-05-31
Package: Org mode version 9.6.1 (9.6.1-??-fe92a3c @ /home/= phtrivier/.emacs.d/.local/straight/build-28.1/org/)

------=_Part_10763083_1251396035.1682269758813--