nashorn/src/jdk/nashorn/internal/ir/Symbol.java
changeset 16168 f0c208287983
parent 16155 a8ab83cbaa49
child 16185 893aabe8c800
equal deleted inserted replaced
16167:d99db3541813 16168:f0c208287983
   329 
   329 
   330     /**
   330     /**
   331      * Flag this symbol as scope as described in {@link Symbol#isScope()}
   331      * Flag this symbol as scope as described in {@link Symbol#isScope()}
   332      */
   332      */
   333     public void setIsScope() {
   333     public void setIsScope() {
       
   334         if (!isScope()) {
       
   335             trace("SET IS SCOPE");
       
   336         }
   334         flags |= IS_SCOPE;
   337         flags |= IS_SCOPE;
   335         getBlock().setNeedsScope(true);
   338         getBlock().setNeedsScope();
   336     }
   339     }
   337 
   340 
   338     /**
   341     /**
   339      * Check if this symbol is a variable
   342      * Check if this symbol is a variable
   340      * @return true if variable
   343      * @return true if variable
   548     /**
   551     /**
   549      * Set the bytecode slot for this symbol
   552      * Set the bytecode slot for this symbol
   550      * @param slot valid bytecode slot, or -1 if not available
   553      * @param slot valid bytecode slot, or -1 if not available
   551      */
   554      */
   552     public void setSlot(final int slot) {
   555     public void setSlot(final int slot) {
   553         trace("SET SLOT " + slot);
   556         if (slot != this.slot) {
   554         this.slot = slot;
   557             trace("SET SLOT " + slot);
       
   558             this.slot = slot;
       
   559         }
   555     }
   560     }
   556 
   561 
   557     /**
   562     /**
   558      * Assign a specific subclass of Object to the symbol
   563      * Assign a specific subclass of Object to the symbol
   559      *
   564      *