<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in resolve-directives.cpp</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>f2b7f18e - Revert &quot;[flang][OpenMP] Lowering support for default clause&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#f2b7f18e</link>
        <description>Revert &quot;[flang][OpenMP] Lowering support for default clause&quot;This reverts commit 05e6fce84fd39d150195b8928561f2c90c71e538.

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Tue, 26 Jul 2022 13:48:27 +0000</pubDate>
        <dc:creator>Shraiysh Vaishay &lt;Shraiysh.Vaishay@amd.com&gt;</dc:creator>
    </item>
<item>
        <title>05e6fce8 - [flang][OpenMP] Lowering support for default clause</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#05e6fce8</link>
        <description>[flang][OpenMP] Lowering support for default clauseThis patch adds lowering support for default clause.1. During symbol resolution in semantics, should the enclosing context havea default data sharing clause defined and a `parser::Name` is not attachedto an explicit data sharing clause, the`semantics::Symbol::Flag::OmpPrivate` flag (in case of `default(private)`)and `semantics::Symbol::Flag::OmpFirstprivate` flag (in case of`default(firstprivate)`) is added to the symbol.2. During lowering, all symbols having either   `semantics::Symbol::Flag::OmpPrivate` or   `semantics::Symbol::Flag::OmpFirstprivate` flag are collected and   privatised appropriately.Co-authored-by: Peixin Qiao &lt;qiaopeixin@huawei.com&gt;Reviewed By: kiranchandramohanDifferential Revision: https://reviews.llvm.org/D123930

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Tue, 26 Jul 2022 08:38:34 +0000</pubDate>
        <dc:creator>Nimish Mishra &lt;neelam.nimish@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>5cbe39ef - [flang][OpenMP] Allow default(none) to access variables with PARAMETER attribute</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#5cbe39ef</link>
        <description>[flang][OpenMP] Allow default(none) to access variables with PARAMETER attributeThis patch fixes https://github.com/flang-compiler/f18-llvm-project/issues/1351.Concretely, data-sharing attributes on PARAMETER data used in a blockwith DEFAULT(NONE) should be ignored.Reviewed By: kiranchandramohanDifferential Revision: https://reviews.llvm.org/D129444

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Mon, 11 Jul 2022 15:53:41 +0000</pubDate>
        <dc:creator>Nimish Mishra &lt;neelam.nimish@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>27afb362 - [flang][OpenMP] Initial support the lowering of copyin clause</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#27afb362</link>
        <description>[flang][OpenMP] Initial support the lowering of copyin clauseThis supports the lowering of copyin clause initially. The pointer,allocatable, common block, polymorphic varaibles will be supportedlater.This also includes the following changes:1. Resolve the COPYIN clause and make the entity as host associated.2. Fix collectSymbolSet by adding one option to control collecting the   symbol itself or ultimate symbol of it so that it can be used   explicitly differentiate the host and associated variables in   host-association.3. Add one helper function `lookupOneLevelUpSymbol` to differentiate the   usage of host and associated variables explicitly. The previous   lowering of firstprivate depends on the order of   `createHostAssociateVarClone` and `lookupSymbol` of host symbol. With   this fix, this dependence is removed.4. Reuse `copyHostAssociateVar` for copying operation of COPYIN clause.Reviewed By: kiranchandramohan, NimishMishraDifferential Revision: https://reviews.llvm.org/D127468

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Fri, 24 Jun 2022 07:33:09 +0000</pubDate>
        <dc:creator>Peixin-Qiao &lt;qiaopeixin@huawei.com&gt;</dc:creator>
    </item>
<item>
        <title>cd03e96f - [flang] Add &amp; use a better visit() (take 2)</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#cd03e96f</link>
        <description>[flang] Add &amp; use a better visit() (take 2)Adds flang/include/flang/Common/log2-visit.h, which definesa Fortran::common::visit() template function that is a drop-inreplacement for std::visit().  Modifies most use sites inthe front-end and runtime to use common::visit().The C++ standard mandates that std::visit() have O(1) executiontime, which forces implementations to build dispatch tables.This new common::visit() is O(log2 N) in the number of alternativesin a variant&lt;&gt;, but that N tends to be small and so this changeproduces a fairly significant improvement in compiler buildmemory requirements, a 5-10% improvement in compiler build time,and a small improvement in compiler execution time.Building with -DFLANG_USE_STD_VISIT causes common::visit()to be an alias for std::visit().Calls to common::visit() with multiple variant argumentsare referred to std::visit(), pending further work.This change is enabled only for GCC builds with GCC &gt;= 9;an earlier attempt (D122441) ran into bugs in some versions ofclang and was reverted rather than simply disabled; and it isnot well tested with MSVC. In non-GCC and older GCC builds,common::visit() is simply an alias for std::visit().

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Wed, 23 Mar 2022 21:05:50 +0000</pubDate>
        <dc:creator>Peter Klausler &lt;pklausler@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>7e225423 - [flang] Finer control over error recovery with GetExpr()</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#7e225423</link>
        <description>[flang] Finer control over error recovery with GetExpr()Prior to this patch, the semantics utility GetExpr() will crashunconditionally if it encounters a typed expression in the parsetree that has not been set by expression semantics.  This is theright behavior when called from lowering, by which time it is knownthat the program had no fatal user errors, since it signifies afatal internal error.  However, prior to lowering, in the statementsemantics checking code, a more nuanced test should be used beforecrashing -- specifically, we should not crash in the face of amissing typed expression when in error recovery mode.Getting this right requires GetExpr() and its helper class to haveaccess to the semantics context, so that it can check AnyFatalErrors()before crashing.  So this patch touches nearly all of its call sites.Differential Revision: https://reviews.llvm.org/D123873

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Fri, 15 Apr 2022 20:23:16 +0000</pubDate>
        <dc:creator>Peter Klausler &lt;pklausler@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>0000030b - Revert &quot;[Flang][OpenMP] Add semantic check for OpenMP Private, Firstprivate and Lastprivate clauses.&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#0000030b</link>
        <description>Revert &quot;[Flang][OpenMP] Add semantic check for OpenMP Private, Firstprivate and Lastprivate clauses.&quot;This reverts commit a2ca6bbda6160c1b474fffd6204bcac9456c7eb1.D93213 performs some checks to ensure that variables that appear instatement functions are not in privatisation clauses. The point atwhich this check is currently performed, there can be misparses thatcause more constructs to be identified as statement functions. Thiscan lead to various kinds of errors, hence reverting.This revert hopefully fixes:https://github.com/llvm/llvm-project/issues/54477https://github.com/llvm/llvm-project/issues/54161https://github.com/llvm/llvm-project/issues/54163Reviewed By: shraiyshDifferential Revision: https://reviews.llvm.org/D122650

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Sun, 03 Apr 2022 15:23:54 +0000</pubDate>
        <dc:creator>Kiran Chandramohan &lt;kiran.chandramohan@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>4ca111d4 - Revert &quot;[flang] Add &amp; use a better visit()&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#4ca111d4</link>
        <description>Revert &quot;[flang] Add &amp; use a better visit()&quot;This reverts commit 2ab9990c9eb79682a4d4b183dfbc7612d3e55328. It hascaused multiple build failures:*  https://lab.llvm.org/buildbot/#/builders/177/builds/4346*  https://lab.llvm.org/buildbot/#/builders/180/builds/3803*  https://lab.llvm.org/buildbot/#/builders/175/builds/10419*  https://lab.llvm.org/buildbot/#/builders/191/builds/4318*  https://lab.llvm.org/buildbot/#/builders/173/builds/4274*  https://lab.llvm.org/buildbot/#/builders/181/builds/4297All these bots failed with a time-out:```command timed out: 1200 seconds without output running [b&apos;ninja&apos;, b&apos;-j&apos;, b&apos;32&apos;], attempting to kill```I&apos;m guessing that that&apos;s due to template instantiations failing at somepoint (https://reviews.llvm.org/D122441 introduced a customimplementation of std::visit). Everything seems fine when either:* building on X86 with GCC or Clang (tested with GCC 9.3 and Clang 12)* building on AArch64 with GCC (tested with GCC 11)

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Mon, 28 Mar 2022 10:46:47 +0000</pubDate>
        <dc:creator>Andrzej Warzynski &lt;andrzej.warzynski@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>2ab9990c - [flang] Add &amp; use a better visit()</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#2ab9990c</link>
        <description>[flang] Add &amp; use a better visit()Adds flang/include/flang/Common/visit.h, which definesa Fortran::common::visit() template function that is a drop-inreplacement for std::visit().  Modifies most use sites inthe front-end and runtime to use common::visit().The C++ standard mandates that std::visit() have O(1) executiontime, which forces implementations to build dispatch tables.This new common::visit() is O(log2 N) in the number of alternativesin a variant&lt;&gt;, but that N tends to be small and so this changeproduces a fairly significant improvement in compiler buildmemory requirements, a 5-10% improvement in compiler build time,and a small improvement in compiler execution time.Building with -DFLANG_USE_STD_VISIT causes common::visit()to be an alias for std::visit().Calls to common::visit() with multiple variant argumentsare referred to std::visit(), pending further work.Differential Revision: https://reviews.llvm.org/D122441

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Wed, 23 Mar 2022 21:05:50 +0000</pubDate>
        <dc:creator>Peter Klausler &lt;pklausler@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>ebec5e5c - [flang][OpenMP] Lowering critical construct</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#ebec5e5c</link>
        <description>[flang][OpenMP] Lowering critical constructThis patch adds translation from PFT to FIR for critical construct.This is part of the upstreaming effort from the fir-dev branch in [1].[1] https://github.com/flang-compiler/f18-llvm-projectCo-authored-by: kiranchandramohan &lt;kiranchandramohan@gmail.com&gt;Reviewed By: kiranchandramohanDifferential Revision: https://reviews.llvm.org/D122218

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Tue, 22 Mar 2022 09:47:52 +0000</pubDate>
        <dc:creator>Shraiysh Vaishay &lt;Shraiysh.Vaishay@amd.com&gt;</dc:creator>
    </item>
<item>
        <title>fe2d053c - Added OpenMP 5.0 specification based semantic checks for CRITICAL construct name resolution</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#fe2d053c</link>
        <description>Added OpenMP 5.0 specification based semantic checks for CRITICAL construct name resolutionAs reported in https://bugs.llvm.org/show_bug.cgi?id=48145, name resolution for omp critical construct was failing. This patch adds functionality to help that name resolution as well as implementation to catch name mismatches.The following semantic restrictions are therefore handled here:- If a name is specified on a critical directive, the same name must also be specified on the end critical directive- If no name appears on the critical directive, no name can appear on the end critical directive- If a name appears on either the start critical directive or the end critical directiveReviewed By: kiranchandramohanDifferential Revision: https://reviews.llvm.org/D110502

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Tue, 12 Oct 2021 16:44:21 +0000</pubDate>
        <dc:creator>Nimish Mishra &lt;neelam.nimish@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>6fb01a94 - [flang][OpenMP] Add semantic checks for ordered construct</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#6fb01a94</link>
        <description>[flang][OpenMP] Add semantic checks for ordered constructThis patch implements the following semantic checks according toOpenMP Version 5.1 Ordered construct restriction:```At most one threads clause can appear on an ordered construct; At mostone simd clause can appear on an ordered construct; At most onedepend(source) clause can appear on an ordered construct; Eitherdepend(sink:vec) clauses or depend(source) clauses may appear on anordered construct, but not both.```This patch also implements the following semantic checks according tothe syntax and descriptions in OpenMP Version 5.1 Ordered construct:```The dependence types of sink or source are only allowed on an orderedconstruct. The depend(*) clauses are not allowed when ordered constructis a block construct with an ordered region. The threads or simd clausesare not allowed when the ordered construct is a standalone constructwith no ordered region.```Co-authored-by: Sameeran Joshi &lt;sameeranjayant.joshi@amd.com&gt;Reviewed By: kiranchandramohanDifferential Revision: https://reviews.llvm.org/D108512

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Fri, 17 Sep 2021 13:53:07 +0000</pubDate>
        <dc:creator>PeixinQiao &lt;qiaopeixin@huawei.com&gt;</dc:creator>
    </item>
<item>
        <title>b9a8f34d - [flang][OpenMP] Add parsing support for nontemporal clause.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#b9a8f34d</link>
        <description>[flang][OpenMP] Add parsing support for nontemporal clause.This patch adds parsing support for the nontemporal clause.  Also adds a couple of test cases.Reviewed By: clementvalDifferential Revision: https://reviews.llvm.org/D106896

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Mon, 13 Sep 2021 16:29:22 +0000</pubDate>
        <dc:creator>Arnamoy Bhattacharyya &lt;arnamoy.bhattacharyya@huawei.com&gt;</dc:creator>
    </item>
<item>
        <title>77ebfba6 - [Flang][Openmp] Upgrade TASKGROUP construct to 5.0.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#77ebfba6</link>
        <description>[Flang][Openmp] Upgrade TASKGROUP construct to 5.0.In OMP 5.0 specification clause-list with* task_reduction* allocatewere allowed on taskgroup construct.Fix XFAIL - omp-taskloop01.f90.Reviewed By: kiranchandramohanDifferential Revision: https://reviews.llvm.org/D93373

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Mon, 02 Aug 2021 19:09:47 +0000</pubDate>
        <dc:creator>Chirag Khandelwal &lt;Chirag.Khandelwal@amd.com&gt;</dc:creator>
    </item>
<item>
        <title>45cd405d - [flang] Add clang-tidy check for braces around if</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#45cd405d</link>
        <description>[flang] Add clang-tidy check for braces around ifFlang diverges from the llvm coding style in that it requires bracesaround the bodies of if/while/etc statements, even when the body isa single statement.This commit adds the readability-braces-around-statements check toflang&apos;s clang-tidy config file. Hopefully the premerge bots will pick itup and report violations in Phabricator.We also explicitly disable the check in the directories corresponding tothe Lower and Optimizer libraries, which rely heavily on mlir and llvmand therefore follow their coding style. Likewise for the toolsdirectory.We also fix any outstanding violations in the runtime and inlib/Semantics.Differential Revision: https://reviews.llvm.org/D104100

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Fri, 11 Jun 2021 09:07:23 +0000</pubDate>
        <dc:creator>Diana Picus &lt;diana.picus@linaro.org&gt;</dc:creator>
    </item>
<item>
        <title>6b8bf949 - [flang][openacc] Enforce restriction on attach and detach variables</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#6b8bf949</link>
        <description>[flang][openacc] Enforce restriction on attach and detach variablesEach var argument to an attach or detach clause must be aFortran variable or array with the pointer or allocatable attribute.This patch enforce this restruction.Reviewed By: kiranchandramohanDifferential Revision: https://reviews.llvm.org/D103279

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Tue, 01 Jun 2021 18:36:58 +0000</pubDate>
        <dc:creator>Valentin Clement &lt;clementval@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>aae7eb80 - [Flang][Openmp] Fortran specific semantic checks for Allocate directive</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#aae7eb80</link>
        <description>[Flang][Openmp] Fortran specific semantic checks for Allocate directiveThis patch adds the following Fortran specific semantic checks for the OpenMPAllocate directive.1) A type parameter inquiry cannot appear in an ALLOCATE directive.2) List items specified in the ALLOCATE directive must not have the ALLOCATABLEattribute unless the directive is associated with an ALLOCATE statement.Co-authored-by: Irina Dobrescu &lt;irina.dobrescu@arm.com&gt;Reviewed By: kiranchandramohanDifferential Revision: https://reviews.llvm.org/D102061

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Thu, 27 May 2021 07:56:16 +0000</pubDate>
        <dc:creator>Isaac Perry &lt;isaac.perry@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>123ae425 - [flang][openmp] Add General Semantic Checks for Allocate Directive</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#123ae425</link>
        <description>[flang][openmp] Add General Semantic Checks for Allocate DirectiveThis patch adds semantic checks for the General Restrictions of theAllocate Directive.Since the requires directive is not yet implemented in Flang, therestriction:```allocate directives that appear in a target region mustspecify an allocator clause unless a requires directive with thedynamic_allocators clause is present in the same compilation unit```will need to be updated at a later time.A different patch will be made with the Fortran specific restrictions ofthis directive.I have used the code from https://reviews.llvm.org/D89395 for theCheckObjectListStructure function.Co-authored-by: Isaac Perry &lt;isaac.perry@arm.com&gt;Reviewed By: clementval, kiranchandramohanDifferential Revision: https://reviews.llvm.org/D91159

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Thu, 22 Apr 2021 15:45:19 +0000</pubDate>
        <dc:creator>Irina Dobrescu &lt;irina.dobrescu@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>0d8331c0 - [flang] Refine symbol sorting</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#0d8331c0</link>
        <description>[flang] Refine symbol sortingReplace semantics::SymbolSet with alternatives that clarifywhether the set should order its contents by source positionor not.  This matters because positionally-ordered sets mustnot be used for Symbols that might be subjected to namereplacement during name resolution, and address-orderedsets must not be used (without sorting) in circumstanceswhere the order of their contents affects the output of thecompiler.All set&lt;&gt; and map&lt;&gt; instances in the compiler that are keyedby Symbols now have explicit Compare types in their templateinstantiations.  Symbol::operator&lt; is no more.Differential Revision: https://reviews.llvm.org/D98878

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Thu, 18 Mar 2021 17:26:23 +0000</pubDate>
        <dc:creator>peter klausler &lt;pklausler@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>96716e67 - Add Semantic check for Flang OpenMP 4.5 - 2.15.3.6 Reduction clause</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp#96716e67</link>
        <description>Add Semantic check for Flang OpenMP 4.5 - 2.15.3.6 Reduction clauseImplementation of Reduction clause restriction checks.Files:flang/lib/Semantics/check-directive-structure.hflang/lib/Semantics/check-omp-structure.cppflang/lib/Semantics/check-omp-structure.hflang/lib/Semantics/resolve-directives.cppTestcases:flang/test/Semantics/omp-reduction01.f90flang/test/Semantics/omp-reduction02.f90flang/test/Semantics/omp-reduction03.f90flang/test/Semantics/omp-reduction04.f90flang/test/Semantics/omp-reduction05.f90flang/test/Semantics/omp-reduction06.f90flang/test/Semantics/omp-reduction07.f90flang/test/Semantics/omp-reduction08.f90flang/test/Semantics/omp-reduction09.f90flang/test/Semantics/omp-reduction10.f90flang/test/Semantics/omp-symbol08.f90Reviewed by: Kiran Chandramohan @kiranchandramohan and Valentin Clement @clementval.Differential Revision: https://reviews.llvm.org/D90697

            List of files:
            /llvm-project-15.0.7/flang/lib/Semantics/resolve-directives.cpp</description>
        <pubDate>Fri, 12 Mar 2021 17:22:21 +0000</pubDate>
        <dc:creator>Yashaswini &lt;yhegde@gmail.com&gt;</dc:creator>
    </item>
</channel>
</rss>
